Git推送到远程仓库GitHub以及多人协作开发

多人协作开发流程

  • A在自己的计算机中创建本地仓库
  • A在github中创建远程仓库
  • A将本地仓库推送到远程仓库
  • B克隆远程仓库到本地进行开发
  • B将本地仓库中开发的内容推送到远程仓库
  • A将远程仓库中的最新内容拉去到本地

第一步,在GitHub上先创建一个公共仓库
创建仓库
Git推送到远程仓库GitHub以及多人协作开发_第1张图片

填写仓库基本信息
仓库名称要唯一
仓库描述是可选的,可以不填
public/private就是创建公共仓库或者私人仓库
最后就是要不要初始化一个ReadMe文件,是对项目的详细描述
Git推送到远程仓库GitHub以及多人协作开发_第2张图片

第二步,将本地仓库推送到远程仓库
这个是远程仓库的地址
Git推送到远程仓库GitHub以及多人协作开发_第3张图片

  1. 普通的HTTPS方式推送到远程仓库
    推送命令格式是: git push 远程仓库地址 分支名称
git push https://hithub.com/xxxxx master
  1. 给远程仓库设置别名来推送
    第一步起别名 git remote add 别名名称 远程仓库地址
git remote add origin  https://hithub.com/xxxxx

以后推送的命令格式变成:git push 远程仓库地址别名 分支名称

git push origin master
  1. 设置下次开始的提交只需写git push就能推送到远程仓库
    第一次设置先使用这句 git push -u 远程仓库地址别名 分支名称
    -u 记住推送地址及分支,下次推送只需要输入git push即可
git push -u origin master

以后提交就可以这样

git push
  1. 克隆别人的仓库(不需要身份验证)
    直接在一个空文件夹里面打开gitBash命令行工具,然后使用git clone 仓库地址命令来克隆,克隆是很全面的,会连仓库别名也克隆过来。
    Git推送到远程仓库GitHub以及多人协作开发_第4张图片

  2. 拉取远程仓库中最新的版本(不需要身份验证)
    拉取远程仓库中最新的版本:git pull 远程仓库地址 分支名称

git pull origin master

如果远程仓库的版本高于本地仓库的版本,此时本地仓库是不能推送到远程仓库的,需要先拉去远程仓库更新本地的,才能够提交。

执行上面命令之后可能遇到下面这个界面
Git推送到远程仓库GitHub以及多人协作开发_第5张图片
这是因为git希望我们输入提交消息来解释为什么这种合并是必要的。
可以不管(直接下面3,4步),如果要输入解释的话就需要
(1)按键盘字母 i 进入insert模式
(2)修改最上面那行黄色合并信息,可以不修改
(3)按键盘左上角"Esc"
(4)输入":wq",注意是冒号+wq,按回车键即可

  1. 解决冲突
    在多人同时开发一个项目时,如果两个人修改了同一个文件的同一个地方,就会发生冲突。冲突需要人为解决。
    第二个人是提交不上去的,提示的失败信息如下,因为第一个人提交之后远程仓库的版本高于本地仓库,所以第二个人需要先拉去远程仓库更新本地的。
    Git推送到远程仓库GitHub以及多人协作开发_第6张图片
    使用pull命令拉取远程仓库最新版本到本地,会看到提示冲突的信息
    Git推送到远程仓库GitHub以及多人协作开发_第7张图片
    打开冲突的文件可以看到如下
    Git推送到远程仓库GitHub以及多人协作开发_第8张图片
    接下来需要解决冲突,head到等于号的区域是我们自己的内容,等于号到结束的区域是远程仓库已有的内容,我们需要对比两者的内容,看看是要取舍还是合并。修改好之后就把冲突开始的标志和中间的等于号以及最后的冲突结束标志删掉。接着再次提交去本地仓库再推送给远程仓库就可以了。

邀请别人一起开发

默认情况下我们自己创建的公共仓库,其他人开发人员是不能推送进来的,需要邀请其他开发人员成为项目的开发者他们才有权限推送他们的代码进来我们创建的这个公共仓库
Git推送到远程仓库GitHub以及多人协作开发_第9张图片
将下面这个链接发送给另一位开发人员邀请他,等他打开链接接收邀请才算成功
Git推送到远程仓库GitHub以及多人协作开发_第10张图片

不是项目成员又想推送进来(跨团队合作)

不是项目成员又想推送代码进来我们的仓库,是需要经过我们审核的。

他人视觉
别人需要先复制我们的仓库到他自己的账号里面,就是在我们仓库的位置点击fork
Git推送到远程仓库GitHub以及多人协作开发_第11张图片
然后别人的账号里面就有了一个和我们一模一样的仓库,他就在自己电脑通过clone命令将他自己账号中的这个仓库克隆的电脑上面进行代码修改。修改好之后就推送到他自己账号中的这个远程仓库。
然后他登录自己的GitHub账号在这个他自己的远程仓库页点击pull requests按钮请求将他的这个仓库推送给我们
Git推送到远程仓库GitHub以及多人协作开发_第12张图片
接着点击
Git推送到远程仓库GitHub以及多人协作开发_第13张图片
点击之后就会打开另一个页面,他可以看到自己修改的内容,以及给我们留言,头像左边的那行就是留言的主题,然后下面大输入框就输入具体留言
Git推送到远程仓库GitHub以及多人协作开发_第14张图片
留言写好之后就可以点击发送,真正把他自己的仓库推送给我们
在这里插入图片描述

回到我们自己视觉
我们在自己GitHub账号的仓库里,选择pull requests选项就可以看到别人给我们推送他修改的仓库。
Git推送到远程仓库GitHub以及多人协作开发_第15张图片
点击进去之后我们就能够看到别人的留言,我们也可以回复别人的留言,询问修改得怎么样。
Git推送到远程仓库GitHub以及多人协作开发_第16张图片
接下来我们就可以审核他给我们推送的代码,点击Files changes选项查看代码修改了什么
Git推送到远程仓库GitHub以及多人协作开发_第17张图片
确认没问题我们就可以将他推送给我们的代码合并到我们自己的仓库里,点击回第一个选项然后点击合并按钮
Git推送到远程仓库GitHub以及多人协作开发_第18张图片
然后输入提交信息,这个和commit -m命令写的是一样的
Git推送到远程仓库GitHub以及多人协作开发_第19张图片
写好之后点击Comfirm merge就能合并成功

给项目添加详细说明

在项目的根目录下新建一个叫README.md的文件,然后在里面输入详细的项目说明内容就可以了。
我们可以使用Typora这个软件来打开它来写内容。
写完之后推送到远程仓库就可以。

你可能感兴趣的:(软件使用)