【版本控制工具】 Git进阶1
一.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的更多相关文章
- 版本控制工具——Git常用操作(上)
本文由云+社区发表 作者:工程师小熊 摘要:用了很久的Git和svn,由于总是眼高手低,没能静下心来写这些程序员日常开发最常用的知识点.现在准备开一个专题,专门来总结一下版本控制工具,让我们从git开 ...
- 版本控制工具 - Git
版本控制工具 - Git 安装完成后,打开Git Bash,这是一个命令行工具,用于操作仓库和仓库的文件.你可以通过命令将已经存在的项目变成仓库,也可以重新创建一个新项目再通过命令将其变成仓库,还可以 ...
- 痞子衡嵌入式:备受开源社区推崇的分布式版本控制工具(Git)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是分布式版本控制工具Git. 1.为什么需要版本控制系统? 单人软件项目开发过程,往往很多功能都是逐步增加的,在代码开发过程中,有的时候功 ...
- 版本控制工具Git工具快速入门-Linux篇
版本控制工具Git工具快速入门-Linux篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.版本管理系统的介绍 1>.版本管理系统的特点 1.1>.自动生成备份: ...
- 版本控制工具Git工具快速入门-Windows篇
版本控制工具Git工具快速入门-Windows篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 最近在学习Golang语言,之前的开发环境在linux上开发的,后来由于办公用的是w ...
- 开源分布式版本控制工具 —— Git 之旅
Git 主张的分布式代码库与文件快照的设计思想,相对于传统 CVS.SVN 等集中式.文件差异式版本控制工具是一种挑战与颠覆.Git 带来了离线提交.轻量级分支等诸多便利.不过,也有人质疑 Git 的 ...
- 版本控制工具Git介绍-01
使用版本控制工具是为了方便团队开发,比如多人共同维护一个项目的时候,用版本控制工具可以很方便的维护项目代码,如果哪天你改了一个版本,出问题了,我们也可以很快的找到你改了什么,这里介绍使用比较多的版本控 ...
- window下版本控制工具Git 客户端安装
安装使用 1.下载msysgit http://code.google.com/p/msysgit/ 2.下载tortoisegit客户端安装 http://code.google.com/p/tor ...
- 版本控制工具git入门
版本控制工具的历史 不说了,放张图 两者的区别:集中式需要一个中心服务器放置最新的文件,需要联网操作.分布式可以再不联网的情况下操作,前提要拥有版本库 git安装 略 github注册 略 如何在g ...
- [git更新中]版本控制工具git初步使用
逐渐开始写规模稍大的程序, 如果在像以前一样每写完一次保存一个版本, 修改起来太蛋疼了, 而且还会忘记都有修改过哪里, 最终如果写完的话, 各种不方便, 于是便开始接触版本控制工具. 因为是在Linu ...
随机推荐
- [Java]算术表达式组建二叉树,再由二叉树得到算式的后序和中序表达式
Entry类: package com.hy; import java.io.BufferedReader; import java.io.IOException; import java.io.In ...
- C++中的各种容器实现原理
C++ 容器及选用总结 vector 拥有一段连续的内存空间 list 就是数据结构中的双向链表 deque 的动态数组首尾都开放 set 有序的容器,红黑树的平衡二叉检索树的数据结构 multise ...
- [idea]添加jar包的方法
一:在项目的根目录下建立lib文件夹,然后将对应的jar包文件拷贝进去. 二:点击项目右键,选择Open Module Settings 三.选择Project Settings->Librar ...
- liunx服务器在本地可以访问但是外网访问不了
版权声明:本文为CSDN博主「tlytg456」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.net/tlytg/ar ...
- 阶段3 3.SpringMVC·_06.异常处理及拦截器_7 SpringMVC拦截器之拦截器接口方法演示
返回值改成false 就是不放行 没有方形,控制台只有一个输出 转发到error页面 新建error.jsp页面 控制台只有拦截器的输出.controller根本就没有执行 把代码改回来 重写第二个方 ...
- Nginx 日志打印POST数据
在工作中,开发希望能从Nginx日志中获取POST的数据信息,先记录下来 在日志格式后面加上 $request_body 配置信息 log_format main '$remote_addr - $r ...
- Python深入学习之特殊方法与多范式
Python深入学习之特殊方法与多范式 Python一切皆对象,但同时,Python还是一个多范式语言(multi-paradigm),你不仅可以使用面向对象的方式来编写程序,还可以用面向过程的方式来 ...
- [iOS]UIWebView返回和NSURLErrorDomain-999
1.UIWebView实现返回不崩溃: -(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)r ...
- 非线性函数图像表示(GLSL)
说明:绘图区域x轴(0->1),y轴(0->1); 1.y = 0.5 + sqrt(x * (1 - x)) 2.y = smoothstep(a , b , x) y = smooth ...
- 'caching_sha2_password' cannot be loaded
Authentication plugin 'caching_sha2_password' cannot be loaded 下载新版(8+)mysql的时候,我使用的版本8.0.16,使用图形客户端 ...