软件构造博客final

软件构造虽然结课了,但是给我的一个巨大收获之一就是使用git管理代码。

Git是目前世界上最先进的分布式版本控制系统。其基本原理大概如下图所示

图片描述

Workspace:工作区
Index / Stage:暂存区
Repository:仓库区(或本地仓库)
Remote:远程仓库

在电脑上安装好git后,只需在一个你想要的工作目录右键

点击git bash here

 如果不是clone下来的项目,没有.git文件,需要第一步进行初始化本地仓库,输入git init指令。

然后使用git add指令对你想要上传的文件进行跟踪。

使用git commit指令进行提交。

接下来就需要添加远程仓库,使用git remote add origin + 地址 的方法

然后只需要git push origin master就可以将文件提交到github上了。

如果想要建立分支,使用git checkout -b + 分支名 ,然后再进行commit就行了

以上是最基本的操作,在本学期基本够用了,不过就算结课了,以后还是要使用git,那么就需要了解一些更多的方法。

首先就是这学期没怎么用到的分支合并方法

首先去创建一个分支

git branch change

再进行分支切换

git checkout change

代码合并(将分支的代码合并到主分支上)

git checkout master
git merge change

删除分支

git branch -D change

比如说现在有一个远程版本库的Git地址是https://github.com/example.git,就可以使用下面的命令将代码下载到本地

git clone https://github.com/example.git

之后可以在这份代码的基础上进行一些修改和操作

修改完毕后可以直接执行git commit -a操作进行提交更新

然后可以使用git push orign master进行重新上传

其中orign部分制定的是远程版本库的Git地址,master部分制定的是同步到哪一个分支上。

接下来看一下如何将远程版本库上的修改同步到本地。Git提供了两种命令来完成这个功能,分别是fetch和pull

git fetch orign master

执行这个命令后,会将远程版本库上的代码同步到本地,不过同步下来的代码并不会合并到任何一个分支上去,而是保存到一个orign/master分支上,这时候可以通过diff命令来查看远程版本库上修改了哪些内容

git diff orign/master

之后再调用merge将orign/master分支上的修改合并到主分支上

git merge orign/master

而pull 命令则是相当于将fetch和merge两个命令放在一起执行了,它可以从远程版本库获取最新的代码并且与本地合并

git pull orign/mater

还有git log指令可以进行记录的显示,指令种类部分如下:

git log --follow <filePath>显示特定文件的历史更改记录
git log -g显示所有的记录(包括丢失的),用来做数据恢复很方便,等同于命令git reflog
git log <revirsion range>显示已定范围的log
git log --merges显示所有的merge记录

还有git log --graph,这个也是我在lab3中用到的,用来显示commit和分支记录

除此之外,git还有图形客户端,选择git GUI here

 这个可以用手动操作的方法对仓库进行管理

这个是进行代码克隆,将远程仓库的代码克隆到本地。

可以发现全部都是可视化的操作,相当于将每一条指令变成了一个按钮。其中commit push等应有尽有,也是相当强的工具。

本学期没有使用过git GUI,所以各种使用方法在此也不进行赘述了,可能以后会尝试使用一下?

总而言之,git是实现代码项目管理的强大工具,是一个程序员必然要掌握的工具,有很多操作值得我们学习 ,老师也在群里发了git的中文官方手册,有条件的话本人会进行学习,以上便是本学期软件构造最后一个博客,在最后还是要感谢老师和助教们!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值