常用git命令总结
这些命令是最常用的,一般的提交代码、拉取代码、合并代码、分支切换等等操作用这些命令就足够了。
1、git init 把一个目录初始化成git仓库
2、git add test.txt 把文件(工作区)添加到仓库的暂存区
3、git commit -m 'add a file' 把暂存区的所有文件一次性提交到仓库(当前分支)
4、git status 查看当前仓库的状态
5、git diff test.txt 查看该文件与上一个版本的变化
6、git log 查看从近到远的提交日志
7、git log --pretty=oneline 查看从近到远的提交日志,精简的只显示提交版本号与提交说明
8、git reset --hard head~1 回退到上一个版本(head代表的是当前版本,~1就是回退到上一个版本,~100就是会退到上100个版本)
9、git reset --hard 6e214bc 回退到指定版本号的版本上去(6e214bc代表提交时候的版本号,该版本号是32位的,不用写全,前5位左右就可以了,git会帮你搜索)
10、git reflog 可以查看所有分支的所有操作记录(包括commit、merge 和reset的操作),包括已经被删除的commit记录,git log则不能察看已经删除了的commit记录
11、git checkout -- test.txt 把文件在工作区的修改全部撤销掉。分2种情况:1.文件自修改后还没有存放到暂存区,撤销后就回到和版本库一模一样的状态;2.文件添加到暂存区后,又做了修改,此时撤销操作就回到添加到暂存区后的状态。总之就是让这个文件回到最后一次commit或者add的状态
12、git reset head test.txt 把暂存区的修改撤销掉重新放回工作区
13、git rm test.txt 把工作区的该文件删掉,然后记得要commit,commit后该文件也就从版本库中删掉了
14、git remote add origin http://dong.nsenz.com:8888/yijie.git 添加远程仓库
15、git push -u origin master 把本地仓库所有的内容推送的远程仓库master分支上,-u参数只需要第一次往远程仓库push的时候使用,后续推送到远程仓库可以省略掉-u参数,-u参数是为了把本地仓库分支和服务器仓库分支做关联,关联只需要一次就行,所以-u参数使用一次就可以了。
16、git clone http://dong.nsenz.com:8888/yijie.git 把远程仓库的文件克隆一份到本地
17、git checkout -b dev 创建dev分支,并且切换到dev分支。-b参数表示创建并切换,相当于两条命令:git branch dev;git checkout dev
18、git branch dev1.1 创建dev1.1分支
19、git checkout dev1.1 切换到dev1.1分支
20、git merge dev 把指定分支合并到当前分支上
21、git branch -d dev 删除dev分支
22、git branch 查看本地所有的分支,当前分支前会加上一个*
23、git branch -a 查看本地和远程所有的分支
24、git branch --set-upstream-to origin/dev dev 新建一个分支,在没有push和pull之前可以通过该命令把本地的dev 分支和远程的dev分支做关联,这样以后push和pull 时,git就知道从哪个分支pull并push到哪个分支上。还有一个应用场景,某一天不小心删掉了某个分支,可以重新建一个该分支,然后通过该命令就可以和远程的分支做一下关联就可以了。解释一下命令中的origin:origin代表的是远程仓库
25、git log --graph 查看分支的合并图
26、git remote 查看远程仓库的信息
27、git remote -v 显示远程仓库的详细信息
28、git pull origin(远程仓库名) dev(远程仓库分支) :dev(本地仓库分支)从远程仓库拉取文件到本地仓库
29、git pull 从远程仓库拉取文件到本地仓库,如果本地仓库已经与远程仓库做了关联的话就可以这么简写