一.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. Docker安装ElasticSearch 版本7.1.1

    一.Docker 部署 ElasticSearch 1.从仓库中查找所有ElasticSearch的镜像 [root@iZwz99dhxbd6xwly17tb3bZ app]# docker sear ...

  2. 简易的美图秀秀利用别人的so库

    在实际开发中,有时候时间短,任务量大,可以查看类似的apk,将行apk反编译,通过看源码分析,用里面的JNI代码! 本案例中用了美图秀秀的JNI.java和jni.so链接库 项目中调用别人写的c代码 ...

  3. Android Stuido中断点调试和高级调试

    写一个简单的调试程序 import android.os.Bundle; import android.support.v7.app.AppCompatActivity; public class M ...

  4. __linux__、__POSIX__宏

    __linux__用于定义linux,__POSIX__不太了解,各系统的宏有如下: std::string getOsName() { #ifdef _WIN32 return "Wind ...

  5. INavigationAware接口示例

    INavigationAware接口 public interface INavigationAware {     bool IsNavigationTarget(NavigationContext ...

  6. (转)java8实现对象列表去重

    java8实现列表去重,java8的stream和lambda的使用实例 通过普通的方式也可以达到去重的效果,但是借助java8新特性可以很方便的实现列表去重,测试demo如下 实体类: public ...

  7. JMeter使用plugins插件进行服务器性能监控

    JMeter使用plugins插件进行服务器性能监控 性能测试时,我们的关注点有两部分 1 服务本身:并发响应时间 QPS 2 服务器的资源使用情况:cpu memory I/O disk等 JMet ...

  8. 添加额外yun源

    .yum install jq 发没有jq安装包,无法安装 .下载并安装EPEL [root@node2 coredns]# wget http://dl.fedoraproject.org/pub/ ...

  9. Visual Studio 展开和折叠代码快捷键

    每个cs文件代码太多,总数找不到方法.每次都是手动一个一个方法折叠手疼,赶紧搜索折叠展开快捷键. Ctrl + M + O: 折叠所有方法  Ctrl + M + M: 折叠或者展开当前方法  Ctr ...

  10. vue中refs的使用

    最近在看其他项目的过程中,发现在dom节点上使用了ref="xxx"的使用,以前一直不知道该属性起着什么作用,因为一直忙着写项目. 这两天项目不忙了,有闲心来看别人做的项目了,就看 ...