簡體   English   中英

將非標准布局的 svn 存儲庫遷移到 git

[英]Migrating a non standard layout svn repository to git

我有一個非標准布局的本地 svn 存儲庫,即沒有主干、分支和標簽,並且有許多“平面”項目。 就像這樣:

<repo root>/project1/<source files>
<repo root>/project2/<source files>
...

我希望每個項目都進入一個單獨的 git repo。

我正在按照本指南中的說明進行作者轉換步驟1

然后使用此命令而不是步驟2中的命令:

cd <repo root>/project1/
git svn clone file:///<path to root>/project1 --no-metadata -T ./ --authors-file=authors-transform.txt ~/temp.git

我不使用--stdlayout ,因為我沒有這樣的布局,而且我還使用-T選項來表示應該為這個 repo 找到主干的位置。 該步驟似乎運行正常,並且 ~/temp.git 包含項目的源文件。 我可以通過git loggit diff看到提交日志和其中的更改。

然后我將按照指南中的說明執行接下來的兩個步驟。 4步給出以下輸出:

$ git push bare
Counting objects: 534, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (499/499), done.
Writing objects: 100% (534/534), 281.99 KiB | 2.82 MiB/s, done.
Total 534 (delta 261), reused 0 (delta 0)
remote: Resolving deltas: 100% (261/261), done.
To /home/thanos/new-bare.git
 * [new branch]      origin/trunk -> origin/trunk

我不知道這是否正確。 然后第5步失敗:

$ git branch -m trunk master
error: refname refs/heads/trunk not found
fatal: Branch rename failed

任何線索我做錯了什么? 在步驟2中使用-T是否正確? 並且沒有使用--stdlayout

  • [新分支] origin/trunk -> origin/trunk

您沒有分支trunk ,因此無法重命名; 你有origin/trunk

暫無
暫無

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

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