第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Git還原,檢出和重置之間有什么區(qū)別?

Git還原,檢出和重置之間有什么區(qū)別?

Git
桃花長相依 2019-12-07 14:22:14
我想學(xué)習(xí)如何回滾文件和項(xiàng)目或恢復(fù)到以前的狀態(tài),不明白之間的差別git revert,checkout和reset。為什么有3個不同的命令看似相同的目的,以及何時應(yīng)該選擇一個而不是另一個?
查看完整描述

3 回答

?
德瑪西亞99

TA貢獻(xiàn)1770條經(jīng)驗(yàn) 獲得超3個贊

這三個命令的用途完全不同。它們甚至都不遙不可及。

git revert

該命令將創(chuàng)建一個新的提交,以撤消對先前提交的更改。此命令將新歷史記錄添加到項(xiàng)目中(它不會修改現(xiàn)有歷史記錄)。

git checkout

此命令從存儲庫中簽出內(nèi)容,并將其放入您的工作樹中。它也可能具有其他效果,具體取決于調(diào)用命令的方式。例如,它還可以更改您當(dāng)前正在使用的分支。此命令不會對歷史記錄進(jìn)行任何更改。

git reset

這個命令有點(diǎn)復(fù)雜。實(shí)際上,根據(jù)調(diào)用方式的不同,它會做很多不同的事情。它修改索引(所謂的“暫存區(qū)”)?;蛘吒姆种ь^當(dāng)前指向的提交。此命令可能會更改現(xiàn)有歷史記錄(通過更改分支引用的提交)。

使用這些命令

如果在項(xiàng)目歷史記錄中的某個位置進(jìn)行過提交,而您以后又認(rèn)為該提交是錯誤的并且不應(yīng)該完成,那么這git revert就是完成任務(wù)的工具。它將撤消由錯誤提交引起的更改,并在歷史記錄中記錄“撤消”。

如果您已經(jīng)在工作樹中修改了文件,但是尚未提交更改,則可以git checkout用來檢出文件的從存儲庫復(fù)制的副本。

如果您進(jìn)行了提交,但尚未與其他任何人共享,并且您決定不希望這樣做,則可以使用它git reset來重寫歷史記錄,以便看起來好像從未進(jìn)行過該提交。

這些只是一些可能的使用方案。還有其他一些命令在某些情況下可能會有用,并且以上三個命令也有其他用途。


查看完整回答
反對 回復(fù) 2019-12-07
?
繁星點(diǎn)點(diǎn)滴滴

TA貢獻(xiàn)1803條經(jīng)驗(yàn) 獲得超3個贊

假設(shè)您有提交:


C

B

A

git revert B會創(chuàng)建一個撤消。中的更改的提交B。


git revert A,將創(chuàng)建一個撤消中的更改的提交A,但不會涉及到中的更改B


請注意,如果中的更改B取決于中的更改A,A則無法還原。


git reset --soft A,將更改提交歷史記錄和存儲庫;暫存和工作目錄仍處于狀態(tài)C。


git reset --mixed A,將更改提交歷史記錄,存儲庫和登臺;工作目錄仍處于的狀態(tài)C。


git reset --hard A,將更改提交歷史記錄,存儲庫,登臺和工作目錄;您將回到A完全的狀態(tài)。


查看完整回答
反對 回復(fù) 2019-12-07
?
長風(fēng)秋雁

TA貢獻(xiàn)1757條經(jīng)驗(yàn) 獲得超7個贊

  • git revert用于撤消先前的提交。在git中,您無法更改或刪除較早的提交。(實(shí)際上,您可以,但是可能會導(dǎo)致問題。)因此,revert不會編輯較早的提交,而是引入了一個新的提交,該提交會撤銷較早的提交。

  • git reset 用于撤消工作目錄中尚未提交的更改。

  • git checkout用于將文件從其他提交復(fù)制到當(dāng)前工作樹。它不會自動提交文件。


查看完整回答
反對 回復(fù) 2019-12-07
  • 3 回答
  • 0 關(guān)注
  • 1920 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號