タグ付けされた質問 「git-svn」

git-svnはgitとSubversion間の双方向ブリッジであり、リモートのSubversionリポジトリをローカルGitリポジトリとして使用しながら、変更をSubversionに送り返すことができます。

30
履歴のあるSVNリポジトリを新しいGitリポジトリに移行するにはどうすればよいですか?
私はGitのマニュアル、FAQ、Git-SVNのクラッシュコースなどを読んで、すべてこれとそれについて説明していますが、次のような簡単な説明はどこにもありません。 SVNリポジトリ: svn://myserver/path/to/svn/repos Gitリポジトリ: git://myserver/path/to/git/repos git-do-the-magic-svn-import-with-history \ svn://myserver/path/to/svn/repos \ git://myserver/path/to/git/repos 私はそれがそれほど単純であるとは思いません、そしてそれが単一のコマンドであるとは思いません。しかし、私はそれが何かを説明しようとしないことを期待します-この例で与えられるべきどのようなステップを言うためだけに。

12
ファイルの終わりに改行なし
行うとき git diffと、「ファイルの終わりに改行はありません」と表示されます。 ファイルの終わりに改行はありません。大したことは何ですか? メッセージの意味は何ですか?それは私たちに伝えようとしていることは何ですか?
472 git  git-svn 

9
gitを使用して特定のファイルへの変更を確認する
git diffコマンドを使用して変更を確認できることはわかっていますが、私が理解している限り、これはディレクトリベースです。つまり、現在のディレクトリにあるすべてのファイルのすべての変更が提供されます。 特定のファイルの変更のみを確認するにはどうすればよいですか?セイ、私が変更されたファイルはfile_1.rb、file_2.rb、...、file_N.rbが、私は、ファイルの変更に興味を持っていますfile_2.rb。(コミットする前に)これらの変更を確認するにはどうすればよいですか?
472 git  git-svn 

17
既存のGitリポジトリをSVNにプッシュする
私はすべての作業をGitで行っており、GitHubにプッシュしています。私はソフトウェアとサイトの両方に非常に満足しており、この時点で自分の作業方法を変更したくありません。 私のPhDアドバイザーは、すべての学生に、大学でホストされているSVNリポジトリに作業を保存するように依頼しています。既存のSVNリポジトリをGitにプルダウンしようとする大量のドキュメントとチュートリアルを見つけましたが、Gitリポジトリを新しいSVNリポジトリにプッシュすることについては何もありませんでした。git-svnと新鮮なブランチを組み合わせてこれを行う方法がいくつかあるに違いないと思いますが、私はGitの初心者であり、それらのどれにも自信がありません。 次に、いくつかのコマンドを実行して、選択したときにコミットをそのSVNリポジトリーにプッシュしたいと思います。Gitを使い続け、SVNリポジトリにGitの内容をミラーリングさせたいと思います。 これが何かの違いを生むなら、私がSVNにコミットする唯一の人になります。
384 svn  git  git-svn 

3
Subversionリポジトリから最後のn個のリビジョンをgit-svnで複製する方法は?
問題 Subversionリポジトリからgit-svnで浅いコピーをどのように作成しますか?たとえば、最後の3つのリビジョンのみをプルするにはどうすればよいですか? git cloneコマンドは、オプションを使用する場合のGitリポジトリから最後のn個のリビジョンを取得することができ--depth、すなわちリポジトリの浅いコピーを取得します。例: git clone --depth 3 git://some/repo myshallowcopyrepo git-svnに同様のオプションはありますか? これまでの私の発見 これまでのところ、プルするリビジョンは-rNどこにあるのかを見つけましたN。例: git svn clone -rN svn://some/repo ドキュメントによると、使用する可能性があります-r$REVNUMBER:HEAD。エラーメッセージを返した最新の3つのリビジョンを取得するために、次のことを試みました。 $ git svn clone --prefix=svn/ -s -rHEAD~3:HEAD http://some/svn/repo . revision argument: HEAD~3:HEAD not understood by git-svn それでHEAD~3、3番目で最後のリビジョン534の実際の番号に置き換えました。これは機能しましたが、最初に3番目で最後のコミットのリビジョン番号を知る必要があります。 $ git svn clone --prefix=svn/ -s -r534:HEAD http://some/svn/repo . ドキュメンテーション git-clone git-svn

2
gitリポジトリからoriginを削除する方法
基本的な質問:gitリポジトリとクローン元のgit repoの関連付けを解除するにはどうすればよいですか? git branch -a ショー: * master remotes/origin/HEAD -> origin/master そして、私は起源のすべての知識と関連する改訂を削除したいと思います。 長い質問:既存のSubversionリポジトリを利用して、そこから小さなgitリポジトリをいくつか作成したいと考えています。新しいgitリポジトリにはそれぞれ、関連するブランチのみの完全な履歴が必要です。以下を使用して、必要なサブツリーだけにレポをプルーニングできます。 git filter-branch --subdirectory-filter path/to/subtree HEAD しかし、結果のリポジトリには、オリジン/マスターブランチの下にある現在破棄されたサブツリーのすべてのリビジョンが含まれています。 -Tフラグをgit-svnに使用して、そもそもSubversionリポジトリの関連するサブツリーを複製できることを理解しています。それが後でgit filter-branch --subdirectory-filtergitリポジトリのコピーで複数のインスタンス化を実行するよりも効率的であるかどうかはわかりませんが、いずれにしても、原点とのリンクを解除したいと思います。
279 git  git-svn 

3
git-svn:git経由で新しいsvnブランチを作成するにはどうすればよいですか?
私はsvnリポジトリを追跡するgitリポジトリを持っています。を使用してクローンを作成しました--stdlayout。 私は新しいローカルブランチを作成しました git checkout -b foobar 今、私はこのブランチを…/branches/foobarsvnリポジトリに入れたいと思っています。 どうすればいいですか? (多くの調査テキストを省略しました。気になったら質問履歴を参照してください)

9
リポジトリをフェッチした後に作成されたリモートブランチについてgit-svnにどのように通知しますか?
私はgit-svn会社の中央のSubversionリポジトリに対して作業するために使用しています。最近、セントラルリポジトリに新しい機能ブランチを作成しました。 Gitにそれを伝えるにはどうすればよいですか?実行すると、Subversionリポジトリに対してgit branch -r実行fetchしてGitリポジトリを初期化したときに存在していたブランチしか表示されません。
193 git  git-svn 


5
gitで変更された(ただしコミットされていない)ファイルを無視しますか?
変更(削除)されたがコミットすべきでないファイルを無視するようにgitに指示できますか? 状況には、リポジトリにサブディレクトリがあり、そこにはまったく関心がないものが含まれているため、オートコンプリートなど(IDEで)に表示されないように削除しました。 しかし今、そのフォルダーを.gitignoreに追加すると、何も変更されず、すべてのものはgitステータスによって削除されたように表示されます。 どちらかの方法でgitにそれを無視させる方法はありますか? (または、git-svnを使用しているので、変更をローカルgitにコミットして、svnリポジトリに渡されないことを確認できますか?)
182 git  git-svn  ignore 

6
SubversionリポジトリをGitサブモジュールとして持つことはできますか?
GitリポジトリにGitサブモジュールとしてSubversionリポジトリを追加する方法はありますか? 何かのようなもの: git-svn submodule add https://svn.foo.com/svn/proj --stdlayout svn-project where https://svn.foo.com/svn/projはSubversionリポジトリを指します。 git-svnSubversionリポジトリとやり取りできるものがあることは知っています。ですから、Subversionリポジトリをチェックアウトgit-svnしてサブモジュールとして使用する方法があるのではないかと考えています。
154 svn  git  git-svn 

7
sshキーを削除する方法は?
現在、古いSSHキーをサーバーにアップロードしています。問題は、~/.sshディレクトリを失ったことです(オリジナルid_rsaとid_rsa.pubファイルを含む)。 したがって、古いSSHキーをサーバーから直接削除して、新しいSSHキーをアップロードしたいと思います。 私は成功せずに次のコマンドを試しました: $> ssh-add -D SSHキーを完全に削除する方法はありますか?

12
git-mergeが行末の違いを無視することは可能ですか?
git merge行末の違いを無視することは可能ですか? たぶん私は間違った質問をしています...しかし: 私は試してみましたconfig.crlf inputが、特に事後に適用したときに、物事は少し乱雑で制御不能になりました。 1つには、事後にこの構成を適用しても、このオプションを適用する前にリポジトリにコミットされたファイルには影響がないようです。もう1つは、突然すべてのコミットがCRLFがLFに変換されることに関する多くの迷惑な警告メッセージが発生することです。 正直なところ、どの行末が使用されているかは気にしません\n。個人的にはUnixスタイルを好みますが、何でもかまいません。私が気にしgit mergeているのは、少し賢く、行末の違いを無視することです。 時々私は2つの同じファイルを持っていますが、gitはそれらが異なる行末文字を使用しているという理由だけで競合しているとマークします(そして競合はファイル全体です)。 更新: オプションをgit diff受け入れることがわかりましたが--ignore-space-at-eol、git mergeこのオプションも使用できるようにすることは可能ですか?
150 git  merge  git-svn  line-endings  eol 

6
git selectionはファイルからローカルの変更を元に戻します
svn repoを追跡しているgit repoで、1つのファイルにいくつかの編集を加えました。 これらの変更(svn revertなど)を元に戻したいのですが、ファイルの一部のみです。 ファイルの差分を表示し、不要な変更を破棄(元に戻す)し、必要な変更を保持したい。 の git add -i コマンドにはそれを行うオプションがあるようですが、まだこれをステージングしたくありません。

6
gitにマージした後、git-svn dcommitは危険ですか?
git-svnを試す動機は、簡単なマージとブランチです。それから私は男git-svn(1)が言うことに気づきました: コミットする予定のブランチでgit-mergeまたはgit-pullを実行することはお勧めしません。Subversionは、合理的または有用な方法でマージを表すものではありません。そのため、Subversionを使用しているユーザーは、作成したマージを見ることができません。さらに、SVNブランチのミラーであるgitブランチからマージまたはプルすると、dcommitが間違ったブランチにコミットする可能性があります。 これは、svn / trunk(またはブランチ)からローカルブランチを作成し、ハックして、svn / trunkにマージしてから、dcommitできないことを意味しますか?私は、svnユーザーがsvn pre 1.5.xでマージするのと同じ混乱を常に目にすることを理解していますが、他の欠点はありますか?その最後の文も私を心配しています。人々は日常的にこのようなことをしていますか?
133 svn  git  merge  branch  git-svn 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.