一、创建远程仓库:
从创建目录开始的系列命令:
$ cd mypath
$ echo "# ffplayer" >> README.md
$ git init
$ git add README.md
$ git commit -m "first commit"
$ git remote add origin git@github.com:dengjoe/ffplayer.git
$ git push -u origin master
$ git remote
1、关联一个远程仓库:
$ git remote add origin git@server-name:path/repo-name.git;
说明:
远程仓库的默认名称是origin。
2、关联远程仓库后,第一次推送master分支的所有内容:
$ git push -u origin master
3、日常本地提交后,只要有必要,向远程推送最新修改:
$ git push origin master
$ git push origin dev
说明:
把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。
由于远程库是空的,我们第一次推送master分支时,加上了-u参数。 Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
4、查看远程库的信息:
$ git remote
origin
二、使用远程仓库:
1、克隆远程分支到本地
$ git clone git@github.com:dengjoe/ffplayer.git
2、创建远程分支到本地
$ git branch -r //列出远程分支
$ git checkout -b dev origin/dev
3、抓取远程分支o
$ git pull origin master
$ git fetch origin master
$ git log -p master..origin/master
$ git merge origin/master
$ git branch --set-upstream dev origin/dev //设置对应的远程分支
$ git pull
说明:
git fetch是从远程获取最新版本到本地,不会自动merge。更安全些。
git pull是从远程获取最新版本并merge到本地。
设置dev分支和origin/dev的链接,之后pull就直接了。
尽量不要用git pull,用git fetch和git merge代替它
二、使用远程仓库的多人协作工作模式:
首先,可以试图用git push origin branch-name推送自己的修改;
如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;
如果合并有冲突,则解决冲突,并在本地提交;
没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!
如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name。