博主近来发现之前学习过很多东西,都没有留下什么资料供后面回顾时参考,感觉自己总是在寻找一条路,一条可以让自己走的更远的路。今天在新的电脑上安装Git 客户端,所以就做一个分享吧!
一、下载并安装客户端
下载地址:git 客户端下载,下载链接中可以看到不同操作系统的客户端下载链接,这里我们以Windows来做示例,下载过程省略....(网速影响下载速度,我怕你们等不及....,毕竟博主是用的魔都免费的4兆网络)。
安装过程永远都是那么简单,下一步下一步呗。
点击finish ,到此客户端安装已经完成,回到桌面,右键可以看到出现的菜单中有 “Git GUI Here” 和 “Git Bash Here” 两个选项,第一个代表的是Git 客户端的图形界面,即可视化操作界面,第二个代表的是Git 的命令行操作界面,真正的程序员应该都喜欢用命令行来解决问吧?两种界面如下图:
二、配置客户端
安装好以后就可以无法无天的clone远程代码库了吗?我们来试一下
这是我clone自己的的代码库,结果提示我没有权限。所以我们上面的所有操作只是安装了一个本地Git库,并不能和远程Git做同步操作,因此需要进行如下配置。
打开github网站,并登录。https://github.com,并进入设置页面,
点击左侧菜单:SSH and GPG keys,出现如下图:
我这里已经添加了一台计算机,因此可以看到有一个已经配置过的的SSH keys。我们点击右上角 “New SSH key”,出现如下图
Title 字段随意填写,就是一个标志,例如我上面的 “Work Book”,代表的是我的工作电脑,我们这里添加一个 “Home Book”的key,代表我的私人笔记本。填完了Title,那么下面的key该填什么?框内提示可以是:ssh-rsa,ssh-ed25519等等的东西,那么这些东西代表的是什么?简单的说就是一个身份认证的钥匙,可以看看这个博客,讲的挺清晰:SSH+RSA。那我们怎么获取本地电脑的SSH-RSA呢?
在桌面,右键鼠标,选择“Git Bash Here”,弹出窗口,输入:ssh-keygen -t rsa –C "邮箱地址",注意这里的邮箱地址换成你github的账号,否则这步配置将是无效的。
,这样就生成了我们要的ssh-rsa 钥匙。打开上面提示的目录:/c/users/Administrator/.ssh ,可以看到如下两个文件
注意,第一个id_rsa 这个是私有秘钥,不能泄露,否则...... 第二个是公钥,我们就拿着个来配置我们的github认证。
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDE6p6vpI2okHW8ZQPQxhQXgLxwPmL2IBK4HMfuhYogMmK3oMGQ6+evcjEQHCRfhNPFW+ma+64UE8Y57cY7t+QWH1EO86OOJC6s9dPjT/KszS536OEABa+/FWtGZPxcDUQwHrSLKG5K0wE96SWdFQDjXBOCHZxbGDJUQ9MzOtnH0j+UlWKnp8HsQADCD2d/BOfNlETztQ6GaORqGhFfNN269NoZluSwfpcDjU/fW/ai93WOm6ZaaisfLXRestZLKQsB1qEUt/9nkO3HwJZd+0QK1tje/QTyrVR6L2HF5VNepBYIgx3UuGVNgytKXNiWr3XwnwbWT0rOtiCYFJcIdZYR **********.com
打开文件,将上面的公钥填入GitHub对应的key文本框内。,然后Add SSH key。
现在我们再来尝试一下clone代码,结果再没有提示没有权限问题,证明我们的配置是对的。
三、配置用户以及提交代码
通过上面两步操作之后,其实我们只是告诉git我这台电脑的存在,并不能告诉远程服务器我是谁,比如我要上传新的文件,我是不能上传的。请看下图:
我在里面项目里面增加了一个test.txt 的文本文件,我想要上传到服务器
文件创建完成,现在我来上传,输入命令:git add test.txt,出现如下提示:
,警告不用管,大概就是说我的文件里面包行了不同操作系统的符号格式,然后我们提交:git commit -m '测试添加',提示如下:
一目了然,它要我告诉他我是谁。了解版本管理的人都知道,每一次的代码更新,都应该有明确的记录什么时候什么人做了什么操作。我们上面的所有配置,只是配置将我们的计算机同远程服务器做了一个认证,告诉它我们这个客户端的存在,并没有告诉它我是谁。那我们就按照它的提示进行配置:
没有任何提示,就说明是设置成功了!然后我们再测试一下提交:
没有提示任何错误,那我们git push ,将文件提交到远程仓库
提示成功!我们去github远程仓库上看一下,是不是有这个文件
到此,所有配置都已经完成,有什么问题欢迎留言。