git工具使用

1 git介绍

         它是一个分布式版本控制系统,一种记录一个或者若干文件内容变化,以便将来查阅特定版本修订情况的系统。工作原理:存储记录的是文件快照,而非文件差异,每次提交更新,git会对全部文件制作一个快照并保存这个快照的索引。

2 Git工作流程

  git外部,内部工作流程如下图所示。git分为四个区:分别为工作区(当前工作的目录),暂存区(执行git add 到达的区域),仓库区(执行git Clone文件存放的区域,概念比较抽象),和远程仓库。下图给出了在操作一些命令之后,所对应仓库之间的流程。一个工程至始至终在本地只有一份文件,在网络远程还有一份,也就是github的那份。

 

3 git的五种状态

1.未修改(origin)

2.已修改(modified):edited之后

3.已暂存(staged):执行 git add . 之后

4.已提交(committed): 执行 git commit 之后

5.已推送(pushed): 执行  git push 之后

4 git一般工作流程及对应的命令

1.克隆Git资源作为工作目录   :git  clone  <版本库的网址>

eg: git clone https://github.com/mouchengdeng/myProject

 2.在克隆的资源上添加或修改文件

 3.在提交前查看以及对比文件操作  git diff

 4.如果他人修改了,你可以更新资源 git pull

 5.提交修改 git commit –m  “modify”

 6.在修改完成后,如果发现错误,可以撤销修改并提交  git checkout .

 7.推送到远程仓库  git push

 

5 git常用命令及不同场景对应的命令

在git不同状态下,对应的命令是不同的,比如查看修改文件差异命令:1已修改,未暂存 git diff  2 以暂存,未提交 git diff  -- cached

5.1从远程仓库克隆 git clone –b <分支名><gitlab地址值><仓库名>

5.2 查看操作:git status <[some file ][some directory]> 查看当前文件状态或者目录下文件状态。

5.3 查看日志 git log  查看当前分支提交的日志,注意每次提交都包含了哪些信息

5.4 查看某个分支提交的日志: git log origin /<branchname>

5.5 查看所用分支信息  git  branch  -a

5.6 查看当前git仓库在服务器的存储链接  git  remote  show  origin

5.7 查看当前仓库存在的标签  git tag –ln

5.8 查看文件或者目录发生过哪些提交 git whatchanged  <some file / some dir>

5.9 查看某次提交修改了哪些内容  git show < commit –id >

5.10查看某些文件和目录下文件的区别 git diff <some file /some dir>

5.11 暂存修改的文件 git stash save

5.12 查看暂存修改的文件 git stash show  stash  

5.13查看当前git仓库在服务器的存储链接  git  remote  show  origin

5.14 设置修改仓库链接 git remote set –url  origin  <url>

         5.15 解除关联 git remote  remove origin

         5.16 增加仓库 git remote add origin <url>

5.17 不同状态下文件对比操作

         5.17.1 已修改,未暂存 git diff

         5.17.2 已暂存,未提交 git diff –cached (检查本地仓库与暂存区    之间的差异)

         git diff HEAD (检查版本仓库当前分支HEAD与本地工作区之间的差异)

         5.17.3 已提交,未推送 git diff master origin/master

 5.18 不同状态下文件对比操作

         5.18.1 本地未修改未提交的情况下

                   git fetch origin  更新代码到本地仓库

                   git rebase origin/<current branch > 与本地提交进行合并

                   git log 查看一下是否有合并代码的当前分支

         5.18.2 当本地有修改未提交的情况下

                   git stash save 暂存当前修改内容

                   git stash show 查看暂存内容

                   git fetch origin 获取服务器上游最新的提交到本地,但未做与当前分支的合并

                   git rebase origin/<current branch> 合并更新到本地的提交到当前分支

         5.18.3 如何合并出现的冲突

                   git status 查看哪些文件出现了冲突

                   vim <conflict file> 解决这些冲突文件

                   git add <  conflict file > 暂存这些冲突文件

                   git rebase –continue 继续完成合并操作

5.19 不同状态下的撤销操作

         5.19.1 已修改,未暂存 git checkout .

         5.19.2 已暂存,未提交 git reset

         5.19.3 已提交,未推送 git revert

         5.19.4 已推送 git revert <commit id>

         5.19.5 git push origin <branchname>

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值