[英]Add existing source code folders into Local Git Repository
假設我有兩個現有的文件夾,我想放在Git
源代碼控制下。 一個叫做CurrentProduction
,另一個是CurrentDevelopment
。 以下步驟是否正確?
MyProject
的新文件夾 git init
CurrentProduction
內容移動到MyProject
git add .
git commit -m 'initial master commit'
git checkout -b develop
MyProject
所有文件(當然.git文件夾除外) CurrentDevelopment
內容移動到MyProject
git add -A
git commit -m 'initial develop commit'
還是有“不同”的方式?
按照您描述的方式進行操作不會造成任何傷害。
您可以將.git
目錄移動到要提交的樹中,而不是將樹移動到存儲庫。
您可以使用--work-tree
選項或GIT_WORK_TREE
環境變量來表現,就像您這樣做:
git add --work-tree=CurrentProduction -A; git commit ...
請注意,在add
之后沒有必要為命令指定它,因為add
副本內容add
到索引中, commit
使用索引,索引位於.git
。
作為一個單獨的問題,請注意您的過程將使develop
初始提交成為master
初始提交的子級。 對於這個案子來說,這可能是正確的; 我只是想確保你知道它不對稱。
這是一個好方法。
如果您使用git log
查看develop分支的歷史記錄,那么唯一可能的問題是將當前生產項目狀態作為最后一次提交(具有“初始主提交”的狀態)。 哪個語義上不完全正確。
如果煩惱,你可以先做一個初始的空提交 ,將服務器作為兩個分支的公共基礎:
git init .
git commit --allow-empty -m "initial commit"
# add CurrentProduction content
git add .
git commit -m "initial master commit"
# checkout at the empty commit
git checkout -b develop HEAD^
# no need to delete any files!
# working tree is empty
# add CurrentDevelopment content
git add .
git commit -m "initial develop commit"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.