第二次作业——韩婧
2.每人自己建立一个HelloWorld项目,练习使用git的add/commit/push/pull/fetch/clone等基本命令。比较项目的新旧版本的差别。
第一步:写好HelloWorld程序项目,在此我用C++语言编写。
第二步:安装Git,打开Git Bash,如图安装成功。
安装完成后,需要进行最后一步设置,在命令行输入姓名以及email地址才能进行下一步操作。如图
第三步:创建版本库,即仓库(repository),这个目录里面的所有文件都可以被Git管理起来。创建后需要初始化把这个目录变成Git可以管理的仓库。
注:pwd命令用于显示当前目录。
第四步:add命令提交到Git缓冲区,无反应即表示add成功。
注:在提交CPP文件前需要将文件手动添加到helloworld仓库中,路径在第三步中已经查看。
第五步:status掌握仓库当前的状态
第六步:commit命令
当文件修改到一定程度时,可以"保存一个快照"。这个快照在Git即被称为commit命令。一旦文件改乱或者误删,可以从最近的一个commit中恢复。
Git相较于其他版本控制系统的优势之一是它拥有远程仓库功能,作为分布式版本控制系统,同一个Git仓库可以分布到不同的机器上。具体通过“克隆”最初的
原始版本库后,每台机器都有了这个版本库。克隆后有权限等问题,保障程序不会被改乱。GitHub网站就是提供Git仓库托管服务的,所以只要注册一个GitHub
账号,就可以免费获得Git远程仓库。
注册账号的过程就不再赘述了。由于本地Git仓库与GitHub仓库之间传输是通过SSH加密的,所以需要对此进行设置:
1.创建SSH Key。在用户主目录下,查看是否有.ssh目录,如果有,在查看是否有id_rsa以及id_rsa.pub两个文件。若有,跳至下一步,若无,则打开Git Bash,
创建SSH:
我这里没有,通过命令
$ ssh-keygen -t rsa -C "youremail@example.com"进行添加。(一路回车即可)
添加后如图
这两个文件即SSH Key的密钥对,id_rsa是私钥,不能泄露,id_rsa.pub是公钥,可以公开。
2.登录GitHub,打开Setting,在SSH and GPG keys下Add SSH Key。填写任意Title,在Key文本框中粘贴id_rsa.pub文件的内容。
到目前为止,我已经在本地创建了一个Git仓库,又想要在GitHub中创建一个Git仓库,并且让两个仓库进行远程同步。
第七步:添加远程库
将仓库建好后,可以从这个仓库中克隆出新的仓库,也可以把一个已有的本地仓库与之关联,然后把本地仓库中的内容推送到GitHub仓库中。
现在我们需要关联两个仓库,命令如下:
第八步:push命令
关联后即可进行push,将本地仓库文件传送至远程服务器。
origin即为远程库的名字。但这里push失败,原因是我在建立仓库时勾选中创建了README.md文档,使得本地库与远程库之间文件不匹配,因此需要将此文档下载到本地。
使用Pull命令。
之后即可在仓库中看到文档。
此时再次使用push即可传输到远程库。
远程库中文件push成功
第九步:clone命令
1.在远程库中创建一个新的仓库
2.clone到本地
3.本地仓库出现文件,clone成功
另:fetch命令是将远程库中文件下载到本地仓库,用法如下:
git fetch origin master