第二章作业第二题——刘祉成

问:每人自己建立一个HelloWorld项目,练习使用git的add/commit/push/pull/fetch/clone等基本命令。比较项目的新旧版本的差别。

答:

GitHub练习心得

(1)准备阶段

在GitHub个人主页新建一个远程仓库,命名为“Abe_HelloWorld”,

然后在本机桌面新建“HelloWorld”文件夹,并在其中建立“Abe_HelloWorld.java”文件。内容如图:

安装Git,打开Git Bash,首先设置自己的用户名和邮箱

然后用git init命令将HelloWorld文件夹变成本地仓库

然后生成SSH KEY,在用户文档的.ssh文件夹下找到地址,复制,进入GitHub个人主页的Setting界面,点击SSH选项,将复制的内容填入地址栏

(2)add, commit, push

首先将Abe_HelloWorld.java添加到暂存区,然后提交到本地仓库

之后,建立本地仓库与远程仓库的联系,然后将本地仓库的.java文件上传到远程仓库

尴尬的事情发生了,push失败,不过别着急,错误的原因是本地仓库并没用pull到最新的远程仓库,也就是远程仓库的的最新文件没有更新到本地仓库,这时只要pull一下再push就好了

这样,远程仓库里就有了这个.java文件了

(3)pull, fetch, clone

上一步骤是将本地上传至网络,这一步骤则是于从网络下载到本地有关。这里主要说一下这三个命令的区别。

clone:就是将远程仓库的文件拷贝到本地仓库并不会考虑冲突和重复性;

这时候在本地仓库已经可以看到远程仓库的文件夹

fetch:查看远程仓库的内容,并不会同步;

先修改本地仓库的.java文件

然后fetch后比较不同

可以看到不同之处被标绿

pull:将远程仓库的内容同步到本地仓库,但是当出现同名文件且文件内容不一致时pull会停止,系统会要求删掉本地内容才能同步。

这时虽然显示pull进行成功,但是本地仓库并没有被修改,因为远程仓库没有被修改,这时需要使用checkout命令

如果将远程仓库的文件修改

这时再进行pull操作,会发现本地仓库已经被修改

(4)Tips:push前一定先pull一下,这应该是一个好习惯。

posted on 2016-09-18 21:19  北洋五霸  阅读(191)  评论(0编辑  收藏  举报

导航