19组-第二次作业
完成下面的题目,并在小组博客中写出整个操作过程及学习心得(图文并茂):(每人都要在小组博客中写出来,并注明姓名)
1.参照 http://www.cnblogs.com/xinz/p/3803109.html 的第一题,每人建立一个GitHub账号,组长建立一个Project,将本组成员纳入此Porject中的Collaborators,并添加zykgnyue 为Collaborator。
2.每人自己建立一个HelloWorld项目,练习使用git的add/commit/push/pull/fetch/clone等基本命令。比较项目的新旧版本的差别。
3.完成小组的“CanTool”项目的需求文档(使用Markdown写文档),尝试同组成员在各自PC上修改同一文档后,如何使用Git命令完成GitHub上的文档的更新,而不产生冲突。并验证GitHub上的文档确实是最新的文档。
胡宏周
1、 注册GitHub账号后新建一个仓库(repository)
2、 克隆远程库到本地库:
3、我们在本地库中新建一个helloword.txt文件,然后进行添加到本地HelloWorld仓库,添加文件分两步:先把文件添加到工作区,再把工作区文件推送至版本库:
4、此时helloworld文件就添加到本地库中了,现在将其推送到远程库中(第一次推送需要-u参数):
此时我们发现GitHub网站上HelloWorld库中多了一个helloworld文件,推送成功。
5、从远程库获取新版本到本地库有两种方法:git fetch和git pull。git pull简单粗暴,获取新版本后直接和本地版本合并,而fetch则并不主动合并。
此时只是获取了远程库的新版本到本地库,但并没有合并,我们可以查看新旧版本的变化并决定是否合并。
抓取到新版本后直接合并,因为远程库并没有修改所有显示Already up-to-date.
总结:git功能强大,操作简单,有助于团体项目开发,不过个人认为做大项目时对于多人协作,git确实很使用,对于小项目而言就有些鸡肋了。
蒋涵
原来一直用source tree和码云管理项目代码,听说GitHub收费的,所以一直没有用过,今天第一次尝试学到了很多。组长说注册一个Github账号就好了,我就以为Github只是网页上的不用下载,于是就在官网上注册了账号,激活后新建了一个仓库,还新建了一个项目,如图1,2。
图1
图2
按照source tree的步骤,接下来就可以克隆码云上的项目了,也可以提交推送项目进码云了,可是我的git没有安装软件就感觉进行不下去了,找了一些网上的教程越想越不对,再一次和同学确认后才知道GitHub也是要安装的,于是找同学拷来安装包进行安装,除了安装路径全都选择默认选项,安装完后按照网上的教程进行配置,打开git bush.exe,输入
$ git config --global user.name "jianghan"
$ git config --global user.email "1145472997@qq.com"
在输入git config命令的--global参数时,我将--global误写成了-global,导致配置失败,以后做事一定要细心。
配置完后,通过查看小组成员推荐的廖雪峰老师的git教程又进行了一些实验,学习使用git.
图3 设置本地库
图4 新建文档
图5 提交文档
图6 修改文档
图7 查看修改记录
图8 提交修改后的文档
由于我的远程库名称为HelloWord于是我重新进了一个本地库并写了一个文件如图9。
图9
接下来我按照网上的教程生成了ssh key,如图10。
图10
再将ssh key加进我的gitHub里,如图11.
图11
再将本地库与远程库链接,如图12。
图12
连接时出现了错误,于是借用小组成员的远程库,链接后先克隆到本地库再进行添加推送等操作,如图13.
图13
通过这次Git的学习使用让我感受到Github和source tree的区别,source tree有可视化界面相对较为直观,Github需要用命令行,须记忆一些特定命令,Github上管理的代码都是公开的,个人的需要收费。相信经过对Github的进一步学习还会有更多体会。
杨亚南
一、git新建仓库
在本地创建一个和GitHub上仓库一样名称的文件夹
mkdir cantoolFrontExample
进入该目录
cd cantoolFrontExample
初始化该目录
git init
检索文件变动,把修改的文件放入缓存队列
git add *
提交修改
git commit -m 'first commit'
推送到远程仓库
git push -u origin master
二、git下载代码修改后上传
git clone https://github.com/yananYangYSU/cantoolFrontExample.git cantoolFrontExample
ls
echo "modify" >>index.html
检索文件变动,把修改的文件放入缓存队列
git add index.html
提交修改
git commit -m "second commit"
推送到远程仓库
git push origin master
git把远程代码更新到本地
查看远程仓库版本,可以看到只有一个origin版本
git remote -v
从远程获取最新版本到本地(origin版本的master分支)
git fetch origin master
对比文件差异
git log -p master.. origin/master
查看本地分支,可以看大本地分支为master
git branch
将差异文件合并到本地分支
git merge origin/master
再次对比文件差异,发现文件已经更新到最新
git log -p master.. origin/master
桑炜
以前小组合作开发一个项目时,用的是SVN,SVN是一个集中式的版本控制系统,通常是小组长的电脑作为大家的服务器,大家首先从服务器上取得程序的最新版本,然后做完自己的工作以后,再把程序传到服务器上。通常成员们在一个局域网时,才比较方便。
Git是分布式版本控制系统,也就是说每个成员那里都是一个完整版本库,在安全性和高效性方面有很大的优势。
以命令行的方式来操作git是我们应该掌握的技能。我的是windows操作系统,需要在目标位置,击右键,打开Git Bash。
首先需要配置一下用户信息,这样可以明确提交的用户。
配置完成后,可以输入以下命令来查看是不是配置正确了。
接下来创建一个版本库
可以看到,此仓库的目录是 /d/git_workspace/learngit
然后使用git init命令,当前目录下增加了一个.git文件。
用git remote -v命令可以查看远程库的信息
我写了一个HelloWorld程序,把它放到了远程库的目录下。
用 git add命令把文件添加到仓库
用 git status命令查看当前库的状态
使用commit命令进行提交
第一次push时,使用git push -uorigin master命令
然后再github的网页上,就可以看见代码库中已经有了刚才从命令行提交的HelloWorld文件了。
需求文档
需求文档已经上传至github,并且编辑了另外一篇博客《19组第二次作业之需求文档》,链接为
http://www.cnblogs.com/javaIOException/p/7638389.html