@linux1s1s
2019-03-11T11:35:46.000000Z
字数 1406
阅读 1475
Tools
2017-05
本文参考Git教程,为了节省时间,我们将前面提及的Git教程关键点梳理一遍,然后小结一下最常用的Git命令。
理解
- git add xxx.ss
只是将需要更新的xxx.ss
文件放到暂存区。
- git commit -m "commit message"
提交更改,将上面提交到暂存区的内容添加到当前分支。
理解上面的缓存区至关重要,因为这是 Git分布式版本系统和集中式版本系统的本质区别。
上面提交完成以后,我们可以通过git status
查看目前仓库的内容
git init
瞬间Git就把仓库建好了,而且告诉你是一个空的仓库(empty Git repository),细心的读者可以发现当前目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的
git add readme.txt
将修改以后的本地文件readme.txt
添加到缓存区
git commit -m "Commit log"
将上面添加到缓存区的更新提交到master主分支
git reset --hard HEAD^
回退到前一个版本,再往前一个版本是 HEAD^^,如果嫌受累可以这样写 HEAD~100,往前100个版本。
当然也可以直接指定具体的版本,比如git reset --hard 3628164
,指定回退到3628164
版本。
git status
查看当前git状态
git checkout -- readme.txt
将本地文件 readme.txt
文件回退到master主分支
git remote -v
查看远端仓库
git fetch xxx
将xxx远程主机的更新,全部取回本地。
git merge xxx
把xxx分支或某个commit的修改合并到现在的分支上
git push <远程主机名> <本地分支名>:<远程分支名>
将本地分支的更新,推送到远程主机。它的格式与git pull命令相仿 如果省略远程分支名,则表示将本地分支推送与之存在”追踪关系”的远程分支(通常两者同名),如果该远程分支不存在,则会被新建。
git pull <远程主机名> <远程分支名>:<本地分支名>
取回远程主机某个分支的更新,再与本地的指定分支合并.
git clone <版本库的网址>
通常是从远程主机克隆一个版本库
git branch
列举当前所有的branch分支
git branch xxx
git branch -d xxx
git checkout xxx
我们如何同步fork出来的个人Master分支,同步的目标是上流Master分支,基本思路参考保持fork之后的项目和上游同步,大概流程是这样:
1. 新增本地仓库关联远端仓库(这个远端仓库指定一个名字,并且目标地址指向上流Master分支)
`git remote add upstream git@192.168.0.176:android/xxxx.git`
2. 查看一下是不是建立成功了
`git remote -v`
此时已经多出来一个upstream的远端仓库
3. 更新本地仓库
`git fetch upstream`
4. 合并本地仓库
`git merge upstream`
此时出现冲突需要解决冲突的具体文件,否则merge会出错
5. 上传本地仓库修改内容到个人Master主分支
`git push`
远程仓库省略,将push到原先默认关联的远端仓库,即个人Master仓库