Git命令总结
前言
用了这么久的Git,一直都是使用的辅助工具来进行Git管理。所以在此简单记录一下Git命令行的使用极其注意事项。
克隆
git clone https://www.abcd.com/test # 克隆https://www.abcd.com/test的项目到当前目录
检出/切换分支
git checkout master # 切换到master分支
git checkout -b master # 创建并切换到master分支
拉取
git pull origin master:branchA # 拉取远程主机origin的master分支到本地的branchA分支上(会进行一次合并);如果是当前的分支,冒号后面可省略
添加
git add Assets/Scripts/test.cs Assets/Image # 将test.cs文件和Image目录下的所有文件添加到暂存区
提交
git commit -m '修改了XXX' # 将暂存区的所有文件提交,并备注提交信息
推送
git push origin master:master # 将本地master分支推送到远端origin主机的master分支上
初始化
git init # 对当前的路径生成Git仓库环境,即创建新的Git仓库
这是用于初始化Git本地仓库的,只有初始化完成之后,本地文件夹/路径才能成为Git的仓库,才能对其进行后续Git操作。一般来说,只有需要将本地环境变成Git环境时才需要进行初始化,平常的工业开发由于都是远程仓库,所以只需要使用克隆。
状态
git status # 查看文件修改状态,可以使用-s参数来显示简短输出结果
比较
git diff Assets/Scripts/test.cs # 对比该文件在暂存区和工作区的差异
git diff 8f87495 69b5711 # 对比两次提交的差异
回退
git reset --soft HEAD^ # 将所有文件回退到上个版本,保留暂存区,保留修改
git reset --mixed 69b5711 test.cs # 将test.cs文件回退到69b5711,不保留暂存区,保留修改
git reset --hard HEAD^^ # 将所有文件完全回退到上上个版本,不保留暂存区,不保留修改
默认情况下,Git使用的是–mixed回退。
删除
git rm test.cs # 删除test.cs文件
移动
git mv A/test.cs B/test.cs # 移动test.cs文件从A目录到B目录
分支操作
git branch MyBranch # 在当前节点创建名为MyBranch的分支
git branch # 查看本地所有分支
git branch -d master # 删除本地master分支
合并
git merge master # 将当前分支和master分支合并,并生成一个新的commit
查看历史
git log # 查看历史提交记录
git blame test.cs # 查看test.cs文件的历史修改记录
标签
git tag -a v1.1.2 # 已当前节点做一个名为"v1.1.2"的tag,这里-a的含义是给tag添加上注解,即日期时间和操作人
tag本质上来说是某一次提交的快速访问标签,并不是可用来开发的branch。
小结
很多命令还有各种各样的可选参数,这里就不全一一列出了。
为了方便使用,这里放一张大佬做的Git常用命令速查表。
总得来说,虽然如今在Git工具的掩盖下,Git命令在开发人员的工作中逐渐淡化。但工具最终使用的还是Git的命令,只是通过UI让开发人员感觉不到而已。如果要解决一些Git相关的问题,直到Git的原理和Git相关命令还是非常有必要的。有可能今后用不到,但是学习了总没坏处。