Git学习之路(5)- 同步到远程仓库及多人协作问题

▓▓▓▓▓▓ 大致介绍

  我们写好文件后添加到版本库,但是这样还没有做完,我们还需要将它同步到GitHub的远程仓库上,这里就以我们刚开始的drag项目为例,我们在Git学习之路(2)-安装GIt和创建版本库 中将drag项目克隆到了本地文件中,假设进过修改后,我们现在要将修改后的文件同步到远程仓库中

  如果对前面的知识有疑问,请移步小白学Git

 

▓▓▓▓▓▓ 同步到远程仓库

  我们要想将文件添加到远程首先要确定 Git Shell 和 有界面的客户端中登录的是不是自己的GitHub账号,应为同步到远程仓库,是要记录上传用户的

  在Git Shell 中查看用户名和邮箱

    git config --global user.name
    git config --global user.email

  

  如图:

  

  如果用户名和邮箱不对,要修改的话直接在后面接着写用户名和邮箱就好

  如图:

 

  确认用户名和邮箱无误后,然后查看远程仓库的名字和对应的地址

    //查看远程仓库的名
    git remote 
    //查看远程仓库对应的地址
    git remote -v

 

  如图:

 

  接下来就可以同步到远程仓库

    git push 远程仓库名 分支名

 

  如图:

 

  这样,就成功的将文件同步到了远程仓库

 

 

▓▓▓▓▓▓ 如何进行多人协作

  当我们要参与到一个项目中或者别人要参与到你的项目中时,如何进行操作呢

  首先,需要在GitHub中给予要参与者权限

  如图:

 

  

  首先点击 New collaborator ,然后在红框圈中的地方写入参与者的GitHub账号,点击按钮就可以了

 

  那作为参与者怎么才可以知道自己是否可以参与到某个项目呢?

  如图:

 

  你会在你注册GitHub时填的邮箱中收到类似的邮件,你就可以用前面学习的知识,克隆远程仓库后和他们愉快的工作了

 

▓▓▓▓▓▓ 如何解决多人协作冲突

  就以上面为例,A邀请B参与项目,现在B收到了邮件,克隆了远程仓库,并且修改了文件,提交到远程仓库。这时A的电脑中的文件还是B没有修改之前的,这时A提交到远程仓库时就出现了问题

  如图:

  

  要提交的文件和远程仓库中的文件产生了冲突,解决的办法是先用一条命令从远程仓库中获取最新的版本到本地

    git fetch

  然后查看产生冲突的原因

    git diff 分支  远程仓库名/分支

  最后进行合并

    git merge 远程仓库名/分支

 

  如图:

 

  还有一种方法(不推荐),其实就是省略了git fetch 和 git merge ,直接将与最新的版本合并了

    git pull origin/master

 

参考资料: 

      廖雪峰的官方网站-Git教程

      CODE帮助文档-Progit中文版

posted @ 2017-02-17 13:58  老板丶鱼丸粗面  阅读(1224)  评论(2编辑  收藏  举报