簡體   English   中英

將現有源代碼文件夾添加到Local Git Repository中

[英]Add existing source code folders into Local Git Repository

假設我有兩個現有的文件夾,我想放在Git源代碼控制下。 一個叫做CurrentProduction ,另一個是CurrentDevelopment 以下步驟是否正確?

  1. 創建一個名為MyProject的新文件夾
  2. git init
  3. CurrentProduction內容移動到MyProject
  4. git add .
  5. git commit -m 'initial master commit'
  6. git checkout -b develop
  7. 刪除MyProject所有文件(當然.git文件夾除外)
  8. CurrentDevelopment內容移動到MyProject
  9. git add -A
  10. 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.

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