本文总结自廖雪峰网站.
Git支持多种协议,git://使用ssh协议,速度最快,也可使用https等协议.
对远程库操作:
推送:
1.先远程建立一个Repo库,f
2.远程和本地关联:
git remote add origin https://...
3.推送:
git push -u origin master
加入 -u 选项,以后不用再设置关联, 可直接通过 git push origin master 推送
克隆:
git clone https://...
分支管理:
创建并切换分支:
git checkout -b dev
= git branch dev
git checkout dev
查看当前分支:
git branch
切换回master分支后,将dev分支合并到master分支上:
git merge dev
之后删除dev分支:
git branch -d dev
两个不同的分支commit之后再merge可能会发生冲突,需手动解决.
切换回master后,以禁用 fast-forward的方式完成合并(此时创建一个新的commit,会记录下合并信息):
git merge --no-ff -m 'merge without fast-forward' dev
保存当前工作区域:
git stash
可多次保存,使用:
git stash list
查看
使用:
git stash apply stash@{n}
来表示恢复哪一次的。
若想删除保存内容,使用:
git stash drop
使用:
git stash pop
恢复的同时将原来保存的也删除了。
删除没有合并过的分支:
git branch -D branch-name
查看远程库的信息:
git remote -v
注意:一个版本库(Repo)可以有master, dev, bug-fix 等多个分支
将远程库clone本地的时候,默认只能看见master分支
由远程dev分支创建本地分支,并切换到这个分支,使用:
git checkout -b dev origin/dev
此时再推送的话,推送的是到远程dev分支:
git push origin dev
若此时远程dev分支已改变,需要先抓取:
git pull
(在未设置dev和origin/dev链接的情况下,pull会失败,此时需要先设置关联:
git branch --set-upstream dev origin/dev
)
然后在本地解决完冲突之后,再commit and push