git commit -m 與 git commit -am 的區(qū)別

字面解釋的話,

git commit -m用于提交暫存區(qū)的文件;

git commit -am用于提交跟蹤過(guò)的文件。

要理解它們的區(qū)別,首先要明白git的文件狀態(tài)變化周期,如下圖所示

工作目錄下面的所有文件都不外乎這兩種狀態(tài):已跟蹤或未跟蹤。已跟蹤的文件是指本來(lái)就被納入版本控制管理的文件,在上次快照中有它們的記錄,工作一段時(shí)間后,它們的狀態(tài)可能是未更新,已修改或者已放入暫存區(qū)。

下面以一個(gè)實(shí)例說(shuō)明

在項(xiàng)目文件夾中新增一個(gè)文件如’a.txt’時(shí),該文件處于untracked未跟蹤狀態(tài)。未跟蹤狀態(tài)的文件是無(wú)法提交的

接下來(lái),使用git add a.txt,使其變成已跟蹤狀態(tài)

這時(shí),如果使用git commit -m 'add a.txt'就可以順利提交了

但是,git commit -m 和 git commit -am的區(qū)別在哪里?在于a.txt文件修改之后的處理。

下面,向a.txt添加內(nèi)容’a’

文件a.txt處于已跟蹤,添加’a’以后就變成了modified狀態(tài),還沒(méi)有到暫存狀態(tài)。這時(shí),如果使用git commit -m是無(wú)法提交最新版本的a.txt的,提交的只是最開(kāi)始空內(nèi)容的舊版本a.txt

要提交新版本a.txt,即內(nèi)容為’a’的a.txt,則需要使用git add a.txt,將新版本的a.txt放到staged暫存區(qū),然后才能使用git commit -m進(jìn)行提交。而如果使用git commit -am,則可以省略git add a.txt這一步,因?yàn)間it commit -am可以提交跟蹤過(guò)的文件,而a.txt一開(kāi)始已經(jīng)被跟蹤過(guò)了

總結(jié),使用這兩個(gè)命令區(qū)別的關(guān)鍵就是git add命令

git add命令是個(gè)多功能命令,根據(jù)目標(biāo)文件的狀態(tài)不同,此命令的效果也不同:可以用它開(kāi)始跟蹤新文件,或者把已跟蹤的文件放到暫存區(qū),還能用于合并時(shí)把有沖突的文件標(biāo)記為已解決狀態(tài)等

我們需要用git add命令來(lái)跟蹤新文件,但如果使用git commit -am可以省略使用git add命令將已跟蹤文件放到暫存區(qū)的功能

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 Git使用教程 Git是什么 Git是一個(gè)開(kāi)源的分布式版本控制系統(tǒng),用于敏捷高效地處理任何或小或大的項(xiàng)目。 ...
    90后的思維閱讀 1,026評(píng)論 0 0
  • 以下筆記主要參考gitgot,大致了解git使用和原理。 第一部分我們從個(gè)人的視角去研究如何用好Git,并且揭示G...
    carolwhite閱讀 2,521評(píng)論 0 1
  • 大綱: 一、前言 二、概述 三、在Windows上安裝Git 四、創(chuàng)建本地倉(cāng)庫(kù) 五、本地倉(cāng)庫(kù)管理詳解 六、總結(jié) 注...
    首席架構(gòu)師閱讀 403評(píng)論 1 3
  • Git 是目前最流行的分布式版本控制系統(tǒng)之一。 版本控制指的是,記錄每次版本變更的內(nèi)容和時(shí)間等細(xì)節(jié),保留各版本之間...
    神齊閱讀 1,506評(píng)論 0 7
  • 一、基本概念: 注:對(duì)于git的分布式概念及其優(yōu)點(diǎn),不重復(fù)說(shuō)明,自己百度或谷歌。本文中涉及到指令前面有$的,在cm...
    大廠offer閱讀 1,558評(píng)論 0 3

友情鏈接更多精彩內(nèi)容