Git在研发中常用的命令

介绍

Git是目前世界上最先进的分布式版本控制系统,由Linux创始人Linus在2005年开发,用于对抗商业版的版本控制工具BitKeeper,历史比较有意思,感兴趣的师傅们可以搜索了解一下。

分布式

首先要说明的是Git是一个分布式版本控制系统,重点在于分布式。也就是说我们从github上每clone下来一个项目,都是clone下一个完整的仓库,里面包含了远程仓库的所有信息。我们在clone的目录下会发现一个.git目录,这个目录就是本地仓库所在的位置,注意不要去修改这个目录,如果删除了这个目录,本地仓库及其相关信息都会消失。

工作区和版本库

这里的工作区指的是不包括.git目录的所有文件,你可以对工作区进行任意的修改,都不会影响到本地的仓库。
.git目录是本地仓库,也叫作版本库。版本库可以粗略的分为两个部分——暂存区和分支区,这两个区域是相互独立的。
我们使用“git add”命令把工作区的文件修改添加到暂存区,使用“git commit”命令把暂存区的文件修改提交到当前分支。如下面两幅图,暂存区译为stage。


git图

暂存区是Git非常重要的特性,需要仔细理解。
分支
每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。当只有一个分支时,这个分支叫主分支,即master分支。
一开始的时候,master分支是一条线,Git让master指向最新的提交,再用HEAD指向master,就能确定当前分支,以及当前分支的提交点。每次提交,master分支都会向前移动一步,这样,随着你不断提交,master分支的线也越来越长.

代码修改及提交命令

1
2
3
4
5
6
7
8
git status     					   // 查看当前代码修改的状态
git diff [文件名] // 查看文件修改
git add [文件名] // 将修改的文件添加到git暂存区
git add . // 将当前目录下所有修改文件都添加到暂存区
git add * // 同上
git rm [文件名] // 删除文件并添加到git暂存区
git commit –m “注释内容” // 将暂存区的文件修改,添加注释,修改详细信息
git push 服务器的提交路径 本地分支名 //提交本地修改到服务器代码库

历史提交信息查看、回退

1
2
3
4
5
6
7
8
git log 						//查看当前所有的commit的log信息
git show commit_id //查看commit_id的详细修改信息
git reset –soft commit_id //回退到某commit_id条log信息,但不会回退本地修改;若你修改代码已经git commit了,突然发现当前代码不是自己需要的,需要回退之前的样子,就可以执行git reset –soft commit_id命令来回退之前的commit提交。
git reset HEAD 文件名 //撤销当前文件添加到暂存区
git checkout 文件名 //撤销某文件的修改
git log --graph //查看自己的提交记录
git reflog //查看自己的操作历史
git blame [FILE_PATH] //查看文件的每一部分最后由谁改动

Patch制作,合入

1
2
3
git format-patch –s [commit-id]       //打patch命令,-s参数代表循环;这里不加-s就是打某一条的patch,有-s这个参数就可以打很多条了,就看是第几条的commit-id了。
git reset –hard commit-id //移动log信息指针
git am [patch_name] //合入某条patch的命令

分支

1
2
3
git branch 			 //查看所有的分支
git checkout 分支名 //创建一个新的分支
git checkout –b 分支名 //创建一个新的分支名并且切换到此分支上

Repo命令

1
2
3
repo status                    //查看所有git库的状态
repo diff //查看所有git库的修改
repo forall –c git branch 分支名 //将所有git库建立同一个分支名

×

纯属好玩

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

文章目录
  1. 1. 介绍
  2. 2. 代码修改及提交命令
  3. 3. 历史提交信息查看、回退
  4. 4. Patch制作,合入
  5. 5. 分支
  6. 6. Repo命令
,