在实际工做生活中,咱们可能不必定仅仅在一台电脑上编码,好比:咱们平时在单位电脑1上写代码,提交代码到github帐户,而咱们也可能会在在家里的电脑2上继续工做,提交代码,这样就是在不一样的电脑上提交代码到同一个github帐户,同时在每一台电脑上都保持和github帐户的一致,该怎么办呢?git
1,首先在电脑2上完成git的安装和配置:github
和在电脑1上的配置同样,按照本系列git学习1中的教程安装配置,其中用户名和邮箱能够依然使用电脑1的用户名和邮箱,也能够设置为其余用户名和邮箱,均无影响。bash
2,而后须要在电脑2上建立另外一个SSH Key,保证远程github可以识别电脑2ssh
打开Shell(Windows下打开Git Bash),输入
ssh-keygen -t rsa -C "youremail@example.com"
而后一路回车,无需设置密码。
而后在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,
id_rsa是私钥,不能泄露,id_rsa.pub是公钥,能够放心告诉别人学习
登录Github,进入settings,点击SSH Keys,因为电脑1的SSH Key已经上传,因此能够看到已经有一个SSH Key了,这个SSH key是电脑1的,为了建立电脑2的SSH Key,点击Add SSH Key,填写任意Title,在Key文本框粘贴电脑2的id_rsa.pub文件的内容,而后点add Key。这个就设置好了fetch
3:将远程库克隆到本地电脑2上编码
进入某个目录,git bash进入命令行模式:
git clone git@github.com:NIck-Meng/gitest.git
而后进入该目录,能够看到gitest文件夹,远程的代码已经被克隆到本地电脑2上了。
这样就可在在电脑2上对代码进行修改、提交等操做了,每次git push将本地修改提交到远程后,远程代码就发生了改变。命令行
4,当在电脑1上工做时,本地代码和远程的代码发生了不一致,为了保持同步,因此须要将远程的代码同步到本地电脑1上
git fetch origin master
从远程的origin的master主分支下载最新的版本到origin/master分支上教程
git log -p master..origin/master
而后比较本地的master分支和origin/master分支的差异rem
git merge origin/master 最后进行合并