git add *
git commit -m ""
git push -u origin branch
在刪除某一些檔案時, 應使用git add .
. 否則, 會出現changes not staged for commit: ...
子模組的操作必須非常小心, 因為其中有很多坑.
git submodule add git: rack
git rm --cached pathofsubmodule
然後刪除_config.yml以及.git/config檔案中相關記錄
進入子模組所在目錄
git add *
git commit -m ""
git push
我們可以直接像正常git檔案一樣的流程進行提交, 但是如果我們忘記提交子模組的變動, 而新的專案和子模組的變動又相關. 那麼其他人從遠端倉庫中clone的檔案可能並不能正確執行(缺少必要的子模組變動).
所有推薦使用以下兩種方法:
1.git push --recurse-submodules=check
. 若有子模組的變動沒有推送, 那麼該push
會失敗.
2.git push --recurse-submodules=on-demand
. 若有子模組的變動沒有推送, 那麼它會先推送子模組的變動, 然後再推送主專案.
其他人如果對子模組進行了修改, 在git pull
之後, 再呼叫以下git submodule update
更新子模組.
所以需要進入每乙個你希望對其進行修改的子模組,git checkout branchname
檢出乙個分支. 從遠端倉庫中更新本地檔案時, 使用git submodule update --remote --merge
, 也可以使用--rebase
.
如果忘記了--rebase
或者--merge
, git會將子模組更新為遠端倉庫上的狀態, 而且該專案將再一次進入detached head
的狀態. 解決方法:
檢出包含之前本地更改的分支
然後手動的merge或者rebase任何乙個遠端分支即可.
即使沒有提交子模組的更改也某有問題, 此時git只會抓取更改, 而不會覆蓋本地內容.
也可以使用git clone --recursivegit clone --recursive
自動地初始化並更新倉庫中的每乙個子模組.
linux命令相關及git命令
檢視cpu top 檢視磁碟 df h 檢視某資料夾下個檔案大小並從大到小排序 du sh sort nr 在某個檔案裡查詢所有的關鍵字元 grep 遮蔽 store logs spiderpy.log 檢視程序 ps aux grep python3 殺死程序 kill 9 1234 部署命令 n...
Git 配置使用及相關命令
author janloong do o 基本配置 git推送git預設不會把tag推送到遠端倉庫,需使用命令 git push origin tagname 一次將所有tag推送 git push origin tags git遠端倉庫拉取git clone git gitlab.com janl...
git介紹,部署,及相關命令
1.介紹 git實際上是乙個版本控制系統,它主要是方便開發者對 版本的乙個修改,有利於團隊的合作開發。它可以將檔案回到之前提交的任何乙個狀態,但只限於文字檔案,不支援圖形等。git中有乙個工作區,暫存區 index stage 版本庫,工作區供開發者編寫 暫存區暫時存放相應操作,最後提交會到版本庫。...