上下文
- 我们有一个发布分支一个Git仓库。
- 我们有一个TFS回购(当前为空)。
我的任务是反映混帐回购协议到TFS的发布分支,以便在git的地图每一个承诺在TFS一个变更。 所有的开发者只致力于Git和(让我们假设),不知道TFS的。
读为rcheckin文档和回答这个相关的问题使我相信rcheckin能够这样做的。
问题
Git中的所有提交都压扁成一个单一的变更。
再现顺序:
git tfs clone http://tfs:8080 $/tfsrepo
cd tfsrepo
git remote add github git@github.com:REPO/Repo.git
git fetch github
git merge github/release
git tfs rcheckin
这导致一个签入到TFS包含所有的提交。
在解决问题的其他尝试
克隆后,合并所述第一从源(GIT)回购提交,rcheckin创建共享基础
- 这个工作,但随后的
git pull github release
,随后git-tfs rcheckin
导致犯再次挤压。
- 这个工作,但随后的
对于在原点回购前几个提交,我合并他们一个接一个进入的git-TFS共享回购和每个之后rcheckin'd。
- 这种工作,为每一个承诺,有在TFS一个变更。 然而,原始提交信息第二下方的“合并c02436de4f ...”的消息。
- 这是不现实的每一个变更的事,即使有脚本。
- 正如指出的patthoyts ,这将使我的commiter对这种变化就TFS而言。
我的问题
我有什么做的,让TFS了最新从混帐回购释放分公司,使每一个在git的承诺都有相应的TFS变更?
附加信息
我有两个回购协议的管理控制,我将能够在必要时重订的混帐回购协议,与由此引发的种种后果。 我只是不想失去我们已经创造了历史。