已经在本地创建了一个Git仓库后,又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步
创建远程仓库
登陆GitHub
add repository.png名字填写为gittest,点击Create repository
推送分支git push
git push.png英语好的同学自行翻译一下,我就不多做叙述了
这里我们用下面箭头标示的方法,用终端推送一个存在的仓库
首先选择SSH,然后进入我们的gittest本地仓库
cd /Users/blurryssky/Desktop/iOS/gittest
执行以下命令,直接从上面图里的位置复制过来
git remote add origin git@github.com:blurryssky/gittest.git
git push -u origin master
注意,如果本地git仓库里什么文件都没有,需要先创建一些文件并且提交
SSH警告
当你第一次使用Git的git clone
或者git push
命令连接GitHub时,会得到一个警告
The authenticity of host 'github.com (192.30.252.130)'
can't be established.
RSA key fingerprint is
SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)?
输入yes即可
push success.png看到这样的界面代表推送已经成功了(如果卡住关掉再来一次即可)
刷新一下我们GitHub,可以看到远程仓库的目录已经和本地一样了
远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库,最好也不要去修改
git push
命令,实际上是把当前分支master推送到远程
第一次推送master分支时,加上了-u
参数,Git不但会把本地的master分支内容推送到远程库origin的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送时就可以不加了,直接使用
git push
抓取git pull
从远程仓库获取最新的更新用
git pull origin master
如果你收到以下提示,代表远程仓库的版本要先于本地版本,必须先用git pull
获取更新
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
自动追踪分支信息
每一次使用git push
或者git pull
后面都要跟上origin master
显然是比较麻烦的,可以使用以下命令建立自动追踪
git branch --set-upstream-to=origin/master master
显示如下
Branch master set up to track remote branch master from origin.
以后就可以直接使用,会自动去找到建立了追踪信息的分支(例子里是master)
git push
git pull
如果你收到的提示是这样的
error: the requested upstream branch 'origin/new_test' does not exist
hint:
hint: If you are planning on basing your work on an upstream
hint: branch that already exists at the remote, you may need to
hint: run "git fetch" to retrieve it.
hint:
hint: If you are planning to push out a new local branch that
hint: will track its remote counterpart, you may want to use
hint: "git push -u" to set the upstream config as you push.
说明本地有这个分支了,但是远程库根本不存在,那当然无法建立连接了
再次使用git push -u
git push -u origin new_test
创建远程分支new_test,并且把本地内容上传,并且把两者信息关联起来
注意,每一个分支都可以去分别追踪远程库不同的分支,这就意味着你可以让本地库和远程库的每一个分支一一对应起来。也意味着每一次你创建一个新的分支,可能都要去设置一下追踪信息。
git config -e
该命令可查看已经与远程库建立好信息追踪的所有分支信息
克隆git clone
从远程仓库克隆到本地
找一个合适的目录
git clone git@github.com:blurryssky/gittest.git
网友评论