問題タブ [git-svn]

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 投票する
3 に答える
15524 参照

svn - git-svn を使用して svn ブランチを切り替える方法は?

複製

git-svn で特定の svn ブランチをリモート リポジトリとして使用するにはどうすればよいですか?

私は git-svn を使用して、svn 上の他の誰かによる開発を追跡しています。gti-svn を使用して、ある svn ブランチから別の svn ブランチに切り替える方法を理解しようとしています。私が見つけることができたすべての例は、実際のブランチの代わりに場所を切り替える方法として svn switch を使用することについて話しています。

基本的に、svn fetch を使用して、/svn/branch/1.2 ではなく、/svn/branch/1.3 からプルを開始したいと考えています。

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

svn - git svn dcommit to sourceforge は失敗しますが、svn 経由で直接動作します

Subversion を使用する SourceForge のオープン ソース プロジェクトに取り組んでいます。数日前git svn clone、Git を使用して変更を追跡し始めました。

しばらくしてdcommit、変更を上流に戻そうとしました。しかし、それは次のエラーで失敗しました:

Autorisierung schlug fehl: MKACTIVITY von »/svnroot/housebot/!svn/act/b8dbd0ff-f224-4899-b6fe-06a514fa2dbf«: Autorisierung schlug fehl: Could not authenticate to server: rejected Basic challenge (https://housebot.svn.sourceforge.net) at /sw/lib/git/git-svn line 3649

(ドイツ語は無視してください。「承認に失敗しました」などと表示されます。) そのため、SSH キーが正しく設定されていないと思いましたが、svn を介して変更をコミットしようとすると、完全に正常に動作します。

だから私はここで実際に何がうまくいかないのか途方に暮れています。svn と git svn の両方で機能するか、まったく機能しないかのいずれかであると想定していました。

0 投票する
4 に答える
26223 参照

svn - svn リポジトリを既存の git リポジトリに追加しますか?

git svn init を使用して git で svn リポジトリを追跡できることは知っていますが、これはまったく新しいリポジトリを作成する場合のためのものです。

私の状況では、現在既に既存の git リポジトリがあり、現在の git リポジトリのリモート ブランチにすることで svn リポジトリのトランクを追跡したいと考えています。

助言がありますか?

0 投票する
3 に答える
145118 参照

git - Subversionリポジトリから最後のnリビジョンをgit-svnクローンする方法は?

問題

Subversion リポジトリから git-svn を使用して浅いコピーを作成するにはどうすればよいですか? たとえば、最後の 3 つのリビジョンだけをプルするにはどうすればよいですか?

オプションを使用すると、このgit cloneコマンドは Git リポジトリから最後の n リビジョンを取得できます--depth。つまり、リポジトリの浅いコピーを取得します。例:

git-svn に同様のオプションはありますか?

これまでの私の発見

これまでのところ、プルするリビジョンが-rNどこにあるかというオプションしか見つかりませんでした。N例:

ドキュメントによると、 を使用する可能性があります-r$REVNUMBER:HEAD。エラーメッセージを返した最後の3つのリビジョンを取得するために、次のことを試しました。

そのため、3 番目で最後のリビジョン 534 の実際の番号に置き換えHEAD~3ました。これは機能しましたが、最初に 3 番目で最後のコミットのリビジョン番号を把握する必要があります。

ドキュメンテーション

gitクローン

git-svn

0 投票する
3 に答える
8529 参照

git-svn - git-svn fetch 中に RA レイヤー要求が失敗しました

git svn を使用して、Subversion リポジトリと同期します。

エラーメッセージが表示されました:

なぜ、どうすればこれを修正できますか?

0 投票する
7 に答える
6273 参照

git - Git Svn の競合の解決

私は Git-Svn を使用して職場で Svn リポジトリとやり取りしていますが、私の人生で競合を効果的に解決する方法を見つけることができないようです。このトピックに関する他の質問を読みましたが、明らかに、私は常にある種の無限ループに陥っているように見えるため、さらに改善する必要があります。リベースし、mergetool (meld) を使用して競合を解決し、すべてが終了したら、dcommit を実行しようとすると、コミット エラー中にマージ競合が発生します。

これが重複しているように感じるのは承知していますが、フラストレーションから、私がこれについてどのように行っているかについて非常に具体的な詳細を示して、もう一度質問させていただきます。

私のセットアップ:

リモート ブランチ (svn/trunk)、ローカル ブランチ (trunk)、および通常作業する別のローカル ブランチ (working-trunk) があります。トランクは svn/trunk からチェックアウトされ、working-trunk はトランクからチェックアウトされました。

これが私がやってきたことです:

  1. 私のトランクで、git svn rebase(競合を返します)
  2. git mergetool
  3. [そのファイルの競合を解決する]
  4. マージされたファイルを meld から保存し、meld を閉じます。
  5. git add .
  6. git rebase --continue
  7. 【すすぐ、繰り返す】
  8. を使用したかどうかを尋ねるメッセージが表示されgit addたら、git rebase --skip

報告されたすべての変更の最後に到達すると、すべてが停止し、この時点で何をすべきかわからなくなる可能性があります。Git はコミットするものが何も表示されず、トランクに戻ったように見えます。Git では dcommit が許可されますが、その後すぐにリベースを試みると、解決したばかりの競合を再解決することになります。

ここには明らかに欠けている重要な部分がありますが、それが見えないだけで、多くの問題とフラストレーションを引き起こしています. Git ではマージは簡単かもしれませんが、そうではないことは確かです。

ありがとう。

更新:それが問題の一部 (またはすべて) である場合に備えて、私のワークフローを説明するために簡単な更新を捨てたかっただけです。

まず、svn/プレフィックスを使用してリポジトリを複製すると、svn/trunkリモート ブランチが作成されます。とすれば:

  1. リモートをgit co -b trunk svn/trunkローカルブランチにチェックアウトします。
  2. ローカルトランクが常にリモート トランクをミラーリングできるように、もう 1 段階の分離をgit co -b working-trunk作成するために使用する作業ブランチを作成します。
  3. デフォルトのマスター ブランチを削除します (svn を使用する場合、「マスター」よりも「トランク」の観点から考える方が簡単だと思います)。

すべてのブランチを取得したら、通常のワークフローは次のようになります。

  1. working -trunkで、変更を加えてコミットします。
  2. git co trunkgit svn rebase.
  3. 新しいコードがリベースされたと仮定すると、I git rebase working-trunk.
  4. git co working-trunk
  5. git merge trunk
  6. git rebase trunk
  7. git co trunk
  8. git merge working-trunk
  9. git svn dcommit

たくさんの手順があることはわかっていますが、それがここや他の場所で誰もが推奨していることです。私の致命的な欠陥はそのプロセスのどこかにあるのでしょうか?

再度、感謝します。

0 投票する
4 に答える
9809 参照

git - SVN チェックアウトを変換して git を使用する (git-svn)

バージョン管理のためにsvnに保持されているソフトウェアを使用しています。git (git-svn) を使用したいのですが、ソフトウェアを使用するには多くのセットアップと構成が必要です。svn 経由ですべてのコードをチェックアウトするなど、すべてのセットアップを処理するツールがあります。

git-svn のすべてのドキュメント (私が見つけたもの) には、git-svn を使用して新たにチェックアウトする必要があります。

git-svn を使用できるように、既存の svn チェックアウトを変換する方法はありますか?

0 投票する
3 に答える
4406 参照

svn - MacPorts 経由でインストールした後、Mac OS X Leopard で git-svn が見つからない

わかりました、誰かがこの問題を抱えていて、私を助けてくれると確信しています。

OSX Leopard (10.5.6) で git-svn を動作させようとしています。MacPorts を使用して、次のようにインストールを実行しました: sudo port install git-core +svn

ただし、git-svn はインストールされておらず、使用できません。長い依存関係のインストール中にエラーが発生しなかったので、途方に暮れています。

ご意見をお待ちしております。

0 投票する
10 に答える
81671 参照

git - git-merge が行末の違いを無視することは可能ですか?

git merge行末の違いを無視することは可能ですか?

多分私は間違った質問をしている...しかし:

使用してみましたが、特に事後config.crlf inputに適用したときに、物事が少し乱雑になり、制御不能になりました。

1 つには、事後にこの構成を適用しても、このオプションを適用する前にリポジトリにコミットされたファイルには影響しないようです。もう 1 つのことは、突然、すべてのコミットで、CRLF が LF に変換されているという迷惑な警告メッセージが大量に表示されるようになったことです。

正直なところ、どの行末が使用されているかはあまり気にしません。個人的には Unix スタイル\nの方が好きですが、何でも構いません。私が気にかけているのはgit merge、少し賢くなり、改行の違いを無視することだけです。

2 つの同一のファイルがある場合もありますが、異なる行末文字を使用しているという理由だけで、git はそれらを競合しているとマークします (競合はファイル全体です)。

アップデート:

git diffがオプションを受け入れることがわかりました。このオプションも使用--ignore-space-at-eolできるようにすることはできますか?git merge