git学习【8】利用git远程协作

建立SSH keys

SSH keys作用:避免在每次提交时都需要输入github的密码

在主机生成SSH-KEY:

1.     创建ssh:ssh-keygen –t rsa –C “email”

2.     创建agent保存ssh的密码:eval “$(ssh-agent –s)”

3.     保存ssh:ssh-add ~/.ssh/id_rsa


在github添加ssh

4.     复制key内容:vim ~/.ssh/id_rsa.pub

5.     添加到github的ssh keys中即可。

6.     验证是否添加成功:ssh -T [email protected]


Git远程协作主要命令

1.     git clone:将github仓库克隆到本地

例:git clone https://github.com/ChenXingyou/test.git

2.     git fetch:获取远程仓库最新数据,但当前的head不变动

3.     git push:推送本地修改到服务器

4.     git pull:获取远程仓库并修改head到最新版本

 

远程协作中的小技巧

1.     当服务器和本地的commit合并有冲突时,与本地合并冲突处理方法相似。首先git pull,修改本地内容为无冲突后,add,commit,再push。

2.     Push时默认不推送tag,需要使用git push–tags手动推送

3.     只更新分支 git pull origin 分支名,只push分支git push origin 分支名

4.     删除服务器分支,首先在本地删除分支git brunch –d 分支名,再从服务器删除分支git push –delete origin 分支名


Github pull request 

fork项目后有了自己的修改,此时可以向原作者申请,将自己的修改提交到原项目


Github pull request流程

1. Github上fork一个项目,就能将该项目引用到自己的账户中。

2. Clone项目到本地,在本地做修改,提交到服务器后,创建pull request申请。

3. 项目原作者可提出建议,修改的信息会自动保存到之前的pull request上

4. 原作者接受申请后,提交被合并,pull request关闭

 

将上游仓库更新到本地

1.     添加上游仓库路径:git remote add 代名词路径

2.     查看仓库的信息:git remote –v

3.     获取上游仓库的最新代码:git fetch代名词

4.     合并到本地分支:git merge代名词/本地分支


你可能感兴趣的:(git学习)