前言✨
最近跟总监远程,他发现我git掌握滴不素那么很好。建议我花多点时间学习一下这个强大的版本控制工具。也就在这里帮大家翻一下文档,顺便说说我的理解。
文档链接
关于Git
Git是一种软件配置管理工具(Software Config Manager)。他和其他的配置管理工具的不同之处在于它同时是一个分支模型,可以在完全不被其他分支影响的情况下对本地分支进行修改(因为没用过其他配置管理工具,所以我也没体会过这种区别),而且git对分支进行创建、合并、删除等操作的时间是非常快的。在进行一次性实验的时候,git的强大就被体现了出来,可以随时创建一个临时的分支,进行实验,然后再把分支删除(没有人会发现这项操作)。
配置Git
在开始使用Git之前,先对自己的姓名和邮箱地址进行配置
1 2
| git config --global user.name "{name}" git config --global user.email {email}
|
Git命令参考
获得命令的帮助文档
初始化Git(创建.git文件夹)
克隆仓库
1 2
| git clone {git path} # 克隆仓库 git clone {git path} {local repo name} #创建local repo文件夹,并将仓库内容克隆进文件夹中(相当于给仓库自定义名字)
|
添加修改到暂存区
1 2
| git add . # 添加所有文件到缓存区 git add {file1} {file2} {file3} # 添加特定文件到缓存区
|
查看修改内容
1 2
| git diff --cached # 查看缓存区内的修改内容 git diff # 查看还没添加到缓存区的修改内容
|
提交修改
提交时会让你添加提交附加提交附注,一般的格式是添加一个不超过50字简短的描述,然后空一行,再添加更详细的描述。这样会形成类似邮件一样(标题+正文)的输出。
1 2
| git commit # 提交缓存区的内容 git commit -a # 缓存并提交全部修改内容
|
查看项目提交历史
1 2 3
| git log # 查看提交id和描述,最简化 git log -p # 查看每次提交的具体内容,具体代码级别 git log --stat --summary # 查看提交的总览,文件级别
|
查看所有本地分支
创建分支
1
| git branch {branch name}
|
切换分支
1
| git switch {branch name to switch}
|
删除分支
1 2
| git branch -d {branch name} # 在分支已经被成功合并的情况下删除 git branch -D {branch name} # 强制删除分支
|
合并某分支到本分支
1
| git merge {branch to merge into}
|
合并后查看冲突
查看项目的 git graph 图
拉取远端分支
将会把远端分支的修改与本地分支进行合并,如果本地分支也有修改,或许在这步会产生冲突
1 2
| git pull git pull {repo local path} {branch name}
|
在console中查看远端分支修改的内容,并不合并到本地分支
可以用 gitk
命令调用 gitGUI 查看,也可以用 git log
用 git 命令行查看。
1 2 3 4
| git fetch # 或者 git fetch {repo local path} {branch name} gitk HEAD..FETCH_HEAD # 查看远端分叉后合并的记录graph图
#gitk HEAD...FETCH_HEAD (多了一个.)来查看远端分叉后合并的记录和本地内容修改的graph图
|