簡體   English   中英

Reposurgeon創建分支而不是標簽

[英]Reposurgeon creates branches instead of tags

我正在嘗試通過遵循本教程將CVS轉換為GIT: http : //www.catb.org/~esr/reposurgeon/dvcs-migration-guide.html

總體上看還可以,但是對於某些CVS標簽(它似乎在存儲庫中的某個時間點開始,然后在之后執行),而不是GIT標簽,而是創建了GIT分支。

知道為什么首先創建分支而不是標簽嗎?

這些主要是由自動構建工具(基本上每個構建一個)+發行分支(每個發行版一個)構建時創建的分支。 其中有數百種,因此我想確保它們不是作為分支而是作為標簽創建的。

后備醫生能夠做到這一點,甚至是完成工作的正確工具嗎?

僅供參考-做這個答案: https//stackoverflow.com/a/16404411/3821009提供:

git tag BRANCH_A BRANCH_A
git branch -d BRANCH_A

結果是:

error: The branch 'BRANCH_A' is not fully merged.
If you are sure you want to delete it, run 'git branch -D BRANCH_A'

因此看來這里沒有正確連接東西。 你知道是什么原因造成的嗎?

使用cvs2git可能是您更好的選擇。
假設CVS標簽代表倉庫的一個版本(或者可以很容易地被偽造),它將把您的CVS標簽轉換為git標簽。 否則,您將得到TAG.FIXUP分支,可以按照鏈接的“ 用法”部分中的說明進行操作。

在這里,reposurgeon的作者,我才意識到這個問題。

您遇到的不是reposurgeon錯誤。 這就是cvs-fast-export遇到無法在整個主模板集之間復制的標簽時所遇到的麻煩……這意味着CVS操作員錯誤損壞了存儲庫元數據。

cvs-fast-export試圖通過為不完整標簽創建單提交分支來解決此問題。 手冊頁上對此行為進行了描述,但是我想如果沒有看到它的上下文很容易就錯過了。

暫無
暫無

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

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