我和我的朋友選擇使用git和GitHub在項目上進行協作。我們都很新。配置文件已經在遠程git倉庫中。想要取消但不刪除。怎麼樣?
我的朋友用他包含的項目配置文件版本初步提交了我們的項目文件。我的配置文件將會不同。我們不希望來回發送這些文件的更改。
我已經發布git init
和git pull [email protected]:my_friend/our_repository.git master
將我們的項目文件放到我的開發服務器上。
然後我創建了一個.gitignore
文件在項目的根我的dev的服務器(這裏我做git init
):
# this is .gitignore in the project's root directory
index.php
config/some_config_file.php
config/another_config_file.php
由於這些配置文件已經在倉庫中,在.gitignore
這些線路不會做任何事。我明白這一點。其他SO答案已經建議這些命令:
git rm --cached index.php
git rm --cached config/some_config_file.php
git rm --cached config/another_config_file.php
git commit -m "hope this works"
git push
但這個刪除這些文件在遠程GitHub的倉庫!不好。我希望這些文件保留在GitHub上,因此它不會報警我的朋友。 我只想在我的開發服務器上保留我自己的未版本的文件副本,與GitHub存儲庫中正在進行的任何操作無關。
我該如何用git實現這個設置?
謝謝!這工作很好。順便說一句,在google搜索之後,我發現'git ls-files -v | grep^[a-z]'會告訴你哪些文件已經被這樣設置。這裏有更多的信息,包括'〜/ .gitconfig'的兩個別名:http://gitready.com/intermediate/2009/02/18/temporarily-ignoring-files.html – markplindsay
' - 放棄 - 不變'技術是一個好的一個,只要你意識到這些問題,比如在切換分支和合並提交文件的位置發生變化時(參見文檔)。 –
@Sri:非常有效的一點!無論何時使用上游版本更新本地回購,並且該文件已更改,都必須手動處理。如果有問題的文件經常更改,這可能很煩人。 – jweyrich