一.Git常用命令

  Git中的很多命令与Linux相同(比如修改,查询,编辑,移动等),这里可以参考我之前的一篇文章https://www.cnblogs.com/ywb-articles/p/10535739.html

  其他一些命令例如:

    git branch  查看分支(后接一个名字就是创建一个分支),如果后接-d 可以删除分支

    git commit -amend -m  修改注释

    touch  创建文件

    git status  查看git的状态

    git rm --cached  退回上一步(一般是撤销add)

    git checkout -- 文件  撤销更改

    git checkout 分支名  切换分支

    git log  查看日志 (如果只需要查看最近3次的日志,可以后接 -3 )

    git log origin/master  查看远程项目日志(origin/master是追踪分支,可以看做为一个本地master与远程相关联的分支)

    git blame 文件  查看文件提交记录

    更多命令可以查看官方文档

二.Git的操作

  1.忽略文件

    如果需要忽略某些文件或文件夹,可以创建一个.gitignore文件(touch .gitignore),在文件中写入不需要提交的文件的名字即可(可以使用通配符*和非命令!)

  2.分支操作

    a.重命名分支git branch -m 之前的分支名  更新后的分支名

    b.如果两个分支不在同一点,一个分支中有修改,并add了,如果不commit,则无法切换分支(或者使用git stash保存现场后再切换)

    c.分支的删除是无法删除当前的分支的,只能切换到其他分支来删除

    d.如果删除某个分支时,该分支中有一些未合并的内容,会报错,如图所示

      

      解决方案:合并分支内容,然后再删除分支。(或者将-d改成-D,强制删除分支)

git merge 分支名 #合并分支内容

    e.分支合并冲突:

      如果多个分支在相同的地方做了修改,在合并的时候会发生冲突,一般手动修改解决分支冲突问题。

    f.版本穿梭

      例如回到上一个版本:

git reset --hard HEAD^  #如果想回退多个,则多加几个^

git reset --hard HEAD~1  #可以指定回退版本的次数

git reset --hard shal值  #可以跳到指定shal值的版本

      查看操作记录(可以看到所有操作记录,从而看到所有版本的shal值,结合git reset可以任意跳转版本,如果跳转到第一个版本,使用git log是看不到后面的版本信息,所以需要git reflog)

git reflog

    g.临时保存:

      一般一个功能或模块开发未完成是不应该commit的,那么可以使用stash保存现场

git stash save "保存的文件名字"

      如果需要恢复之前保存的内容,首先应找到stash文件:git stash list,再恢复现场

git stash pop  #默认找第一个,恢复后,stash会被删除。

git stash apply stash@{0} #恢复后指定现场,stash也不会删除。可以使用git stash drop来删除

      

三.Git图形工具

  Git常用的图形工具有GUI和gitk等(可以在网上找相应的教程,如:https://www.runoob.com/w3cnote/git-gui-window.html)

    GUI:git安装完毕后,鼠标右键除了Git Bash Here之外还有一个Git GUI Here,点击Git GUI Here即可打开GUI图形工具

    gitk:直接在Git Bash中输入gitk即可启动gitk图形工具

【版本控制工具】 Git进阶1的更多相关文章

  1. 版本控制工具——Git常用操作(上)

    本文由云+社区发表 作者:工程师小熊 摘要:用了很久的Git和svn,由于总是眼高手低,没能静下心来写这些程序员日常开发最常用的知识点.现在准备开一个专题,专门来总结一下版本控制工具,让我们从git开 ...

  2. 版本控制工具 - Git

    版本控制工具 - Git 安装完成后,打开Git Bash,这是一个命令行工具,用于操作仓库和仓库的文件.你可以通过命令将已经存在的项目变成仓库,也可以重新创建一个新项目再通过命令将其变成仓库,还可以 ...

  3. 痞子衡嵌入式:备受开源社区推崇的分布式版本控制工具(Git)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是分布式版本控制工具Git. 1.为什么需要版本控制系统? 单人软件项目开发过程,往往很多功能都是逐步增加的,在代码开发过程中,有的时候功 ...

  4. 版本控制工具Git工具快速入门-Linux篇

    版本控制工具Git工具快速入门-Linux篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.版本管理系统的介绍 1>.版本管理系统的特点 1.1>.自动生成备份: ...

  5. 版本控制工具Git工具快速入门-Windows篇

    版本控制工具Git工具快速入门-Windows篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 最近在学习Golang语言,之前的开发环境在linux上开发的,后来由于办公用的是w ...

  6. 开源分布式版本控制工具 —— Git 之旅

    Git 主张的分布式代码库与文件快照的设计思想,相对于传统 CVS.SVN 等集中式.文件差异式版本控制工具是一种挑战与颠覆.Git 带来了离线提交.轻量级分支等诸多便利.不过,也有人质疑 Git 的 ...

  7. 版本控制工具Git介绍-01

    使用版本控制工具是为了方便团队开发,比如多人共同维护一个项目的时候,用版本控制工具可以很方便的维护项目代码,如果哪天你改了一个版本,出问题了,我们也可以很快的找到你改了什么,这里介绍使用比较多的版本控 ...

  8. window下版本控制工具Git 客户端安装

    安装使用 1.下载msysgit http://code.google.com/p/msysgit/ 2.下载tortoisegit客户端安装 http://code.google.com/p/tor ...

  9. 版本控制工具git入门

    版本控制工具的历史 不说了,放张图 两者的区别:集中式需要一个中心服务器放置最新的文件,需要联网操作.分布式可以再不联网的情况下操作,前提要拥有版本库 git安装  略 github注册 略 如何在g ...

  10. [git更新中]版本控制工具git初步使用

    逐渐开始写规模稍大的程序, 如果在像以前一样每写完一次保存一个版本, 修改起来太蛋疼了, 而且还会忘记都有修改过哪里, 最终如果写完的话, 各种不方便, 于是便开始接触版本控制工具. 因为是在Linu ...

随机推荐

  1. Appium移动自动化测试(一)之环境配置

    移动自动化测试很多公司首选appuim, 要了解它的特点和优势请移步http://www.testclass.net/appium/appium-base-summary/ 要开始自动化测试, 好多人 ...

  2. ControlTemplate in WPF —— Calendar

    <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" x ...

  3. centos6密钥验证

    密钥验证: 公钥(服务器上)私钥(客户端)在远程登录软件上可生成SSH密钥对.在服务器上建目录.SSH 再在其中建文件authorized_keys,复制公钥到服务器上此文件中. (1)selinux ...

  4. VMWare虚拟机->锁定文件失败,打不开磁盘的解决办法

    VMWare虚拟机提示:锁定文件失败,打不开磁盘的解决办法   如果使用VMWare虚拟机的时候突然系统崩溃蓝屏,有一定几率会导致无法启动,会提示:“锁定文件失败,打不开磁盘...或它所依赖的某个快照 ...

  5. java:nginx(java代码操作ftp服务器)

    1.检查是否安装了vsftpd [root@linux01 ~]# rpm -qa|grep vsftpd 2.安装vsftpd [root@linux01 ~]# yum -y install vs ...

  6. 怎样将DataGrip连接到MS SQL Server?

    DataGrip支持几乎所有主流的关系数据库产品,如DB2.Derby.H2.MySQL.Oracle.PostgreSQL.SQL Server.Sqllite及Sybase等,并且提供了简单易用的 ...

  7. ASP.NET Core 入门笔记2,建立项目

    1.建立项目 2.项目结构 1.项目结构说明 根目录/文件 说明 .vscode目录 VS Code项目配置目录,相当于.vs..idea文件夹 bin目录 编译输出目录 obj目录 编译配置与中间目 ...

  8. 从 SPIR-V 到 ISPC:将 GPU 计算转化为 CPU 计算

    游戏行业越来越多地趋向于将计算工作转移到图形处理单元 (GPU) 中,导致引擎和/或工作室需要开发大量 GPU 计算着色器来处理不同的计算任务.但有时候在 CPU 上运行这些计算着色器非常方便,不必重 ...

  9. 为什么样本标准差要除以n-1?

    根据中心极限定理,我们可以用样本估计总体的平均值.那么,如果通过n个样本估计总体的标准差则需要除以n-1,这是为什么呢? 标准差是描述数据与平均值的偏离程度. 而因为样本的数据量比总体的数据量少,因此 ...

  10. Linux C\C++基础——数组形参的使用

    1.数组形参 ]) void fun(int a[]) void fun(int *a) ],int n) void fun(char*p[],int n) void fun(char**p,int ...