一.创建一个版本库
1.mkdir xxx
2.git init 使用git init命令将这个目录变成Git可以管理的仓库
这个版本仓库创建好了,xxx目录下有一个隐藏的.git目录(里面有暂存区(state/index)和分支管理库(master/dev..)),除了.git目录其它是工作区。

二.添加文件并提交
1.git add xxx 将这个文件添加到暂存区
2.git commit 将暂存区文件提交到本地仓库
-m "注释" 是本次提交的说明信息,用来注释本次操作

三.管理文件修改
1.差异比较:git diff -- xxx 可以查看工作区和版本库里面最新版本的区别
2.查看状态,提交修改: git status命令查看当前工作区的状态
3.日志查看: git log 可以查看历史每次提交信息
   --pretty=oneline看日志加这个参数可以精简许多
4.查看日志的时候,有一个HEAD->master 表明的是HEAD这个指针标记当前master分支的当前版本所在的位置。
5.版本回退:git reset --hard HEAD^ 表示回退到上一个版本
  git reset --hard HEAD {commit id} 通过git reflog找到对应的commit id来用这个回退对应版本
6.暂存区撤销修改:git reset HEAD <fiel> 来撤销缓存修改。意思是回退到当前版本及暂存区干净。
7.工作区撤销修改:git checkout -- <file> 来撤销当前文件的修改,即工作区的文件内容不变是干净的。
8.全局配置: git config --global
  别名配置: git config --global alias.别名 "真实名字"
  给复杂的git log --pretty=onelog取个别名git lg并且给添加一点颜色:
  git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
9.关联远程仓库:git remote add origin ssh://git@192.168.50.33:10022/zhanghuyi/hello-git.git
  第一次推送本地仓库到远程仓库的master分支:git push -u origin master
  第二次推送本地仓库到远程仓库的master分支:git push origin master
10.克隆远程仓库:就是把远程仓库的复制一份到本地,克隆后会创建一个新的本地仓库:git clone ssh://git@...git
11.再本地拉取最新的代码:git pull

四.分支的创建和合并
1.创建分支: git checkout -b 分支名 这样就创建好一个新的分支并HEAD切换到分支了。
  可以分解成(git branch 分支名)#创建分支 和 (git checkout 分支名) 切换到具体的分支
2.合并分支:git checkout master切换回master分支
  然后git merge dev命令将 dev分支的修改合并到master分支
3.删除分支:使用git branch -d 分支名来删除指定分支,注意:要删除一个未合并的分支。需要使用-D参数进行强制删除
4.冲突解决:git log --graph --pretty=oneline --abbrev-commit命令来查看解决冲突完的干净工作区了

五.保存工作区状态
1.git stash 快照当前的状态,现在去解决更紧急的bug,等下来开发这个dev.
2.然后切换到master去修复bug,修复完成后回到dev去
3.工作区是干净的,之前的修改哪去了查看: git stash list命令查看
4.工作现场还在,git把stash内存存在某个地方,但是需要恢复一下,有两个办法:(一般采用2)
  1) 方式1:用git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;
  2) 方式2:用git stash pop,恢复的同时把stash内容也删了:
  3) 注意,以上指令都可以在后面紧跟 stash的序号,来操作指定stash,例如: git stash apply stash@{0}

常用的一些git命令整合的更多相关文章

  1. 常用终端及git命令

    终端常用命令 1,打开终端,git version 查看版本 2,pwd 打印工作目录 3,ls(list简写)查看当前目录的所有文件 4,clear 清掉屏幕 5,cd (change direct ...

  2. 开发过程中常用到的git命令

    将git上项目下载到本地 1.将项目下载到本地 git clone (git项目地址) 2.进入项目文件夹中(cd 某文件夹) 切换到要使用的分支 git checkout develop 3.抓取远 ...

  3. Redis 常用数据结构及其控制命令整合

    Redis 键值支持5种基本结构,分别是字符串,列表,哈希,集合,有序集合.每一种数据结构都有对应的取值和设值命令,辅助命令,除此之外,还有一些全局命令,用来管理Redis存储的所有 键. 全局命令 ...

  4. 最简单、最常用的一些Git命令

    ---------------------------------------------------------------------------------------------------- ...

  5. 项目管理---git----快速使用git笔记(六)------本地开发与远程仓库的交互----常用git命令

    无论是我们自己把本地的项目新建了一个远程仓库 还是 从远程仓库获取到了 本地,现在我们都在本地有了一份项目代码,服务器上对应有项目代码的信息. 现在我们就开始进行交互操作了. 也就是说明一些在 正常开 ...

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

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

  7. 一些非常实用的git命令

    阅读目录 一.前言 二.git branch 和 git checkout 三.git clone 和 git remote 四.git pull 和 git push 五.git merge 和 g ...

  8. 常用Git命令清单。

    上期传送门:[清单]7个管理和优化网站资源的工具 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index / Stage:暂存区 Repository: ...

  9. 工作中常用的git命令

    一 常用Git命令 git clone:(区分SSH or HTTP) git init:初始化仓库 二 Git命令详解 Git Bash下,cd /c git clone,从远程Git版本库克隆一份 ...

随机推荐

  1. nginx官网版本说明

    nginx软件下载:http://nginx.org/en/download.html Mainline version:Nginx 正在主力开发的版本Stable version:最新稳定版,生产环 ...

  2. [Linux]LVM扩展卷

    LVM LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活 ...

  3. [jQuery]jQuery和DOM对象互换(四)

    DOM 和 jQuery 相互转换 DOM 转jQuery $(DOM对象) # (1)直接获取 $('video'); # (2)转换 $(DOM对象) var myVideo = document ...

  4. Properties(hashtable的子类)

    Properties: Properties是hashtable的子类(在java.util包中).该集合的特点:可以用于键值对形式的配置文件,且不允许Key重复,若有重复的,后者会覆盖前者. 也就是 ...

  5. js—数字那些事儿

    进制之间互相转化 a=133 十进制转成其他进制 a.toString(num) a.toString(2); //转化成二进制,返回"10000101" a.toString(8 ...

  6. android sdk manager 无法更新,解决连不上dl.google.com的问题

    感谢博主的帮助,入口在这:https://www.jianshu.com/p/8fb367a51b9f?utm_campaign=haruki&utm_content=note&utm ...

  7. 如何利用Azure DevOps快速实现自动化构建、测试、打包及部署

    前两天有朋友问我,微软的Azure好用吗,适不适合国人的使用习惯,我就跟他讲了下,Azue很好用,这也是为什么微软云营收一直涨涨涨的原因,基本可以再1个小时内实现自动化构建.打包以及部署到Azure服 ...

  8. MySQL快速回顾:数据库和表操作

    前提要述:参考书籍<MySQL必知必会> 利用空闲时间快速回顾一些数据库基础. 4.1 连接 在最初安装MySQL,可能会要求你输入一个管理登录(通常为root)和一个口令(密码). 连接 ...

  9. Integer使用==做判断遇到的问题

    问题: 最近使用Integer类型的数据做判断时,遇到了一个神奇的问题. 如: Integer a=223; Integer b=223; 这样使用==做判断,得到的结果是 false 原因: 后来查 ...

  10. 初识Mybatis和一些配置和练习

    什么是Mybatis: MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射. MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集. MyBat ...