Git连接GitHub仓库详解

创建SSH Key

1.注册GitHub账号。

2.创建SSH Key。windows + R 键同时按,打开运行命令窗口,输入.进入家目录。

在这里插入图片描述

 

看看这个目录下有没有id_rsaid_rsa.pub这两个文件,如果有(那就奇了怪了!),一般第一次使用是没有的,真有的话可以直接跳过下面的命令。

打开命令行,执行命令:ssh-keygen -t rsa -C "dmneil7o@icloud.com"邮箱是自己GitHub账号;它会让你选择路径,还会让你设置密码,这里最好全部都按照默认,一路回车下去,如下:

 这时候我们再次打开家目录,会发现有一个.ssh文件夹,如下:

id_rsa是私钥,不能泄露, id_rsa.pub是公钥,可以放心传播。

3.登录GitHub,打开settings找到SSH Key页面,点击New SSH Key, 填上标题,同时在Key文本框中粘贴id_rsa.pub文件的公钥内容。

 

 点击Add SSH key之后会跳转到输入密码的界面,我们需要输入GitHub密码来继续:

 

 接下来我们就可以看到我们新加的SSH key了,如下:

 

 添加远程库

 需求是:我们有本地的Git仓库,又想在GitHub中创建一个Git仓库,并且希望这两个仓库进行远程同步,这样GitHub的仓库别人就可以来写作了。
1.在GitHub上创建一个仓库,在页面右上角号选择新的仓库(New repository);

 2.填入仓库名称就可以了,直接点创建,如下:

 这时候一个新的仓库就建立完成了,目前这个仓库还是空的

 页面提示说,我们可以有多种方法初始化这个仓库,我们按照给出的提示在本地仓库中运行下面的命令:
git remote add origin https://github.com/duanmingpy/helloworld.git
git push -u origin master

这里使用的几个命令,其中git push命令,实际上是把当前分支master推送到远程。

因为远程库是空的,第一次推送master增加一个-u参数,这样Git不仅仅会把本地的master分支的内容推送到远程GitHub仓库中新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送和拉取就可以简化命令了。
我们刷新GitHub仓库的页面,这样就可以看到GitHub上的仓库和本地一模一样了。如下:

 现在开始,只要本地有commit,就可以使用git push origin master把本地master分支的最新修改交托给GitHub上了,现在就真正意义上的拥有了分布式版本库了。

 创建与合并分支

上篇文章的版本回退上我们就知道了,每次提交,Git都把它们串成一条时间线,这条时间线是一个分支。
到现在为止,我们还只有一个master主分支,HEAD严格来说是指向master,所以HEAD指向的就是当前分支,就像python中模块的__main__特殊变量一样。
现在我们来创建新的分支:
1.查看所有分支命令git branch
2.git checkout -b 分支名 创建并切换到这个分支

 git checkout命令加上参数-b就代表创建之后切换到,相当于两条命令:
git branch dy 和 git checkout dy 相当于这两条。
git branch查看分支,会列出所有分支,当前分支前面有一个星号,上面用到了。

分支之间的工作

现在我们在dy分支上,我们在test.txt添加一行dddddddddd,再把它添加到版本库。

 我们在dy分支上完成了提交之后,切换到main分支上查看test.txt,如下:

 现在我们想要把dy分支上增加的内容合并到分支master分支上,可以在master分支上使用如下命令:
git merge dy

暂时先总结一下创建与合并命令:
查看分支git branch
创建分支git branch name
切换分支git checkout name
创建+切换分支git checkout -b name
合并某分支到当前分支git merge name
删除分支git branch -d name

  

 下面我们考虑:
如果在dy分支上我们修改提交了新内容,在main上也修改提交了新内容,那么我们在合并的时候取谁的呢?

还是一步一步来,
1先创建一个新分支叫做dy,因为刚才把它给删掉了
2查看一下README.md的内容
3添加一些新内容
4提交到版本库

参考资料

1. git连接github仓库详解

原文地址:https://www.cnblogs.com/sunbines/p/13798610.html