{"id":338,"date":"2025-10-05T21:12:22","date_gmt":"2025-10-05T13:12:22","guid":{"rendered":"https:\/\/www.xxiaoteng.cn\/?p=338"},"modified":"2026-05-11T21:26:10","modified_gmt":"2026-05-11T13:26:10","slug":"git%e5%b8%b8%e7%94%a8%e5%91%bd%e4%bb%a4","status":"publish","type":"post","link":"https:\/\/www.xxiaoteng.cn\/?p=338","title":{"rendered":"git\u5e38\u7528\u547d\u4ee4"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"toc-0\">git status\/git status -s<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u67e5\u770b\u72b6\u6001<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">[root@wing git_data]# git status<br>\u4f4d\u4e8e\u5206\u652f master<br>\u5c1a\u65e0\u63d0\u4ea4<br>\u65e0\u6587\u4ef6\u8981\u63d0\u4ea4\uff08\u521b\u5efa\/\u62f7\u8d1d\u6587\u4ef6\u5e76\u4f7f\u7528 \"git add\" \u5efa\u7acb\u8ddf\u8e2a\uff09<br>[root@wing git_data]# touch a b c<br>[root@wing git_data]# ls<br>a  b  c<br>[root@wing git_data]# git status <br>\u4f4d\u4e8e\u5206\u652f master<br>\u5c1a\u65e0\u63d0\u4ea4<br>\u672a\u8ddf\u8e2a\u7684\u6587\u4ef6:<br>  \uff08\u4f7f\u7528 \"git add &lt;\u6587\u4ef6&gt;...\" \u4ee5\u5305\u542b\u8981\u63d0\u4ea4\u7684\u5185\u5bb9\uff09<br>    a<br>    b<br>    c<br>\u63d0\u4ea4\u4e3a\u7a7a\uff0c\u4f46\u662f\u5b58\u5728\u5c1a\u672a\u8ddf\u8e2a\u7684\u6587\u4ef6\uff08\u4f7f\u7528 \"git add\" \u5efa\u7acb\u8ddf\u8e2a\uff09 <\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"toc-1\">git add<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u6682\u5b58\u5185\u5bb9<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">[root@wing git_data]# git add a<br>[root@wing git_data]# git status <br>\u4f4d\u4e8e\u5206\u652f master<br>\u5c1a\u65e0\u63d0\u4ea4<br>\u8981\u63d0\u4ea4\u7684\u53d8\u66f4\uff1a<br>  \uff08\u4f7f\u7528 \"git rm --cached &lt;\u6587\u4ef6&gt;...\" \u4ee5\u53d6\u6d88\u6682\u5b58\uff09<br>    \u65b0\u6587\u4ef6\uff1a &nbsp; a<br>\u672a\u8ddf\u8e2a\u7684\u6587\u4ef6:<br>  \uff08\u4f7f\u7528 \"git add &lt;\u6587\u4ef6&gt;...\" \u4ee5\u5305\u542b\u8981\u63d0\u4ea4\u7684\u5185\u5bb9\uff09<br>    b<br>    c<br>[root@wing git_data]# ll .git\/<br>\u603b\u7528\u91cf 16<br>drwxr-xr-x 2 root root &nbsp; 6 4\u6708 &nbsp; 3 05:34 branches<br>-rw-r--r-- 1 root root  92 4\u6708 &nbsp; 3 05:34 config<br>-rw-r--r-- 1 root root  73 4\u6708 &nbsp; 3 05:34 description<br>-rw-r--r-- 1 root root  23 4\u6708 &nbsp; 3 05:34 HEAD<br>drwxr-xr-x 2 root root 301 4\u6708 &nbsp; 3 05:34 hooks<br>-rw-r--r-- 1 root root  96 4\u6708 &nbsp; 5 06:05 index<br>#\u4f60\u4f1a\u53d1\u73b0index\u7684\u65f6\u95f4\u4ea7\u751f\u4e86\u53d8\u5316\uff0c\u8fd9\u610f\u5473\u7740\uff0c\u6211\u4eec\u4f7f\u7528git add\u547d\u4ee4\u5c06\u6587\u4ef6\u63d0\u4ea4\u5230\u4e86\u6682\u5b58\u533a\u57df<br>drwxr-xr-x 2 root root  21 4\u6708 &nbsp; 3 05:34 info<br>drwxr-xr-x 5 root root  40 4\u6708 &nbsp; 5 06:05 objects<br>drwxr-xr-x 4 root root  31 4\u6708 &nbsp; 3 05:34 refs<br>[root@wing git_data]# ll .git\/objects\/<br>\u603b\u7528\u91cf 0<br>drwxr-xr-x 2 root root 52 4\u6708 &nbsp; 5 06:05 e6<br>drwxr-xr-x 2 root root  6 4\u6708 &nbsp; 3 05:34 info<br>drwxr-xr-x 2 root root  6 4\u6708 &nbsp; 3 05:34 pack<br>[root@wing objects]# ls e6<br>9de29bb2d1d6434b8b29ae775ad8c2e48c5391<br>[root@wing objects]# cat e6\/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 <br>#\u5728objects\u76ee\u5f55\u4e2d\u53ef\u4ee5\u770b\u5230\u5df2\u5143\u6570\u636e\u5f62\u5f0f\u5b58\u50a8\u7684a\u6587\u4ef6\uff0c\u8fd9\u4e2a\u6211\u4eec\u770b\u4e0d\u61c2\uff0c\u6211\u4eec\u53ef\u4ee5\u5c06\u6570\u636e\u90fd\u6dfb\u52a0<br> <br>\u200b<br>[root@wing git_data]# git add .  #\u53ef\u4ee5\u4f7f\u7528.\u4e5f\u53ef\u4ee5\u4f7f\u7528*<br>[root@wing git_data]# git status<br>\u4f4d\u4e8e\u5206\u652f master<br>\u5c1a\u65e0\u63d0\u4ea4<br>\u8981\u63d0\u4ea4\u7684\u53d8\u66f4\uff1a<br>  \uff08\u4f7f\u7528 \"git rm --cached &lt;\u6587\u4ef6&gt;...\" \u4ee5\u53d6\u6d88\u6682\u5b58\uff09<br>    \u65b0\u6587\u4ef6\uff1a &nbsp; a<br>    \u65b0\u6587\u4ef6\uff1a &nbsp; b<br>    \u65b0\u6587\u4ef6\uff1a &nbsp; c<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"toc-2\">git rm<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u5c06\u6587\u4ef6\u4ece\u6682\u5b58\u533a\u64a4\u56de\u5230\u5de5\u4f5c\u533a\uff08\u53d8\u6210\u672a\u8ddf\u8e2a\u7684\uff09\u3001\u7136\u540e\u518d\u5220\u9664\u6587\u4ef6\uff1b\u4e5f\u53ef\u4ee5\u76f4\u63a5\u4ece\u6682\u5b58\u533a\u5220\u9664<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">[root@wing git_data]# git rm --cached c<br>rm 'c'<br>[root@wing git_data]# git status <br>\u4f4d\u4e8e\u5206\u652f master<br>\u5c1a\u65e0\u63d0\u4ea4<br>\u8981\u63d0\u4ea4\u7684\u53d8\u66f4\uff1a<br>  \uff08\u4f7f\u7528 \"git rm --cached &lt;\u6587\u4ef6&gt;...\" \u4ee5\u53d6\u6d88\u6682\u5b58\uff09<br>    \u65b0\u6587\u4ef6\uff1a &nbsp; a<br>    \u65b0\u6587\u4ef6\uff1a &nbsp; b<br>\u672a\u8ddf\u8e2a\u7684\u6587\u4ef6:<br>  \uff08\u4f7f\u7528 \"git add &lt;\u6587\u4ef6&gt;...\" \u4ee5\u5305\u542b\u8981\u63d0\u4ea4\u7684\u5185\u5bb9\uff09<br>    c<br>[root@wing git_data]# rm -fr c<br>[root@wing git_data]# git status <br>\u4f4d\u4e8e\u5206\u652f master<br>\u5c1a\u65e0\u63d0\u4ea4<br>\u8981\u63d0\u4ea4\u7684\u53d8\u66f4\uff1a<br>  \uff08\u4f7f\u7528 \"git rm --cached &lt;\u6587\u4ef6&gt;...\" \u4ee5\u53d6\u6d88\u6682\u5b58\uff09<br>    \u65b0\u6587\u4ef6\uff1a &nbsp; a<br>    \u65b0\u6587\u4ef6\uff1a &nbsp; b<br>[root@wing git_data]# git rm -f b<br>rm 'b'<br>[root@wing git_data]# git status <br>\u4f4d\u4e8e\u5206\u652f master<br>\u5c1a\u65e0\u63d0\u4ea4<br>\u8981\u63d0\u4ea4\u7684\u53d8\u66f4\uff1a<br>  \uff08\u4f7f\u7528 \"git rm --cached &lt;\u6587\u4ef6&gt;...\" \u4ee5\u53d6\u6d88\u6682\u5b58\uff09<br>    \u65b0\u6587\u4ef6\uff1a &nbsp; a<br>[root@wing git_data]# git commit -m \" new a\"    #\u63d0\u4ea4\u5230\u672c\u5730\u4ed3\u5e93<br>[master\uff08\u6839\u63d0\u4ea4\uff09 6ac34be] a<br> 1 file changed, 0 insertions(+), 0 deletions(-)<br> create mode 100644 a<br>[root@wing git_data]# git status<br>\u4f4d\u4e8e\u5206\u652f master<br>\u65e0\u6587\u4ef6\u8981\u63d0\u4ea4\uff0c\u5e72\u51c0\u7684\u5de5\u4f5c\u533a<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"toc-3\">git mv<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u5c06\u6682\u5b58\u533a\u91cc\u7684\u6570\u636e\u6539\u540d\u6216\u79fb\u52a8<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">1.\u4f7f\u7528mv\u547d\u4ee4\u914d\u5408git<br>[root@wing git_data]# mv a a.txt<br>[root@wing git_data]# git status<br>\u4f4d\u4e8e\u5206\u652f master<br>\u5c1a\u672a\u6682\u5b58\u4ee5\u5907\u63d0\u4ea4\u7684\u53d8\u66f4\uff1a<br>  \uff08\u4f7f\u7528 \"git add\/rm &lt;\u6587\u4ef6&gt;...\" \u66f4\u65b0\u8981\u63d0\u4ea4\u7684\u5185\u5bb9\uff09<br>  \uff08\u4f7f\u7528 \"git checkout -- &lt;\u6587\u4ef6&gt;...\" \u4e22\u5f03\u5de5\u4f5c\u533a\u7684\u6539\u52a8\uff09<br>\u200b<br>    \u5220\u9664\uff1a &nbsp; &nbsp; a<br>\u200b<br>\u672a\u8ddf\u8e2a\u7684\u6587\u4ef6:<br>  \uff08\u4f7f\u7528 \"git add &lt;\u6587\u4ef6&gt;...\" \u4ee5\u5305\u542b\u8981\u63d0\u4ea4\u7684\u5185\u5bb9\uff09<br>\u200b<br>    a.txt<br>\u200b<br>\u4fee\u6539\u5c1a\u672a\u52a0\u5165\u63d0\u4ea4\uff08\u4f7f\u7528 \"git add\" \u548c\/\u6216 \"git commit -a\"\uff09<br>[root@wing git_data]# git rm --cached a ###\u4ece\u6682\u5b58\u533a\u5220\u9664a<br>rm 'a'<br>[root@wing git_data]# git status <br>\u4f4d\u4e8e\u5206\u652f master<br>\u8981\u63d0\u4ea4\u7684\u53d8\u66f4\uff1a<br>  \uff08\u4f7f\u7528 \"git reset HEAD &lt;\u6587\u4ef6&gt;...\" \u4ee5\u53d6\u6d88\u6682\u5b58\uff09<br>\u200b<br>    \u5220\u9664\uff1a &nbsp; &nbsp; a<br>\u200b<br>\u672a\u8ddf\u8e2a\u7684\u6587\u4ef6:<br>  \uff08\u4f7f\u7528 \"git add &lt;\u6587\u4ef6&gt;...\" \u4ee5\u5305\u542b\u8981\u63d0\u4ea4\u7684\u5185\u5bb9\uff09<br>\u200b<br>    a.txt<br>\u200b<br>[root@wing git_data]# git add a.txt<br>[root@wing git_data]# git status<br>\u4f4d\u4e8e\u5206\u652f master<br>\u8981\u63d0\u4ea4\u7684\u53d8\u66f4\uff1a<br>  \uff08\u4f7f\u7528 \"git reset HEAD &lt;\u6587\u4ef6&gt;...\" \u4ee5\u53d6\u6d88\u6682\u5b58\uff09<br>\u200b<br>    \u91cd\u547d\u540d\uff1a &nbsp; a -&gt; a.txt   ########\u8bc6\u522b\u5230a\u548ca.txt\u662f\u91cd\u547d\u540d\u7684\u6587\u4ef6<br>[root@wing git_data]# git commit -m \"rename a to a.txt\"<br>#\u63d0\u4ea4\u5230\u672c\u5730\u4ed3\u5e93<br>[master 47a267c] a.txt<br> 1 file changed, 0 insertions(+), 0 deletions(-)<br> rename a =&gt; a.txt (100%)<br>\u200b<br>\u200b<br>2.\u4f7f\u7528git mv\u76f4\u63a5\u91cd\u547d\u540d<br>[root@wing git_data]# git mv a.txt a    #\u5c06\u5de5\u4f5c\u533a\u57df\u548c\u6682\u5b58\u533a\u57df\u7684\u6587\u4ef6\u540c\u65f6\u91cd\u547d\u540d<br>[root@wing git_data]# git status<br>\u4f4d\u4e8e\u5206\u652f master<br>\u8981\u63d0\u4ea4\u7684\u53d8\u66f4\uff1a<br>  \uff08\u4f7f\u7528 \"git reset HEAD &lt;\u6587\u4ef6&gt;...\" \u4ee5\u53d6\u6d88\u6682\u5b58\uff09<br>\u200b<br>    \u91cd\u547d\u540d\uff1a &nbsp; a.txt -&gt; a<br>\u200b<br>[root@wing git_data]# git commit -m \"rename a.txt to a\"<br>[master a714e37] a<br> 1 file changed, 0 insertions(+), 0 deletions(-)<br> rename a.txt =&gt; a (100%)<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"toc-4\">git diff<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">git status \u53ea\u80fd\u67e5\u770b\u533a\u57df\u72b6\u6001\u7684\u4e0d\u540c \uff0c\u4e0d\u80fd\u67e5\u770b\u6587\u4ef6\u5185\u5bb9\u7684\u53d8\u5316\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">git diff \u67e5\u770b\u5185\u5bb9\u7684\u4e0d\u540c<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">[root@wing git_data]# git diff #\u6ca1\u6709\u53d8\u5316\u65f6\u4e0d\u663e\u793a\u5185\u5bb9<br>[root@wing git_data]# vim a<br>hello<br>abc<br>[root@wing git_data]# git add a<br>[root@wing git_data]# vim a<br>hello<br>test<br>test1<br>[root@wing git_data]# git diff a    #\u8c03\u6574\u5b8c\u6210\u6587\u4ef6\u540e\uff0c\u5bf9\u6bd4\u672c\u5730\u5de5\u4f5c\u76ee\u5f55\u548c\u6682\u5b58\u533a\u6587\u4ef6\u7684\u5dee\u5f02<br>diff --git a\/a b\/a<br>#git\u683c\u5f0f\u7684diff\u547d\u4ee4\uff0c\u8fdb\u884c\u6bd4\u8f83\u7684\u662fa\u7248\u672c\u7684a\u6587\u4ef6\u548cb\u7248\u672c\u7684a\u6587\u4ef6<br>index e69de29..ce01362 100644<br>#\u4e24\u4e2a\u7248\u672c\u7684\u54c8\u5e0c\u503c\uff0c100644\u8868\u793a\u662f\u5bf9\u8c61\u662f\u666e\u901a\u6587\u4ef6\uff0c\u6743\u9650\u662f644<br>--- a\/a         #---\u8868\u793a\u53d8\u52a8\u524d\uff0c\u4e5f\u5c31\u662fa\u7248\u672c\u7684a\u6587\u4ef6<br>+++ b\/a         #+++\u8868\u793a\u53d8\u52a8\u540e\uff0c\u4e5f\u5c31\u662fb\u7248\u672c\u7684a\u6587\u4ef6<br>@@ -1,2 +1,3 @@ ## \u4ee5@\u7b26\u53f7\u5f00\u59cb\u548c\u7ed3\u675f\u201c-1\uff0c2\u201d\u8868\u793a\u524d\u4e00\u4e2a\u6587\u4ef6\u4ece\u7b2c\u4e00\u884c\u5f00\u59cb\u7684\u8fde\u7eed\u4e24\u884c\uff1b\u201c+1\uff0c3\u201d\u8868\u793a\u540e\u4e00\u4e2a\u6587\u4ef6\u7684\u4ece\u7b2c\u4e00\u884c\u5f00\u59cb\u8fde\u7eed\u76843\u884c\uff08-\u8868\u793a\u524d\u4e00\u4e2a\u6587\u4ef6\uff0c+\u8868\u793a\u540e\u4e00\u4e2a\u6587\u4ef6\uff09<br>hello           <br>-abc            #-\u8868\u793a\u53bb\u6389\u7684\u5185\u5bb9<br>+test<br>+test1      #+\u8868\u793a\u65b0\u589e\u7684\u5185\u5bb9<br>\u200b<br>[root@wing git_data]# git diff --cached a   #\u5bf9\u6bd4\u6682\u5b58\u533a\u548c\u672c\u5730\u4ed3\u5e93\u7684\u5dee\u5f02<br>diff --git a\/a b\/a<br>index e69de29..0e3af97 100644<br>--- a\/a<br>+++ b\/a<br>@@ -0,0 +1,2 @@<br>+hello<br>+abc<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"toc-5\">git commit -m<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u5c06\u6682\u5b58\u533a\u5185\u5bb9\u63d0\u4ea4\u5230\u672c\u5730\u4ed3\u5e93-m\u540e\u9762\u662f\u63cf\u8ff0\u4fe1\u606f<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">[root@wing git_data]# git commit -m \"version2 a\"<br>[master 8f01c62] version2 a<br> 1 file changed, 2 insertions(+)<br>[root@wing git_data]# git diff --cached a<br>git commit # \u76f8\u5f53\u4e8e\u865a\u62df\u673a\u7684\u955c\u50cf\u3001\u4efb\u4f55\u64cd\u4f5c\u90fd\u88ab\u505a\u4e86\u4e00\u6b21\u5feb\u7167 \uff0c\u53ef\u6062\u590d\u5230\u4efb\u610f\u4e00\u4e2a\u4f4d\u7f6e<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"toc-6\">git commit -am<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u5feb\u901f\u63d0\u4ea4\u5230\u672c\u5730\u4ed3\u5e93<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">[root@wing git_data]# cat a<br>haha<br>[root@wing git_data]# git diff<br>[root@wing git_data]# echo hello &gt;&gt; a<br>[root@wing git_data]# git diff<br>diff --git a\/a b\/a<br>index 5ad28e2..5c06d49 100644<br>--- a\/a<br>+++ b\/a<br>@@ -1 +1,2 @@<br> haha<br>+hello<br>[root@wing git_data]# git status <br>\u4f4d\u4e8e\u5206\u652f master<br>\u5c1a\u672a\u6682\u5b58\u4ee5\u5907\u63d0\u4ea4\u7684\u53d8\u66f4\uff1a<br>  \uff08\u4f7f\u7528 \"git add &lt;\u6587\u4ef6&gt;...\" \u66f4\u65b0\u8981\u63d0\u4ea4\u7684\u5185\u5bb9\uff09<br>  \uff08\u4f7f\u7528 \"git checkout -- &lt;\u6587\u4ef6&gt;...\" \u4e22\u5f03\u5de5\u4f5c\u533a\u7684\u6539\u52a8\uff09<br>\u200b<br>    \u4fee\u6539\uff1a &nbsp; &nbsp; a<br>\u200b<br>\u4fee\u6539\u5c1a\u672a\u52a0\u5165\u63d0\u4ea4\uff08\u4f7f\u7528 \"git add\" \u548c\/\u6216 \"git commit -a\"\uff09<br>[root@wing git_data]# git add a<br>[root@wing git_data]# git commit -m \"add hello\"<br>[master 2add75e] add hello<br> 1 file changed, 1 insertion(+)<br>[root@wing git_data]# git diff<br>######\u5728a\u6587\u4ef6\u4e2d\u6dfb\u52a0hello\u5e76\u63d0\u4ea4\u5230\u4ed3\u5e93<br>[root@wing git_data]# echo haha &gt;&gt; a<br>[root@wing git_data]# git commit -am \"add haha\"#\u4e5f\u53ef\u4ee5\u4f7f\u7528-am\u76f4\u63a5\u63d0\u4ea4\u5230\u4ed3\u5e93\uff0c\u76f8\u5f53\u4e8e\u5148git add\u518dgit commit -m\uff0c\u4f46\u5fc5\u987b\u662f\u8ddf\u8e2a\u72b6\u6001\u7684\u6587\u4ef6\uff0c\u53c2\u6570a\u5fc5\u987b\u5728m\u524d\u9762\uff0c\u5426\u5219\u4f1a\u62a5\u9519\uff0c\u65e0\u6cd5\u63d0\u4ea4\u3002<br>[master f3d6391] add haha<br> 1 file changed, 1 insertion(+)<br>[root@wing git_data]# git diff<br>[root@wing git_data]# git status <br>\u4f4d\u4e8e\u5206\u652f master<br>\u65e0\u6587\u4ef6\u8981\u63d0\u4ea4\uff0c\u5e72\u51c0\u7684\u5de5\u4f5c\u533a<br>[root@wing git_data]# git log --oneline <br>f3d6391 (HEAD -&gt; master) add haha<br>2add75e add hello<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"toc-7\">git checkout \u2013<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u68c0\u51fa\uff0c\u91cd\u5199\u5de5\u4f5c\u533a\u6570\u636e<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">[root@wing git_data]# echo haha &gt;&gt; a<br>[root@wing git_data]# cat a<br>hello<br>test<br>test1<br>123<br>haha<br>[root@wing git_data]# git status <br>\u4f4d\u4e8e\u5206\u652f master<br>\u5c1a\u672a\u6682\u5b58\u4ee5\u5907\u63d0\u4ea4\u7684\u53d8\u66f4\uff1a<br>  \uff08\u4f7f\u7528 \"git add &lt;\u6587\u4ef6&gt;...\" \u66f4\u65b0\u8981\u63d0\u4ea4\u7684\u5185\u5bb9\uff09<br>  \uff08\u4f7f\u7528 \"git checkout -- &lt;\u6587\u4ef6&gt;...\" \u4e22\u5f03\u5de5\u4f5c\u533a\u7684\u6539\u52a8\uff09<br>\u200b<br>    \u4fee\u6539\uff1a &nbsp; &nbsp; a<br>\u200b<br>\u4fee\u6539\u5c1a\u672a\u52a0\u5165\u63d0\u4ea4\uff08\u4f7f\u7528 \"git add\" \u548c\/\u6216 \"git commit -a\"\uff09<br>[root@wing git_data]# git  checkout -- a<br>[root@wing git_data]# git status <br>\u4f4d\u4e8e\u5206\u652f master<br>\u65e0\u6587\u4ef6\u8981\u63d0\u4ea4\uff0c\u5e72\u51c0\u7684\u5de5\u4f5c\u533a<br>[root@wing git_data]# cat a<br>hello<br>test<br>test1<br>123<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"toc-8\">git reset HEAD<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u672c\u5730\u4ed3\u5e93\u8986\u76d6\u6682\u5b58\u533a\u57df<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">[root@wing git_data]# echo \"\" &gt; a   #\u5c06a\u7684\u5185\u5bb9\u6e05\u7a7a<br>[root@wing git_data]# git add a #\u63d0\u4ea4\u5230\u6682\u5b58\u533a<br>[root@wing git_data]# git commit -m \"test head\" #\u63d0\u4ea4\u5230\u4ed3\u5e93<br>[master dd7925f] test head<br> 1 file changed, 1 insertion(+), 1 deletion(-)<br>[root@wing git_data]# echo haha &gt; a #\u6dfb\u52a0\u5185\u5bb9\u5230a<br>[root@wing git_data]# git add a #\u63d0\u4ea4\u5230\u6682\u5b58\u533a<br>[root@wing git_data]# git diff a    #\u786e\u8ba4\u6ca1\u6709\u5dee\u5f02<br>[root@wing git_data]# git reset HEAD a  #\u7528\u672c\u5730\u4ed3\u5e93\u7684\u6570\u636e\u5c06\u6682\u5b58\u533a\u6570\u636e\u8986\u76d6<br>\u91cd\u7f6e\u540e\u53d6\u6d88\u6682\u5b58\u7684\u53d8\u66f4\uff1a<br>M   a<br>[root@wing git_data]# git diff a    #\u6bd4\u8f83\u5de5\u4f5c\u533a\u548c\u6682\u5b58\u533a\u7684\u6570\u636e\u5dee\u5f02<br>diff --git a\/a b\/a<br>index 8b13789..5ad28e2 100644<br>--- a\/a<br>+++ b\/a<br>@@ -1 +1 @@<br>-<br>+haha<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"toc-9\">git reset --hard \u54c8\u5e0c\u5934\u540d<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Git\u670d\u52a1\u7a0b\u5e8f\u4e2d\u6709\u4e00\u4e2a\u53eb\u505aHEAD\u7684\u7248\u672c\u6307\u9488\uff0c\u5f53\u7528\u6237\u7533\u8bf7\u8fd8\u539f\u6570\u636e\u65f6\uff0c\u5176\u5b9e\u5c31\u662f\u5c06HEAD\u6307\u9488\u6307\u5411\u5230\u67d0\u4e2a\u7279\u5b9a\u7684\u63d0\u4ea4\u7248\u672c\uff0c\u4f46\u662f\u56e0\u4e3aGit\u662f\u5206\u5e03\u5f0f\u7248\u672c\u63a7\u5236\u7cfb\u7edf\uff0c\u4e3a\u4e86\u907f\u514d\u5386\u53f2\u8bb0\u5f55\u51b2\u7a81\uff0c\u6545\u4f7f\u7528\u4e86SHA\u20101\u8ba1\u7b97\u51fa\u5341\u516d\u8fdb\u5236\u7684\u54c8\u5e0c\u5b57\u4e32\u6765\u533a\u5206\u6bcf\u4e2a\u63d0\u4ea4\u7248\u672c\uff0c\u53e6\u5916\u9ed8\u8ba4\u7684HEAD\u7248\u672c\u6307\u9488\u4f1a\u6307\u5411\u5230\u6700\u8fd1\u7684\u4e00\u6b21\u63d0\u4ea4\u7248\u672c\u8bb0\u5f55\uff0c\uff0c\u6ce8\u610f\u6062\u590d\u7248\u672c\u540e\u4ee3\u8868\u7684\u662f\u5728\u8fd9\u4e2a\u7248\u672c\u4e4b\u524d\u7684\u5185\u5bb9\u5168\u5728\uff08\u5305\u62ec\u5de5\u4f5c\u76ee\u5f55\u548c\u6682\u5b58\uff09\uff0c\u672c\u7248\u672c\u4e4b\u540e\u7684\u90fd\u6ca1\u4e86<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">[root@wing git_data]# git log --oneline <br>f3d6391 (HEAD -&gt; master) add haha<br>2add75e add hello<br>ff77333 aaa<br>dd7925f test head<br>e2e2131 head test<br>644d678 test head<br>326e57a v2 a<br>8f01c62 version2 a<br>a714e37 a<br>47a267c a.txt<br>6ac34be a<br>[root@wing git_data]# git reset --hard e2e2<br>HEAD \u73b0\u5728\u4f4d\u4e8e e2e2131 head test<br>[root@wing git_data]# git log --oneline <br>2add75e (HEAD -&gt; master) add hello<br>ff77333 aaa<br>dd7925f test head<br>e2e2131 head test<br>644d678 test head<br>326e57a v2 a<br>8f01c62 version2 a<br>a714e37 a<br>47a267c a.txt<br>6ac34be a<br>[root@wing git_data]# cat a<br>test<br>\u200b<br>\u200b<br>#git reset --mixed\uff1a\u6b64\u4e3a\u9ed8\u8ba4\u65b9\u5f0f\uff0c\u4e0d\u5e26\u4efb\u4f55\u53c2\u6570\u7684git reset\uff0c\u5373\u662f\u8fd9\u79cd\u65b9\u5f0f\uff0c\u79fb\u52a8head\u6307\u9488\uff0c\u6539\u53d8\u6682\u5b58\u533a\u5185\u5bb9\uff0c\u4f46\u4e0d\u4f1a\u6539\u53d8\u5de5\u4f5c\u533a<br>#git reset  --soft\uff1a\u56de\u9000\u5230\u67d0\u4e2a\u7248\u672c\uff0c\u4ec5\u79fb\u52a8\u5f53\u524dHead\u6307\u9488\uff0c\u4e0d\u4f1a\u6539\u53d8\u5de5\u4f5c\u533a\u548c\u6682\u5b58\u533a\u7684\u5185\u5bb9 &nbsp;<br>#git reset --hard\uff1a\u5f7b\u5e95\u56de\u9000\u5230\u67d0\u4e2a\u7248\u672c\uff0chead\u6307\u9488\u3001\u5de5\u4f5c\u533a\u548c\u6682\u5b58\u533a\u5185\u5bb9\u5168\u90e8\u6539\u53d8<br>\u200b<br>--soft\u7528\u5904\u4e0d\u662f\u5f88\u591a\uff1b\u5f53\u6267\u884cgit commit\u4e4b\u540e\u60f3\u64a4\u56de\uff0c\u4f46\u8fd8\u4e0d\u60f3\u8986\u76d6\u5de5\u4f5c\u533a\u5185\u5bb9\u65f6\uff0c\u4f7f\u7528--mixed\uff1b\u5f53\u60f3\u5b8c\u5168\u56de\u6eda\u65f6\uff0c\u4f7f\u7528--hard\u6765\u8986\u76d6\u5de5\u4f5c\u533a\u3002<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"toc-10\">git reflog<\/h2>\n\n\n\n<pre class=\"wp-block-preformatted\">[root@wing git_data]# cat a     #\u67e5\u770b\u6587\u4ef6\u5185\u5bb9\uff0c\u53d1\u73b0\u6062\u590d\u9519\u4e86\uff0c\u672c\u6765\u662f\u60f3\u6062\u590d\u5230\u201cadd haha\u201d\u8fd9\u4e2a\u4f4d\u7f6e\u7684<br>test<br>[root@wing git_data]# git log --oneline #\u4f7f\u7528log\u67e5\u770b\uff0c\u53d1\u73b0\u6ca1\u6709\u201cadd haha\u201d\u7684\u5185\u5bb9\u4e86<br>e2e2131 (HEAD -&gt; master) head test<br>644d678 test head<br>326e57a v2 a<br>8f01c62 version2 a<br>a714e37 a<br>47a267c a.txt<br>6ac34be a<br>#\u539f\u56e0\u5f88\u7b80\u5355\uff0c\u56e0\u4e3a\u6211\u4eec\u5f53\u524d\u7684\u5de5\u4f5c\u7248\u672c\u662f\u5386\u53f2\u7684\u4e00\u4e2a\u63d0\u4ea4\u70b9\uff0c\u8fd9\u4e2a\u5386\u53f2\u63d0\u4ea4\u70b9\u8fd8\u6ca1\u6709\u53d1\u751f\u8fc7add bbb\u66f4\u65b0\u8bb0\u5f55\uff0c\u6240\u4ee5\u5f53\u7136\u5c31\u770b\u4e0d\u5230\u4e86 \uff0c\u8981\u662f\u60f3\u201d\u8fd8\u539f\u5230\u672a\u6765\u201d\u7684\u5386\u53f2\u66f4\u65b0\u70b9 \uff0c\u53ef\u4ee5\u7528git reflog\u547d\u4ee4\u6765\u67e5\u770b\u6240\u6709\u7684\u5386\u53f2\u8bb0\u5f55<br>[root@wing git_data]# git reflog <br># \u4f7f\u7528git reflog \u53ef\u67e5\u770b\u603b\u5386\u53f2\u5185\u5bb9\uff08\u6ce8\u610f\u8fd9\u91cc\u9762\u4e5f\u662f\u6240\u6709\u7684commit\u4e4b\u540e\uff0c\u4e5f\u5c31\u662f\u653e\u5230\u672c\u5730\u4ed3\u540e\u7684\u8bb0\u5f55\uff09\u518d\u7ed3\u5408git reset --hard \u54c8\u5e0c\u5934\u90e8\u6062\u590d\u7248\u672c\u5feb\u7167 \uff0c\u6240\u6709\u7684\u6570\u636e\u6839\u672c\u5c31\u4e0d\u53ef\u80fd\u4e22\u5931\uff0c\u968f\u4fbf\u5220\u9664\uff0c\u968f\u4fbf\u6062\u590d\uff08\u524d\u63d0\u662f\u5df2\u63d0\u4ea4\u4ed3\u5e93\u7684\u7684\u5185\u5bb9\uff09<br>\u200b<br>e2e2131 (HEAD -&gt; master) HEAD@{0}: reset: moving to e2e2<br>2add75e HEAD@{1}: reset: moving to 2add75e<br>f3d6391 HEAD@{2}: commit: add haha<br>2add75e HEAD@{3}: commit: add hello<br>ff77333 HEAD@{4}: commit: aaa<br>dd7925f HEAD@{5}: commit: test head<br>e2e2131 (HEAD -&gt; master) HEAD@{6}: commit: head test<br>644d678 HEAD@{7}: commit: test head<br>326e57a HEAD@{8}: commit: v2 a<br>8f01c62 HEAD@{9}: commit: version2 a<br>a714e37 HEAD@{10}: commit: a<br>47a267c HEAD@{11}: commit: a.txt<br>6ac34be HEAD@{12}: commit (initial): a<br>[root@wing git_data]# git reset --hard f3d6 #\u4f7f\u7528reset\u6062\u590d\u5230\u201cadd haha\u201d\u7684\u7248\u672c<br>HEAD \u73b0\u5728\u4f4d\u4e8e f3d6391 add haha<br>[root@wing git_data]# cat a<br>haha<br>hello<br>haha<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>git status\/git status -s \u67e5\u770b\u72b6\u6001 [root@wing git_data]# git [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26],"tags":[],"class_list":["post-338","post","type-post","status-publish","format-standard","hentry","category-devops"],"_links":{"self":[{"href":"https:\/\/www.xxiaoteng.cn\/index.php?rest_route=\/wp\/v2\/posts\/338","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.xxiaoteng.cn\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.xxiaoteng.cn\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.xxiaoteng.cn\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.xxiaoteng.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=338"}],"version-history":[{"count":1,"href":"https:\/\/www.xxiaoteng.cn\/index.php?rest_route=\/wp\/v2\/posts\/338\/revisions"}],"predecessor-version":[{"id":339,"href":"https:\/\/www.xxiaoteng.cn\/index.php?rest_route=\/wp\/v2\/posts\/338\/revisions\/339"}],"wp:attachment":[{"href":"https:\/\/www.xxiaoteng.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=338"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.xxiaoteng.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=338"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.xxiaoteng.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=338"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}