簡體   English   中英

Git 拉-刪除文件

[英]Git pull - deleted files

我有一個開發服務器和幾個生產服務器。 我確實從開發人員提交到遠程存儲庫,並讓git push production設置,這會從生產服務器發出拉動。 我需要從被跟蹤的 static 文件中刪除幾個目錄,所以我這樣做了

從 Git 存儲庫中刪除現有文件(摘要:做了git rm --cached myfolders ,然后添加到.gitignore 文件夾)

我還沒有提交更改。 執行git status時文件顯示為已刪除

#       deleted:    file1.jpg
#       deleted:    file2.jpg
#       deleted:    file3.jpg
#       deleted:    file4.jpg
#       deleted:    file5.jpg

我擔心的是:執行git pull時,是否會從生產服務器(從磁盤)中刪除“已刪除”文件? 我只是希望它們不被跟蹤,而不是從磁盤中刪除。

謝謝

是的,如果您拉取包含刪除的提交,則文件將被刪除。 之后您需要手動恢復文件。

是的,如果您執行git pull ,文件將被刪除。 Git 不能做任何其他事情 - 假設存儲庫中的某些代碼取決於某個文件的存在或不存在。 刪除文件可能會產生重大影響,因此 Git 必須在拉取文件時刪除文件。

正如其他人回答的那樣,您需要手動恢復已刪除的文件。 你可以這樣做

git checkout sha1 -- file1.jpg file2.jpg

其中sha1是合並之前的提交。 有多種方法可以獲得那個,比如使用HEAD~1或從 output 中提取的最簡單的副本。 有類似的東西

Updating bea26f6..d5a6bc6

第一次提交是您之前在本地進行的提交。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM