一.创建一个版本库
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. Java压缩包(zip)【学习笔记】

    前言 Java实现Zip压缩解压可以使用JDK的原生类java.util.zip,但是JDK 7 之前存在中文文件名乱码问题. 使用 ant.jar 的org.apache.tools.zip包,可以 ...

  2. 杭电-------2046骨牌铺方格(C语言写)

    #include<stdio.h> ] = { }; long long recrusion(int n) { || a[n]>) { return a[n]; } ) + recr ...

  3. 【HDU - 1069】 Monkey and Banana (基础dp)

    Monkey and Banana 直接写中文了 Problem Statement 一组研究人员正在设计一项实验,以测试猴子的智商.他们将挂香蕉在建筑物的屋顶,同时,提供一些砖块给这些猴子.如果猴子 ...

  4. sublime3 快捷键总结

    配置环境:win7 sublime3 1,快速html5模板页(已安装Emmet插件) 输入html:5后,然后 ctrl+e 2,快速复制 ctrl+shift+d 复制光标所在当前行 3,向上/向 ...

  5. asp.net core 3.1 入口:Program.cs中的Main函数

    本文分析Program.cs 中Main()函数中代码的运行顺序分析asp.net core程序的启动,重点不是剖析源码,而是理清程序开始时执行的顺序.到底用了哪些实例,哪些法方. asp.net c ...

  6. vue目录结构熟悉

    给项目的入口文件做点小改变: [补充:编辑器建议使用vscode,我还没装,暂时先用phpstorm] 打开 APP.vue 文件,代码如下(解释在注释中) <!-- 展示模板 --> & ...

  7. bitmap+文本生成新的bitmap的实现

    注:参数content为生成二维码bitmap的内容,该二维码bitmap在和文本title组合生成一个新的bitmap package info.ecloud.merchant.util; impo ...

  8. Android Studio 快捷方式记录

  9. linux环境安装mysql

    安装虚拟机:  RedHat+CentOS 我说略会不会被打,哈哈,这个虚拟机的安装之后我再补上吧~~ 首先查看已经安装的mysql相关的包 rpm -qa | grep mysql 执行之后会出现以 ...

  10. linux之定时任务调度

    crond:任务调度 任务调度:是指系统在某个时间执行特定的程序或命令 任务调度分类: (1)系统工作,有些重要的工作必须周而复始地进行,如病毒扫描等 (2)个别用户工作:个别用户可能希望执行某些程序 ...