git 工具常见命令
1、git是什么
git是分布式版本管理工具,一台电脑既可以是客户端,也可以是服务端。工作过程中可以断开网络。
git中的三个概念:
1、版本库:在初始化git版本库之后会生成一个隐藏的文件, .git可以将该文件理解为git的版本库repository;
2、工作区:项目目录;
3、暂存区:.git目录中的index文件就是暂存区,同时,git还为我们自动生成一个master分支以及指向该分支的指针head在.git文件夹中。

git命令行使用
1.1 git init 创建版本库 (创建本地版本库)
1.2 git add filename 提交到版本库暂存区
1.3 git commit -m '注释' 将暂存区提交到版本库
1.4 git log 查看版本库提交历史(可以查询commit提交版本号)
1.5 git reset --hard HEAD^ 版本回退 首先,Git必须知道当前版本是哪个版本,在Git中,用`HEAD`表示当前版本,也就是最新的提交`1094adb...`(注意我的提交ID和你的肯定不一样),上一个版本就是`HEAD^`,上上一个版本就是`HEAD^^`,当然往上100个版本写100个`^`比较容易数不过来,所以写成`HEAD~100`。
1.6 git reset --hard <commit it> 版本回退, <commit it> 指定版本号
1.7 git reflog 查询命令历史
2 工作区和暂存区
2.1 每次修改,如果不用`git add`到暂存区,那就不会加入到`commit`中。
2.2 git status 查看工作区和暂存区的状态信息
2.3 git checkout -- file 工作区的撤销修改 (没有-- 就表示切换到分支了)
2.4 git reset HEAD <file>暂存区的修改撤销掉,重新放回工作区
2.5 git rm <file> 删除文件 然后commit提交
3 远程仓库
3.1 git remote add origin git@github.com:zjhlovewtr/test.git 版本仓库与本地仓库进行关联
3.2 git push -u origin master 把本地仓库内容推送到远仓仓库 由于远程库是空的,我们第一次推送`master`分支时,加上了`-u`参数,Git不但会把本地的`master`分支内容推送的远程新的`master`分支,还会把本地的`master`分支和远程的`master`分支关联起来,在以后的推送或者拉取时就可以简化命令。
3.3 git push origin master 修改后推送
3.4 git clone git@github.com:zjhlovewtr/test.git 从远程仓库克隆一个仓库到本地(不需要git init操作)
4 git 分支
git branch <branchName> 创建分支
git checkout <branchName>切换分支
git merge <branchName> 合并分支(branch name为目标分支)
git branch -d <branchNanme> 删除分支
git checkout -b <branchNanme>创建+切换分支
5 冲突解决
先文件修改
然后git add <fileName>
然后git commit -m '分支修改'
最后在合并
git merge --no-ff -m "merge with no-ff" dev 普通分支合并 请注意`--no-ff`参数,表示禁用`Fast forward`:
bug 分支
git stash 保留修改现场情况
git stash list 查询工作现场情况
`git stash apply`恢复,但是恢复后,stash内容并不删除,你需要用`git stash drop`来删除;
git stash pop 恢复的同时把stash内容也删了
6 标签管理
git tag v1.0 创建标签
git tag 查询所有标签
`git push origin <tagname>`可以推送一个本地标签;
`git push origin --tags`可以推送全部未推送过的本地标签;
`git tag -d <tagname>`可以删除一个本地标签;
`git push origin :refs/tags/<tagname>`可以删除一个远程标签。
git 工具常见命令的更多相关文章
- 【Git】Git工具常用命令
GitHub使用指南 一.把本地代码上传到GitHub 0. 提前配置好上传地址 [git config --global user.name "username"] [git c ...
- GIT非常见命令使用笔记
1:修改已经提交N次代码的user.name和user.email 解决我在多电脑间,使用不同账户,git config 的global,system,local配置忽略改动,而添加了多台电脑ssh ...
- 如何禁用/关闭vs2017自带的Git工具的?
对于用习惯了独立Git工具和命令行的人来说,看到Visual Studio自带的Git工具后,很是别扭,到处充满了不习惯,而且是不是还会出现电脑卡顿的现象(可能是我自身电脑配置一般的问题). 如何关闭 ...
- git中常见的几个命令
git中常见的几个命令 本地仓库 三个区域 工作目录 暂存区 本地仓库 文件的四个状态 未跟踪 untracked 已暂存 staged 已提交commited 已修改 modified 基本命令 g ...
- Git常见命令整理
Git常见命令整理 + 注释 git init # 初始化本地git仓库(创建新仓库) git config --global user.name "xxx" # 配置用户名 gi ...
- git笔记(2)-常见命令的使用(详解待续)
1. 常用命令 (1)git --help 帮助命令,其他的类似 (2)git branch 查看分支及其他(创建分支,查看远程分支名称等) (3)git checkout 切换分支以及其他 (3)g ...
- Git 分布式版本控制的常见命令
Git 的作用: (1)方便多人协同开发; (2)方便版本控制 Git 分布式版本控制的主要区域及命令图,下面会详细讲解: 创建项目并将切换至项目目录下 1. 创建本地仓库: git init ...
- Git复习(十一)之常见命令用法
创建版本库 git init 进入一个文件,执行该命令此时目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的,没事千万不要手动修改这个目录里面的文件,不然改乱了,就把Git仓库给破坏了. ...
- 工具系列 | git checkout 可替换命令 git switch 和 git restore
前言 git checkout 这个命令承担了太多职责,既被用来切换分支,又被用来恢复工作区文件,对用户造成了很大的认知负担. Git社区发布了Git的新版本2.23.在该版本中,有一个特性非常引人瞩 ...
随机推荐
- css+div上下左右自适应居中
主要记录自己日常积累的布局相关的东西,持续更新中. 1.登录框上下左右自适应居中 以前想要把登录表单始终放置在页面的中间,花了不少心思,一直以来用的解决方法都是用js,感觉有点麻烦不是很好,于是在网上 ...
- 利用python装饰器为字符串添加,HTML标签
# 为字符串添加HTML标签 import time def zhuang(fun): def zhaung_1(*args, **kargs): # time.sleep(1) html_str = ...
- .Net中C# DateTime类的ToString()方法的使用
Console.WriteLine("ToShortDateString:" + DateTime.Now.ToShortDateString()); Console.WriteL ...
- java的并发
问题: 过程: 正常流程:记录生成:状态=1-->北京:状态 = 3,4,-->定时任务:状态=5--->结束 异常流程:一条待处理的的记录生成以后,马上被定时任务处理,加载到内存, ...
- 详解C++11智能指针
前言 C++里面的四个智能指针: auto_ptr, unique_ptr,shared_ptr, weak_ptr 其中后三个是C++11支持,并且第一个已经被C++11弃用. C++11智能指针介 ...
- win10无法运行Vmware,怎么办
在win10上安装了Vmware12.15都无法运行,怎么办,找了一晚上 1.点击“检查更新”或去官网下载最新版本 Vmware15.5.0,或者百度云下载 链接:https://pan.baidu. ...
- 【做题笔记】P2871 [USACO07DEC]手链Charm Bracelet
就是 01 背包.大意:给您 \(T\) 个空间大小的限制,有 \(M\) 个物品,第 \(i\) 件物品的重量为 \(c_i\) ,价值为 \(w_i\) .要求挑选一些物品,使得总空间不超过 \( ...
- 如何创建redis集群
1.下载redis源码包 wget http://download.redis.io/releases/redis-3.2.4.tar.gz 2.解压并安装 tar xvf redis-.tar.gz ...
- Linux下制作和使用静态库和动态库
概述 Linux操作系统支持的函数库分为静态库和动态库,动态库又称共享库.linux系统有几个重要的目录存放相应的函数库,如/lib /usr/lib. 静态函数库: 这类库的名字一般是libxxx. ...
- 两台linux之间传输文件
scp传输 当两台LINUX主机之间要互传文件时可使用SCP命令来实现 scp传输速度较慢,但使用ssh通道保证了传输的安全性 复制文件 将本地文件拷贝到远程 scp local_file remot ...