git diff使用

【注:HEAD是指向当前版本的指针,HEAD^ 表示上个版本,HEAD^^ 表示上上个版本】

git diif 不带参数,默认比较 本地的区别相对于暂存区的区别, --- a/显示的是暂存区的, +++ b/ 表示当前工作文件

git diff a b 是以a为基准,把b和a的区别展现出来,即放在前面的是基准。

index 272de1f..d3b3676 100644 272de1f和d3b3676分别是文件的id, 100644 是文件的类型和权限
--- a/7.txt --- 表示存放在暂存区的旧文件
+++ b/7.txt +++表示存放在工作区的新文件

@@ -1 +1,2 @@ -表示旧文件, +表示新文件 -1表示旧文件开始的行号 +1 表示新文件开始的行号 2 表示连续的行数
/ 从上往下搜索, ? 从下往上搜索
vim 查看的内容超出屏幕时
z,j 向下翻看,, k向上翻看 b,整页上移, f整页下移 u半页上移, d半页下移
g 跳到第一行 G 跳到最后一行 :3g 调到第三行

git diff 快照id 比较 工作目录相对于快照id的不同, --- a/显示的最新提交的, +++ b/ 表示当前工作文件

git diff HEAD 比较当前工作目录相对于最新提交的快照的不同,--- a/ 显示的最新提交的, +++ b/ 表示当前工作文件

git diff commit_id1 commit_id2 比较commit_id1快照相对比于commit_id2的不同,+++ b/文件名 是commit_id1快照中的, --- a/文件名 是commit_id2快照中的


git diff --cached == git diff --cached HEAD 比较当前暂存区相对比于最新的提交的HEAD,+++ b/文件名 是当前暂存区快照中的, --- a/文件名 是快照中的


git diff --cached HEAD

git diff --cached HEAD

git diff --cached [快照id] 比较当前暂存区相对比于快照的不同,+++ b/文件名 是当前暂存区快照中的, --- a/文件名 是快照中的

终极奥义图

git log --stat

显示每个log的commit 标题,并且显示哪几个文件被修改了,各个文件增加和删除了多少行。

git commit --amend 修改最后一次的提交说明,进入vim编辑界面进行修改

git commit --amend -m '修改最后一次提交说明a' 直接修改


git checkout -- filename 放弃本地修改,(将加入暂存区的丢弃)

本地修改4.txt文件,加入不加入暂存区,丢弃掉暂存区,本地不变

当文件名和分支名重名时, git checkout 2.txt 默认是切换到分支,git checkout -- 2.txt 才是撤销本地修改, 不重名时按名字进入分支或者撤销文件修改

git rm 2.txt 本地删除2.txt,再git add 加入暂存区,git status是绿 色的, 要想恢复:1,先把暂存区的撤回到本地 git reset HEAD 2.txt; 2,把删除掉的恢复到本地 git checkout -- 2.txt


git checkout commit_id 4.txt 把commit_id快照中的4.txt文件拿到本地,并加入暂存区

git reset --soft HEAD^ 退回到上次提交的commit_id,上次的的状态为git add . 之后的绿色,

git rest HEAD^ == git rest --mixed HEAD^ ,退回上一个版本, 退回的状态是本地修改的,红色的

git rest -- hard HEAD^ 退回上一个版本, 退回的状态是本地未修改的,干净的

git rm 删除本地库的文件, 但是还是会留下痕迹, 再用git reset --soft HEAD~ 回到之前的版本,重新git commit, git

注意: git rm 删除本地库的文件,(如果本地文件修改了,) git rm 要加-f 才能成功删除,他会同时把暂存区和本地库中的都删除

git rm --cached test.py 只删除暂存区的,保留本地的

改名;

git mv 旧名 新名
git status
绿色显示 修改文件名名



git reset vs git revert 的区别参考:https://blog.csdn.net/yxlshk/article/details/79944535

posted @ 2021-12-19 00:16  ty1539  阅读(439)  评论(0编辑  收藏  举报