Git&&GitHub的使用(第三节)

GitHub

这是Git的远程仓库。
创建github账号
一来就可以看到一个注册页面,然后注册,注册完会出现以下界面。
Git&&GitHub的使用(第三节)
然后验证邮箱。
Git&&GitHub的使用(第三节)
Git&&GitHub的使用(第三节)
创建远程库
我这就把它的名字与我本地库的名字起成一样的GitRepository
Git&&GitHub的使用(第三节)
下图是创建好的样子,只不过目前我的远程库是空的。
Git&&GitHub的使用(第三节)
修改一下头像
Git&&GitHub的使用(第三节)
Git&&GitHub的使用(第三节)
Git&&GitHub的使用(第三节)
Git&&GitHub的使用(第三节)
创建远程库地址别名
找到下图的远程仓库地址,并且复制。
Git&&GitHub的使用(第三节)
然后将远程库地址起个别名叫original,加入到本地关联,然后查看与本地相关联的远程库。
Git&&GitHub的使用(第三节)
推送
git push [别名] [分支名]
Git&&GitHub的使用(第三节)
Git&&GitHub的使用(第三节)
上图是将本地库推送到远程库的步骤和结果。
下图是远程库的结果。
Git&&GitHub的使用(第三节)
克隆
为了说明克隆,我们在本地再创建一个工作区和一个名为令狐冲的用户,同时也在github上创建一个新用户,这时令狐冲的远程账号和他的本地库跟我之前创建的没有半毛钱关系。这时,令狐冲想要我的远程库应该怎么办呢?
用克隆!!
git clone [远程地址]
Git&&GitHub的使用(第三节)
然后令狐冲给远程库起个别名方便他自己操作。
这时令狐冲就有我的项目了。

团队成员邀请
如果令狐冲想要参与写操作,则必须要经过我同意。
Git&&GitHub的使用(第三节)
Git&&GitHub的使用(第三节)
Git&&GitHub的使用(第三节)
然后复制好邀请链接后,发给令狐冲,令狐冲通过邀请链接接受邀请。
Git&&GitHub的使用(第三节)
我给令狐冲发一个协作开发的邀请,并给他一个链接,他点进去确认一下就行了。
如下图,令狐冲修改了test.txt,然后提交到本地库,然后push到远程库。
Git&&GitHub的使用(第三节)
拉取
这时我的本地库与远程库就不一致了,于是我要用拉取命令。
pull的作用等价于fetch加上merge。
我们先看看fetch,我先切换到我的目录下,然后看我的test.txt文件内容。
Git&&GitHub的使用(第三节)
这时我要通过fetch命令去抓取令狐冲刚刚提交到远程库的文件。
如下图,我们发现fetch下来的东西和原来一样,这是因为fetch仅仅是取,并没有合并。
Git&&GitHub的使用(第三节)
但是,我们可以切换到一个特殊的分支查看取下来的文件,这时我们发现该文件与远程库的一致。
Git&&GitHub的使用(第三节)
然后如下图,我先回到自己的master,然后合并original/master,然后查看文件,这时就一样了。
Git&&GitHub的使用(第三节)
解决冲突

如果不是基于 GitHub 远程库的最新版所做的修改,不能推送,必须先拉取。拉取下来后如果进入冲突状态,则按照“分支冲突解决”操作解决即可。如下图,我在我的工作区里编辑改文件,增加了红框部分。
Git&&GitHub的使用(第三节)
然后看下图,我将编辑好的文件push到远程库。
Git&&GitHub的使用(第三节)
这时,远程库里的文件就比令狐冲的文件高一个版本了,此时令狐冲在我改动的位置进行改动,如下图:
Git&&GitHub的使用(第三节)
然后如下图进行push,我们会发现产生了冲突!!
Git&&GitHub的使用(第三节)
这时,需要我们先从远程库拉取,如下图,我们可以看到一个很熟悉的特殊分支,前面讲git的时候说过。
Git&&GitHub的使用(第三节)
这时,我编辑冲突文件。
Git&&GitHub的使用(第三节)
然后提交。
Git&&GitHub的使用(第三节)
然后推送到远程。
Git&&GitHub的使用(第三节)
跨团队协作
如果一个叫东方不败的人建立了github账号,他想直接得到我的库该怎么做呢?用fork,如下图:
Git&&GitHub的使用(第三节)
然后在东方不败的号上就有一个我的仓库,所有者是东方不败,然后东方不败进入自己本地的工作区,讲github上的库克隆下来,然后修改test.txt,然后推送到自己的github上,这时东方不败想让自己远程库修改的东西搞到我的远程库上应该怎么做?
依次执行以下步骤:
Git&&GitHub的使用(第三节)
Git&&GitHub的使用(第三节)
上面两张图是东方不败的申请。下面这张图是在我的github账号里查收东方不败的申请。然后双方可以互相对话!!
Git&&GitHub的使用(第三节)
然后我进行代码审核。
Git&&GitHub的使用(第三节)
然后合并代码
Git&&GitHub的使用(第三节)
SSH免密登录
 进入当前用户的家目录 $ cd ~
 删除.ssh 目录 $ rm -rvf .ssh
 运行命令生成.ssh **目录 $ ssh-****** -t rsa -C [email protected] [注意:这里-C 这个参数是大写的 C]
 进入.ssh 目录查看文件列表
$ cd .ssh
$ ls -lF
 查看 id_rsa.pub 文件内容
$ cat id_rsa.pub
 复制 id_rsa.pub 文件内容,登录 GitHub,点击用户头像→Settings→SSH and GPG keys
 New SSH Key  输入复制的**信息
 回到 Git bash 创建远程地址别名 git remote add origin_ssh [email protected]:atguigu2018ybuq/huashan.git (这里用SSH的地址)
 推送文件进行测试