最近在改TV media相关的测试用例,需要在git上维护相关的脚本,把常用命令总结如下,方便以后使用.

1. 从已有git服务器上clone到本地,

首先进入用户根目录: cd ~

然后进行clone: git clone littledrop@IP:/automation my-master

注: 这里littlerop@IP:/automation是git server的url, my-master指的是本地rep的名称,可以省略.如果省略,则自动用url中的automation.

执行上述命令后,在本地自动创建了master分支,路径位于~/automation

2. 然后手工创建自己的分支,并立刻切到此分支

git branch -b littledrop

这个分支与master分支内容一样

3. 通过git branch -a可以查看当前所有分支(包括本地及远程),标*的为当前所工作的分支

4. 在branch littledrop上开始修改代码file.txt,修改完后决定提交,用以下命令

git add file.txt

git commit -m "这里输入提交时候的comment"

5. 在remote上新建一个跟littledrop对应的远程分支

git push origin littledrop:littledrop

注: origin代表的是远端的repository, 前一个littledrop表示本地branch<src>, 后一个littledrop代表远端branch<dst>, 如果远端没有名为littledrop的分支,则自动创建.  如果省略了<dst>,git就认为你想push到remote repository下和local branch相同名字的branch。

6. 通过git log可以看到当前分支上的历史信息

7. 如果对刚刚的commit后悔了,需要撤掉,用

git revert HEAD(撤销前一次的commit)

或者是

git revert commit-id

这里commit-id可以通过git log看到.(比如:fa042ce57ebbe5bb9c8db709f719cec2c58ee7ff)撤销指定的版本,撤销也会作为一次提交进行保存。
git revert是提交一个新的版本,将需要revert的版本的内容再反向修改回去,版本会递增,不影响之前提交的内容

注: git revert的动作通过git log能够看到,如果希望在git log里也去掉刚刚commit的记录,用git reset

8. 用git reset撤销刚刚的commit,这样清除后通过git log就看不到这次撤销的记录

git reset --hard commit-id

9. 用git config配置用户名和email, 即提交时显示的作者信息,

git config --global user.name "littledrop"

git config --global user.emal littledrop@xxx.com

git commit --amend --reset-author

10.对不同的branch进行merge,如把master上的内容merge到littledrop分支上

先checkout到littledrop: git checkout littledrop

再进行merge:  git merge master

11. 如果远程master有更新,本地也要及时pull下来

git pull origin master

12. 通过git blame可以追踪每个文件的各行代码是由谁修改的

git blame file.txt

git usage:常用git命令的更多相关文章

  1. GIT中常用的命令

    最近项目中使用到了GIT,所以记录一下GIT中常用的命令. GIT使用的客户端有Git Bash:http://code.google.com/p/msysgit/ 还有乌龟TortoiseGit:h ...

  2. git基础常用维护命令

    开发模式介绍 master为生产环境分支 trunk为测试环境分支 开发分支由程序员自己取名 比如来一个新项目之后,下面步骤都是在本地操作 1.从本地获取远程master最新代码,保证本地master ...

  3. Git(二):常用 Git 命令清单

    转: http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html 我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图 ...

  4. Git 的常用的命令

    之前一直在使用SVN作为版本管理工具,现在项目要求使用Git,下面简单记录一下一些常用的命令.关于原理和使用方式的详细说明,具体教程参考的廖雪峰的git教程. 1. github 账号的申请. 2. ...

  5. Git最常用的命令 总结

    stage/unstage  git add xxx.xx 和 git reset HEAD xxx.xx 前者将本地的修改提交到index(此操作成为stage,参考备注1),后者将已提交到inde ...

  6. Git之常用的命令操作

    set LESSCHARSET=utf-8 git设置文件名大小写敏感 git branch -rgit checkout 'TestMaster'git checkout -b 'TestMaste ...

  7. Git操作常用的命令都在这里了。

    创建仓库 git init 在当前目录执行,会生成 .git目录文件,这个和SVN一致. 提交到仓库 git commit -m "first commit" -m:表示提交描述, ...

  8. git简单常用的命令

    git status --查看文件状态 git add+文件路径 --上传到缓存区 git add --all --全部传到缓存区 git commit -m '描述' --对上传文件做描述 git ...

  9. 关于Git中的一些常用的命令

    深入了解git的checkout命令 检出命令(git checkout)是Git最常用的命令之一,同时也是一个很危险的命令. 因为这条命令会重写工作区.检出命令的用法如下: 用法一: git che ...

随机推荐

  1. Android倒计时:计算两个时间将得到的时间差转化为倒计时(xx时xx分xx秒格式)

    首先是一个自定义控件: public class RushBuyCountDownTimerView extends LinearLayout { // 小时,十位 private TextView ...

  2. ios系统(苹果手机)按钮显示为圆角和渐变的问题

    按钮在安卓手机上显示正常,但在苹果手机上会显示如下: 解决办法:给该按钮的样式加上:-webkit-appearance:none;这样按钮就会显示正常

  3. Date Range Picker时间插件非常不错,主要体现在选择一个时间区间

    地址:http://www.daterangepicker.com/ demo地址:http://tamble.github.io/jquery-ui-daterangepicker/#event a ...

  4. 【Cocos2d-x 3.x】 调度器Scheduler类源码分析

    非个人的全部理解,部分摘自cocos官网教程,感谢cocos官网. 在<CCScheduler.h>头文件中,定义了关于调度器的五个类:Timer,TimerTargetSelector, ...

  5. HttpUtility.UrlDecode

    如果在 HTTP 流中传递如空格或者标点符号等字符,它们可能会错误地解释在接收端. URL 编码转换为字符实体等效项; 不允许在 URL 中的字符URL 解码反转的编码. 例如,在嵌入到要在 URL ...

  6. eclipse不能新建server

    将server删除了之后,再新建server选择tomcat的时候servername栏空着而且不能写东西,就添加不成功了,怎么办呢,问过度娘之后,问题迎刃而解,步骤如下 1.到[工程目录下 work ...

  7. 启用https协议的方法

    提醒:启用https协议会降低服务器性能,如非必要不必启用 一.用openssl生成密钥.证书: 1.生成RSA密钥的方法 openssl genrsa -out privkey.pem 2048 建 ...

  8. 记一次ifconfig命令

    由于Windows 10的强制更新,原来的Virtual box Host-Only驱动莫名奇妙的不见了,于是上网找各种解决方案: 1.重新生成虚拟网卡适配器:执行 VBoxManage.exe ho ...

  9. Android学习十二:自定义控件学习

    自定义控件: 1.定义控件的属性,atts.xml 2.代码实现自定义控件的控制 3.引用该控件 首先定义相关的属性 <?xml version="1.0" encoding ...

  10. C# WebApi 请求方式Post,返回Response

    1.[FromBody]属性只能用在一个参数上,当Body中有多个参数要定义类型.一个参数的时候 key="",value="123",key为空才能取到值. ...