1. git init 初始化仓库
2. git add foo.txt ( git rm bar.txt)添加文件追踪
3. git commit --message "本次提交备注的内容"
4. git status //检测状态命令
5. git diff foo.txt // 查看文件每个被修改的地方
6. git log //显示历史
7. git clone /projects/first-steps /projects/first-steps-clone //克隆版本库
8. git reset --hard HEAD^回退到上一个版本 HEAD^^ 上上个版本,往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。或者直接通过commit id来 git reset --hard 3628164(commit id)
9. git reflog 查看历史命令
10. git checkout – readme.txt,把readme.txt文件在工作区的修改全部撤销,这里有两种情况: 一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
总之,就是让这个文件回到最近一次git commit或git add时的状态。
11. git reset HEAD readme.txt 把暂存区的修改撤销掉(unstage),重新放回工作区
12. 添加远程仓库
-
使用命令关联git remote add origin
https://github.com/skydragonboy/Test.git -
git push -u origin master
我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。(非第一次提交 git push origin master)
13. 从远程仓库克隆
-
假设我们从零开发,那么最好的方式是先创建远程库,然后,从远程库克隆。首先,登陆GitHub,创建一个新的仓库,我们勾选Initialize
this repository with a
README,这样GitHub会自动为我们创建一个README.md文件。创建完毕后,可以看到README.md文件。 -
git clone (git地址)
14. 创建与合并分支
git checkout -b dev(创建dev分支,然后切换到dev分支:)git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:
-
git branch dev
-
git checkout dev
15. git branch 命令查看分支:(列出所有分支,带*的是当前分支)
16. git merge dev (合并分支)(提示Fast-forward信息,Git告诉我们,这次合并是“快进模式”,也就是直接把master指向dev的当前提交,所以合并速度非常快。)
17. git branch -d pan (删除pan分支)
18. git log --graph命令可以看到分支合并图。
19. git merge --no-ff -m “merge with no-ff” pan (请注意–no-ff参数,表示禁用Fast forward合并分支)因为本次合并要创建一个新的commit,所以加上-m参数,把commit描述写进去。
20. git stash 把当前工作现场“储藏”起来(可以多次存储)
21. git stash list命令看看存储的工作现场有哪些、
-
git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;
-
用git stash pop,恢复的同时把stash内容也删了