2013-04-20 74 views
188

我是git和GitHub的新手。我設法在Mac上本地設置了所有內容,現在我可以通過git(在命令行上,而不是Mac應用程序上)向GitHub提交提交。如何在命令行中同時提交「message」和「description」更改?

當我推直接從GitHub的Web界面提交(例如快速修復錯字),我有「註釋」提交的機會,GitHub上給了我一個承諾標題和提交描述。我覺得這非常有用。

還有,當我從本地機器git pushgit打開我的默認編輯器:所以我編寫提交評論,然後GitHub自動將它分成標題和「身體」。有沒有辦法從終端提交漂亮的評論?

回答

381

還有

git commit -m "Title" -m "Description .........."; 
+9

嗯,一個很好的黑客,但我更喜歡[下面的答案](http://stackoverflow.com/a/36427485/3810038),因爲它爲我提供了一種輕鬆地用換行符輸入長描述的方法。 – 2017-03-07 06:57:22

25
git commit -a -m "Your commit message here" 

將快速提交所有更改與提交消息。按照約定,Git commit「title」和「description」(就像你調用它們)不過是第一行,而commit文本中的其餘行通常由空行分隔。所以使用這個命令只會提交「標題」而沒有描述。

如果你想提交更長的信息,你可以這樣做,but it depends on which shell you use

在bash的快捷方式是:

git commit -a -m $'Commit title\n\nRest of commit message...' 
+3

那是不行的,它讓我'\ N'! (也許是因爲我是從Windows系統提交的)。編輯:好吧,我忽略了你的'$'...''語法。也許這會工作。 – Ela782 2015-02-27 22:58:22

0

如果你想在你之後改善與標題和正文提交信息另一條更明確的方式創建提交,你可以reword它。這種方法更有用,因爲只有在編寫代碼後才知道代碼的作用。

git rebase -i origin/master 

然後,你的提交就會出現:

pick e152ce2 Update framework 
pick ffcf91e Some magic 
pick fa672e1 Update comments 

選擇承諾要改寫和保存。

pick e152ce2 Update framework 
reword ffcf91e Some magic 
pick fa672e1 Update comments 

現在,您有機會添加標題和正文,其中第一行將是標題。

Create perpetuum mobile 

Redesign laws of physics with a pinch of imagination. Open a wormhole in 23 dimensions. Add protection to avoid high instability. 
107

使用不帶任何標誌的git commit命令。只是git commit。然後Vim編輯器將打開

enter image description here

開始鍵入按鍵盤上的鍵Insert,現在你可以創建一個更好地說明你想怎麼辦提交。例如

enter image description here

一旦你寫你需要的一切,你需要返回到正常模式,該按鍵Esc。現在,通過敲擊鍵盤:wq上關閉與保存修改Vim編輯器( - 寫,Q - 含退出)

enter image description here

並按Enter

在GitHub上這次提交的樣子在提交日誌本

enter image description here

相關問題