注意:
本文章所写所有命令均在Git命令行窗口执行!非cmd窗口!
打开git命令行窗口步骤为:到项目根目录下执行bash命令行操作:右键点击Git Bash Here菜单,打开git命令窗口,不是cmd窗口!如果没有该菜单,请先下载并安装小乌龟:TortoiseGit-2.3.0.0-64bit.msi
git本地代码提交过程
增加索引(add) -> 提交(commit) -> 推送(push)
git status                           查看项目当前状态,列出所有文件的修改信息,以及远程同步信息,以及文件冲突信息。红色的为已修改文件但未增加索引,绿色的为已增加索引但未提交,提交之后git status命令会提示你有一个commit但尚未push(推送)
git add .                            增加索引add to index所有的已修改文件
git add pom.xml                 增加索引add to index指定名字的已修改文件
git add src/*                      增加索引add to index某路径下所有已修改文件
git rm --cached xxx.java     后悔药!!移除加入add to index的文件,防止误操作使某些不需要上传的文件也增加索引
git commit -m "注释"           提交时必须添加注释
git push                            推送之前所有commit提交上来的文件,不包括未提交文件,即不包括已执行add to index命令但未执行commit命令的文件,更加不会执行尚未add to index的文件。
更新代码
git branch                    查看当前项目所在分支
git pull                         默认在当前分支下执行更新命令,拉取远程代码到本地,到eclipse里面去把更新后的文件冲突解决下:在eclipse里面打开Git Staging视图,点击Unstaged Changes列表中的冲突文件逐一修改,修改完成后,在文件点击右键add index一下(添加索引,相当于git add命令),当文件显示在Staged Changes列表中则表示可以点击右边的按钮“commit and push”(提交并且推送)或者"commit"(只提交)了。
本地分支
git branch                            查看本地当前分支名字
git remote -v                        查看当前项目所处的远程分支名字并列出url地址
git branch -a                        查看所有分支名字
git pull origin master             从指定分支(master)拉取代码到当前分支(dev),查看其它分支名字使用命令git branch -r。举例:假设当前项目分支为master, 执行git branch -r 命令后得到两个分支名字分别叫master/dev和master/fixbug,那么执行git pull master dev或者git pull master fixbug 
git push -u origin dev 提交到指定分支上(dev)。举例:假设当前项目分支为master,执行git branch -r 命令后得到分支名字叫master/dev,那么执行git push -u master dev.
git reset --hard                    后悔药!!强制还原到上次提交时代码,干掉本地所有修改,所有!如果你刚刚执行了一次git pull的操作,却发现TM有大量的!文件发生冲突,可以执行这个命令,使代码还原到上一次执行git pull 命令之前!而且!此命令会强制恢复到上次提交代码时状态,不论你后来执行了多少次pull拉取代码的操作以及任何git add to index或者git commit的操作,很神奇吧,很好用,因为有时候改着改着,你都不知道代码改成什么样了,而且又忘记了本地备份。而且,代码还原的那个状态是最干净的状态,没有任何冲突!没有任何修改!
远程分支
git brach -r                                     列出已经存在的远程分支
git fetch                                          更新本地.git文件夹。在远程有新分支的情况下,如果没有列出所有已存在的远程分支,先使用fetch命令使本地.git文件夹更新。如果fetch后使用git branch -r还是不能罗列出所有远程分支,那么删掉本地项目,送git上重新拉取一边全新的项目,再使用fetch命令更新.git文件夹,此时使用git branch -r即可以看到所有远程分支
git remote                                       查看当前所处的远程分支名字
git remote -v                                   查看当前项目所处的远程分支名字并列出url地址
git remote add origin git://xxxx.git    设置远程分支属性,如果一个项目尚未连接远程。origin是分支名字,后面跟git地址
用户名密码
设置
git config --global user.name "wirelessqa"                        设置用户名
git config --global user.email "wirelessqa.me@gmail.com"   设置密码
查看
git config --global user.name       查看当前用户名
git config --global user.email       查看当前用户密码
 
PS:用了一段时间git之后,发现确实比SVN好用,git的正确使用方式是每个人都开一个分支,留下主分支master不要作为开发分支,只做合并就对了!

git命令实战之血泪记录的更多相关文章

  1. Git 命令实战入门 ,奶妈级教程

    我不会用*官方*的语言告诉你Git 是什么,对此我表示深深得歉意--在我看来像CSDN.博客园.掘金等博客交流平台就是小的“GitHub”,只不过在这里更多的是一些零零散散的笔记或者文章,其实Gihu ...

  2. git第九节---git命令实战

    1. git 项目创建 mkdir git-command 2.git 配置 git config --list 配置用户名 邮箱 git config user.name 'XXX'  --loca ...

  3. GIT命令总结,so easy

    一:GIT命令实战(码云) https://oschina.gitee.io/learn-git-branching/ 提交 git commit 创建分支 git branch <name&g ...

  4. Git学习笔记01--常用Git命令、cmd命令及Git总结性知识

    资源:外国网友制作的 Git Cheat Sheet 第二次学习廖雪峰老师的Git教程,学习过程中把教程中涉及到的Git命令及总结性知识记录下来方便二次复习. 知识点 所有的版本控制系统,其实只能跟踪 ...

  5. 我所记录的git命令(非常实用)

    一.前言 记录一下工作中常用到的git命令,只是简单的笔记,欢迎大家交流... [ 顺便问下园友们,怎么感觉博客园发布的博客搜索有时都搜不到,后台编辑能填的都填写了,还是觉得搜索排名不高? 相同的标题 ...

  6. Git命令行(转用于学习和记录)

    Git命令行介绍和使用说明(持续更新) 参见:<Git 中文简体教程> 一. 命令“git”或者“git help”查询常用命令 [add]: “git add”——不但是用来添加不在版本 ...

  7. 使用方便git命令检查记录的版本号

    现在开始git大多数用户都经历过subversion,对于这两种开关的版本控制系统需要一段时间去适应.本文旨在帮助恢复一些,这些用户都熟悉的日志记录买家的习惯. 我们要熟悉一个详细的例子git中log ...

  8. 记录常用的git命令

    之前的公司都是用svn的,现在的公司用git了,所以现在记录一下所用到的git命令,方便以后查看! git 常用命令 git add git add 命令可将该文件添加到缓存 git add . // ...

  9. git 命令行下浏览器tig使用记录

    git 命令行下浏览器tig使用记录 tig 是一款优化 git 命令行的工具,使 git 命令行更加的便捷人性化 .如果用习惯了,会上瘾. 以下是一些使用记录: 安装成功后,在 Repo 文件夹下, ...

随机推荐

  1. Java 之final,static小结

    一.final 1.final变量: 当你在类中定义变量时,在其前面加上final关键字,那便是说,这个变量一旦被初始化便不可改变,这里不可改变的意思对基本类型来说是其值不可变,而对于对象变量来说其引 ...

  2. iOS开发——实时监控网速(仅作参考,发现一点问题)

    开发中用到获取网速的地方,应该就两种: 1.下载速度,这种可以直接在接受数据的地方统计计算.这个就不讲了. 2.获取手机网卡的数据,可以监控网卡的进出流量,下面就是. #import "Vi ...

  3. stm32使用LWIP实现DHCP客户端

    LWIP是一款开源的嵌入式网络协议栈,支持的功能很多,而且能在多任务环境下和单任务裸机环境下跑,今天说说他的移植过程,芯片为STM32,网卡为ENC28J60,无操作系统 首先下载LWIP的源代码,我 ...

  4. MapReduce 简单的全文搜索2

    上一个全文搜索实现了模糊查找,这个主要实现了精确查找,就是比如你查找mapreduce is simple那么他就只查找有这个句子的文章,而不是查找有这三个单词的文章. 这个版本需要重写反向索引,因为 ...

  5. ServerSocketChannel

    Java NIO 中的 ServerSocketChannel 是一个可以监听新进来的 TCP 连接的通道, 就像标准 IO 中的 ServerSocket 一样.ServerSocketChanne ...

  6. 我推荐的一些iOS开发书单

    文/叶孤城___(简书作者)原文链接:http://www.jianshu.com/p/2fa080673842著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 上次发了一下比较不错的i ...

  7. cocos2d动作讲解

    从本章开始,我们开始讲解cocos2d-x库的动作(Action).游戏的世界是一个动态的世界:无论是主角精灵还是NPC精灵都处于不断的运动当中,甚至是背景中漂流的树叶,随风而动的小草.这些明显的或者 ...

  8. Servlet_ResponseHeader

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletExcepti ...

  9. js执行js字符串函数的方法

    <script> var jsText = 'return function(){alert(1+1)}' var jscode = new Function(jsText)(); jsc ...

  10. 3)Java学习笔记:内部类

    什么是内部类 内部类是指在一个外部类的内部再定义一个类.内部类作为外部类的一个成员,并且依附于外部类而存在的.内部类可为静态,可用protected和private修饰(而外部类只能使用public和 ...