前言

 

        目前,在版本控制系统中Git已经被广泛使用,并且很多技术团队也会逐步将工程从SVN迁移到Git,因此软件测试人员需要了解和精通它的使用方法。


什么是Git

 

        Git是由LinusTorvalds创建的分布式版本控制器,它可以有效的管理和跟踪不同分支的变化,可以比较每个提交中代码的变化。

Git采用的three-tree架构,大致可以分为:

       1. 版本库(Repository):工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库;

       2. 暂存区(Staging index):暂存区犹如一个临时性的仓库,可以将来自工作区的新文件或者文件修改统一暂存起来;以保证代码提交更有条理,避免琐碎代码的提交;

       3. 本地分支(工作区)(Local branch (working branch)):简单理解就是大家在电脑上可以看见的目录,开发和测试同学可以直接在本地编辑操作;


Git上的工作流程基本如下:

 

       1. 通过git clone克隆远程仓库到本地目录作为工作目录;

       2. 在本地工作目录进行文件新增和修改;

       3. 如果远程新增修改,需要同步更新本地文件;

       4. 在本地工作目录完成修改,通过git add将相关修改和添加文件提交到暂存区;

       5. 通过git commit添加到当前的工作区;

       6. 通过git push推送到远程的git服务器;


常用的Git命令

 

克隆Git仓库

       git clonegit@github.com:someRepositoryName.git =>这会将远程仓库克隆到本地目录。

创建新的本地分支

       git branch =>在本地创建新分支。

删除分支

       git branch-d =>删除本地分支。

       git push origin --delete =>删除远程分支。

 

将更改推送到分支

 

       git status=>检查分支的状态以查看是否有任何文件已更改。

       git add .=>将所有文件添加到暂存索引。

       git add YOUR_FILE=>只将一个文件添加到暂存索引。

       git commit -m ”YOUR_MESSAGE”=>提交代码更改。

       git push =>将更改推送到远程分支。

       git push -u origin =>将更改从本地分支推送到远程分支。

 

查看当前所在分支

       git branch =>查看您所在的分支。

 

切换到另一个分支

       git checkout =>切换到其他分支。

 

拉取最新代码

git pull =>将所有最新的东西从远程分支拉到你的本地分支。

git pull --rebase =>比较推荐使用该命令,该命令实现的功能为:

       1. 把本地 repo. 从上次 pull 之后的代码变更暂存起来 ;

       2. 回滚到上次 pull的情況 ;

       3. 更新本地分支信息与远程仓库一致;

       4. 再套用刚才暂存的本地变更代码;

 

合并分支

       当您希望将master分支所有最新变更合并到本地的XY分支,您可以通过git checkout master切换到master分支,然后通过git pull更新同步远程仓库代码,再通过git checkout XY 切换到XY分支,最后通过git merge master将master分支的变更合并到XY分支。

 

回退版本

       git reset--hard HEAD^=>将当前分支回退一个版本。


其他Git命令

 

日志查看

       git log=>查看某人已提交的更改。

       git log --since=2017-01-14=>显示从该日期到今天的提交。

       git log --until=2017-01-14=>显示提交截止日期。

       git log --author="SOME_USER"=>显示来自SOME_USER的提交。


结束语

 

       今天简单介绍测试过程常用的Git命令,后期将持续总结分享git workflow过程的经验和遇到的问题

 

来源:图文来自网络,如有侵权请联系删除