最新の変更を TFS から取得して BitBucket リポジトリに追加しようとすると問題が発生します。ブランチを BitBucket に正常にプッシュしましたが、TFS から新しいチェックインを取得しようとすると、常にマージの競合が発生します。
手順:
git tfs clone http://TFS-ADDRESS/Collection $/Project/Name/Branch
git tfs init-branch $/Project/Name/NewBranch NewBranchName
git push -u origin --all
この時点で、私の BitBukcet リポジトリには、TFS からのすべてのファイルと履歴が含まれています。次に、TFS で $/Project/Name/NewBranch を確認しました。
ここで、TFS から最新の変更セットを取得し、それらを BitBucket リポジトリに追加/コミットしたいと考えています。注: この時点では、TFS または BitBucket の他のブランチは変更されていません。唯一の変更点は、TFS への 1 回のチェックインです。
NewBranch で次の操作を行うと、マージの競合が発生します。
git tfs pull
Auto-merging Source/build.version
CONFLICT (content): Merge conflict in Source/build.version
私が知る限り、NewBranch は最新のコードですが、「マスター」から「NewBranch」に変更をマージしようとしています。ptfs pull コマンドは、最後のチェックセットをプルしていますが、マージを試みます。私が使用する場合
git tfs fetch --all
変更セットが一覧表示されていますが、それを BitBucket リポジトリにコミット/プッシュできません。私が間違っていること、または実行する必要がある手順をオンラインで参照することができません (私は Git を初めて使用します)。誰でも助けることができますか?
最終的にはこれを自動化して、TFS のすべてのチェックインを取得して BitBucket リポジトリに追加できるようにしたいと考えています (最終的にすべての開発者を BitBucket に移行するまで)
ありがとう
編集 TFS から BitBucket に変更を加えようとしています。BitBucket から TFS に何も追加されません。
すべての作業はブランチで行われます (以下を参照)。ユーザーは TFS で作業しています。ユーザーはそこで変更をコミットします。注: BitBucket リポジトリを編集している人はいません。TFS のレプリカです。1 日に 1 回、各 TFS ブランチの最新の変更セットをローカルの git フォルダーにプルし、それらを BitBucket にプッシュしたいと考えています。「git tfs fetch」は変更セットを取得します。
D:\development\workspaces\git\anothertry>git tfs fetch --all
C83419 = 3abdaedf571369dce15f74a52697d86069f87d6d
しかし、「git status」はコミットするものが何もないことを教えてくれます
D:\development\workspaces\git\anothertry>git status
# On branch Feature
nothing to commit, working directory clean
そして、この変更セットを BitBucket にプッシュしようとすると、コミットするものが何もないことが git から通知されます。
支店
Master---o---------------o----o--o-o--o-------
\ / / / / /
Feature-----o----o--o-o--o