問題タブ [git-tf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
879 参照

git - 「TFS は、同じパスに異なるケースを持つ同じアイテムを持つことをサポートしていません。」を回避するにはどうすればよいですか。

現在、SVN リポジトリを TFS (具体的には visualstudio.com) に移行しようとしています。この投稿 で詳しく説明されているように、周りを見回したところ、最も安価で簡単なオプションは GIT を使用することであることがわかりました。

プロセスは順調に進んでおり、GIT SVN を使用して GIT リポジトリをローカルに構築し、変更セットの半分以上を TFS にコミットすることができましたが、次のエラーが表示されて停止しました。

git-tf: アイテム 'solution/schema objects/programmability/stored procedure/dbo.product_recommendation_insert.proc.sql' がコミット 9fbd60d に大文字と小文字が異なる複数回存在します。TFS は、同じパス内でケースが異なる同じアイテムを持つことをサポートしていません。

これは理想的ではありませんが、このファイルのコミット履歴を保持する必要はありません。スキップしても問題ありません。

だから私は解決策を思いつきました(より良いオプションがある場合は次のビットを無視します)、それはGITフィルターブランチを使用して履歴からそれを削除することでした. 次のコマンドを実行しました。

git filter-branch --tree-filter 'rm -f ''solution\Schema Objects\Programmability\Stored Procedures\dbo.Product_recommendation_insert.proc.sql''' HEAD

これは問題なく実行されましたが、TFS へのコミットを完了するために何をする必要があるかわかりません。チェックインを再実行すると、次のエラーが表示されます

git-tf: 最新の変更 (commit 968e8a0) が取得されましたが、まだ master にマージ/リベースされていません。最新の変更をマスターにマージ/リベースしてください

私の質問は次のとおりです。フィルターブランチを使用して正しいことをしていますか? もしそうなら、マスターに「マージ/リベース」するために何をする必要がありますか?

0 投票する
1 に答える
10861 参照

git - Git に行末を本当に *無視* させるにはどうすればよいですか?

行末を本当に気にしないように Git に指示するにはどうすればよいですか? それらを元のまま LF または CRLF のままにして、同じ方法でチェックするには?

git-tf で Git リポジトリを使用して、TFS リポジトリにチェックインしています。私のチームの残りのメンバーは、TFS のみを使用しています。

そういうわけで、知らず知らずのうちに改行を変えてしまうこともあります。たとえば、最近、サードパーティのツールが行末を正規化するなどの変更を行いました。これらの変更でレポが更新され、行末が異なるため、ディレクトリに変更が加えられたようにファイルが表示されるようになりました。

この特定のリポジトリで本当に欲しいのは、Git に行末の変更が存在しないふりをさせることです。LF の場合は、LF のままにします。CRLF の場合は、CRLF のままにします。

これを行うには、どのような設定または設定の組み合わせが必要ですか?

0 投票する
1 に答える
1217 参照

git - git-tf は、チェックイン時に「ロックできませんでした」と表示します。どうすれば修正できますか?

git-tf を使用して TFS プロジェクトにプッシュしています。1 つまたは複数のコミットを TFS にチェックインしようとすると、次のようなメッセージが表示されることがあります。

TFS に接続しています...
$/MyProject にチェックインしています: 0%
git-tf: $/MyProject をロックできませんでした

これは何を意味するのでしょうか?ロックできない原因は何ですか? どうすればこれを修正できますか?

0 投票する
1 に答える
220 参照

linux - Team Explorer Everywhere コマンド ライン Linux を使用してすべてのプロジェクトをダウンロードせずに、TFS に新しい高レベル フォルダーを作成する

新しいプロジェクトを含む新しいフォルダーを TFS に追加したいと考えています。Linux用の「Team Explorer Everywhere 2013 」を使用しています。

フォルダ構成は以下のようなものです

$Main\HighLevelFolder\ProjectXたとえば、最も効率的な方法で、新しいフォルダーを追加したいと考えています。

全体$Main\HighLevelFolderをチェックアウトして、その中に新しいプロジェクト フォルダを作成し、再度チェックインすることもできます。しかし、かなり多くのプロジェクトがあります。サーバー上にフォルダーを作成してから、フォルダーだけをチェックアウトします。

(実際には、TFS サーバーに対するチェックアウト/チェックインにGit-TFを使用しています。)

https://stackoverflow.com/a/641987/1336249ヒントを教えてください:

しかし、TEE コマンド ラインでそれを行う方法は明確ではありません。何か案は?

0 投票する
1 に答える
399 参照

xcode - MAC コマンド git-tf が見つかりません

皆さんこんにちは。 私はよく検索しますが、実際には何も役に立ちません。私は xcode 5 を使用して、git リポジトリ経由で Team Foundation Server 2013 を使用して IOS アプリを開発しています。最初の 2 つのプロジェクトでは、すべて git-tf コマンド シリーズで問題ありませんでした。しかし、その後、 git-tf command not found が表示され、突然動作を停止するのはどういうわけか奇妙です。どんな助けでも大歓迎です

-bash: git-tf: コマンドが見つかりません

0 投票する
1 に答える
253 参照

git - git-tf を使用して変更履歴のパーセンテージを取得する方法

プロジェクトを tfs から git に移行するために git-tf を使用しています。問題は、20,000 件以上のコミットがある大規模なプロジェクトであり、移行の 7 ~ 8 時間後にソケット接続が閉じて、次のエラーが発生することです。

git-tf: com.ctc.wstx.exc.WstxIOException: 読み取りがタイムアウトしました

完全なセットではなく、最近の変更履歴の割合を移行する方法があるかどうか疑問に思っています。例-次のようなもの

git-tf clone http://tfs2012.xxx:8080/TFS/DefaultCollection/ $/"xxx" --deep '30%'

これは、最近のコミットの 30% のみをピックアップします。

0 投票する
1 に答える
730 参照

visual-studio - git-tf を使用して Visual Studio Online にログインするにはどうすればよいですか?

git tf cloneTFVC を使用している Visual Studio Online でプロジェクトを実行しようとしています。次のコマンドを実行しています。

次に、ユーザー名とパスワードを要求されますが、Visual Studio Online のログイン資格情報を使用すると、ログインしません。

git-tf コマンド ラインから Visual Studio Online にログインするにはどうすればよいですか?

0 投票する
2 に答える
1371 参照

git - GIT-TF を使用したインポート - アイテムには既に保留中の変更があります

1 つは 2012 で、もう 1 つは 2013 の TFS の 2 つのインスタンスがあります。私の目標は、2012 インスタンスから一部のソース コードをエクスポートし、それを 2013 インスタンスにインポートして、チェックイン履歴を保持することです。

私が採用している方法は次のとおりです。

  1. http://msysgit.github.ioから Windows 用の GIT をインストールします。
  2. http://gittf.codeplex.comから git-tf をインストールします。
  3. 私の git リポジトリ c:\git のローカル フォルダーを作成します。
  4. そのフォルダーで GIT Bash プロンプトを開きます (現在のフォルダーになります)。
  5. $ git tf clone http://old-tfs-host:8080/DefaultCollection $/myProject/myBranch --deep
  6. tf フォルダーと git-tf ファイルを削除します
  7. USERMAP ファイルにコピーする
  8. $ git tf configure --deep --keep-author --force http://new-tfs-host:8080/DefaultCollection $/myProject/myBranch
  9. $ git tf pull
  10. $ git commit -a -m "Initial import from TFS 2012"
  11. $ git tf checkin --deep

約 57% の処理後にエラーが発生します

git-tf: 次のエラーのため、TFS への変更を保留できませんでした。エラーを修正して、チェックインを再試行してください。項目 $/path-to-file には、保留中の変更が既に含まれています。

質問- ファイルの保留中の変更を解決するにはどうすればよいですか? このチェックインを行っている間、リポジトリには誰もいないので、エクスポートが破損しているように見えますか?

他の 2 つのブランチでも同じ方法を使用しましたが、成功しています。


編集問題は、ファイルの名前が変更され、大文字と小文字が異なるだけであることがわかりました。だから私が持っているのと同じ変更で

  1. delete $/source-file
  2. edit $/project-file
  3. add $/Source-File

明らかに名前を変更していますが、1行目で削除されたファイルは3行目のファイルと同じですが、ファイル名の大文字と小文字が異なるだけです。

そのため、試してみ$ git config --global core.ignorecase falseましたが、同じ変更で同じファイルを削除および追加するという問題は解決しません。