Git入门


1.版本控制( Revision control )

在实际开发中,迫切需要版本控制的工具

  • 实现跨区域多人协同开发
  • 追踪和记载一个或者多个文件的历史记录
  • 组织和保护你的源代码和文档
  • 统计工作量
  • 并行开发、提高开发效率
  • 追踪记录整个软件的开发过程
  • 减轻开发人员的负担,节省时间,同时降低人为错误

常见的版本控制工具

  • Git
  • SVN(Subversion)
  • CVS(Concurrent Versions System)
  • VSS(Micorosoft Version System)
  • TFS(Team Foundation Server)
  • Visual Studio Online

版本控制分类

  • 1.本地版本控制:快照,或者是补丁文件
  • 2.集中版本控制:所有的版本数据都在服务器上,协同开发者从服务器上同步更新或上传自己的修改。缺点:服务器需要定期备份,以防意外。
  • 3.分布式版本控制:每个人都拥有全部代码。

Git 与 SVN 最主要的区别

SVN 是集中式版本控制系统,版本库集中存放在中央服务器上,工作时需要从服务器得到最新的版本,完成后,需要把自己的推送到中央服务器。集中式版本控制系统是必须联网才能工作,对网络带宽要求比较高。

Git 是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网,因为版本都在自己的电脑上。协同的方法是,把自己的修改推送给对方。

2.Git 环境配置

Git Bash:Unix 和 Linux 风格的命令行,使用最多,推荐最多

Git CMD:Windows 风格的命令行

Git GUI:图形界面的Git,不建议初学者使用,尽量先熟悉常用命令。

基本的Linux 命令学习

cd :改变目录
cd .. :回退到上一个目录,直接cd进入默认目录
pwd:显示当前的目录路径
ls(ll):显示当前文件,ll 更详细
touch:新建一个文件
rm:删除一个文件
mkdir:新建一个目录
rm -r:删除一个目录(文件夹)
mv:移动文件
reset:重新初始化终端
clear:清屏
history:查看历史命令
help:帮助
exit:退出
#表示注释

设置用户名和邮箱

git config --global user.name "yuansen"
git config --global user.email 603133103@qq.com
git config -l #查看配置文件

3.Git 基本理论

工作区域

Git 本地有三个工作区域:工作目录( Working Directory)、暂存区(Stage/ index)、资源库(Repository 或 Git Firectory)。如果加上远程的git 仓库(Remote Directory)就可以分为四个工作区域。

Git 项目搭建

创建工作目录与常用指令

 创建远程仓库的两种方式

git init #本地
git clone [url] #远程

Git 文件操作

git status
git add .
git commit -m

忽略文件

有时候我们不想把某些文件纳入版本控制,比如数据库文件,临时文件,设计文件等。

在主目录下建立“ . gitignore” 文件,此文件有如下规则:

  1. 忽略空行或注释(#)
  2. 可以使用Linux 通配符。*表示任意多个字符,?表示一个字符,[ abc ] 表示可选字符范围,{ string1 , string2} 表示可选的字符串范围。
  3. !表示例外规则,将不会被忽略
  4. 名称前面是一个路径分隔符(/),表示该目录下的文件不忽略
  5. 名称后面是一个路径分隔符,表示只忽略该目录下的文件

4.Git 分支

#查看分支
git branch 

#查看远程分支
git branch -r 

新建分支,且停留在当前分支
git branch [branch name]

#新建分支,并切换到该分支
git checkout -b [branch]

#合并指定分支到当前分支
git merge [branch]

#删除分支
git branch -d [branch name]

#删除远程分支
git push origin --delete [branch name]
git branch -dr [remote/branch]