经过了三天两夜的努力,终于都写到最后一篇了(个人向),前面记录了一些自己应该会用到的东西,最后再记录一下怎么弄远程仓库就OK了,又累又困,简直不能太难受,但是想赶紧把这个东西弄好,想做好使用github的准备,所以就累死累活几天吧~!

远程仓库

什么是远程仓库呢?其实很好理解,相信大家对Github并不陌生,还有GitLab、国内还有码云、Coding等等,这些都是远程仓库,实质就是挂在其他地方的Git仓库;当然自己也可以搭建远程仓库,详细请参考-------->菜鸟教程 - Git远程仓库

连接远程仓库

以下内容以Github为例子,以后用其他的话再考虑记录。全程在自己的项目文件夹里面操作,这里就省去配置那些不说了,直接去看我之前写的。

添加远程仓库

在使用远程仓库前,要先建立连接,命令格式如下

git remote add [shortname] [url]
//[shortname]是仓库主机名字,可以自定义。
//[url]是远程仓库的链接,在Github上面建立了仓库之后就会给出

SSH加密

Git和Github之间是通过SSH加密连接的,所以要先用命令建立一个SSH密钥

ssh-keygen -t rsa -C "youremail@example.com"
//youremail@example.com处填入邮箱,推荐是你申请github的邮箱,不要删掉双引号

然后出现下面提示:

Enter file in which to save the key (/c/Users/Administration/.ssh/id_rsa): 
//键入密钥文件的保存路径,默认(/c/Users/Administration/.ssh/id_rsa),可以更改,但是格式一定要和这里的一样
//注意,路径格式和Windows不太一样,记得不要写错
Enter passphrase (empty for no passphrase):
//键入口令(留空即为没有口令),可直接回车留空
Enter same passphrase again:
//再输入一次口令(如果上面留空这里也直接留空),可直接回车留空

然后到刚刚密钥文件的保存路径,用记事本打开id_rsa.pub文件(推荐用Notepad++)。然后复制里面那串东西。
进入Github并登陆,鼠标指向头像,出现菜单,点击倒数第二个Settings(设置)。然后在左边菜单找到SSH and GPG keys,点击进入之后,找到New SSH key,把刚刚复制的那串东西输入到Key栏就行了,Title可以不填,然后点击Add SSH Key。

回到命令行,输入下面命令:

ssh -T git@github.com

如果出现:Hi xxxx! You've successfully authenticated, but GitHub does not provide shell access.那就证明SSH连接建立成功。

建立远程仓库

在Github上面创建仓库,鼠标指向网站头顶的,点击'+'号,点击New repository,然后在Repository name输入你的仓库名字。其他内容为可选项,有兴趣可以自己去了解一下,这里不多说,其实也就是描述,公开还是私有,还有其他的协议什么的。
填好之后点下:Create Repository,仓库就建好了。创建成功后,会出现一堆信息,这些信息其实就是git远程连接命令。之后对着上面的抄就是了。

查看当前远程库:

git remote //此命令只会显示当前远程库主机
git remote -v //这个命令会显示远程库主机和各个别名的实际链接地址

远程库下载新分支与数据

git fetch

下载下来之后可以试试git merge [alias]/[branch]合并一下分支。

当然可以直接用

git pull

就直接执行前面的fetch和merge两个命令了

推送文件到远程库

命令格式:

git push [alias] [branch] //alias:主机名,branch:分支名

例子:

git push origin master //把master推送到github的上
git push -u origin master //把master推送到github的上,并设定origin为默认主机,下次就不用输入origin了

出现某些报错的时候,可以尝试把-u改成--force

删除远程仓库

git remote rm [别名]

参考资料

  1. 菜鸟教程 - Git 远程仓库(Github)
  2. 新手问题 git pull 和 git fetch 有什么区别?
  3. 小白教程:Visual Studio2017配置GitHub图文教程
  4. Git 里面的 origin 到底代表啥意思?
  5. git如何避免”warning: LF will be replaced by CRLF“提示?

总结

终于把个人学习的四篇都写完了,可以休息一下继续学PHP了(当然现在还有一些考试的东西要学),亚历山大,不过搞定了一个心头痒就很舒服,Git是个不错的东西!如果有人看到了我的博客,有疵漏的,麻烦评论补充和更正一下谢谢~【评论我后台审核,回复后可能不可见,但只要是参考性的我基本都会放出来的】