タグ付けされた質問 「dvcs」

DVCSは、分散バージョン管理システムの略です。

2
Mercurialで移植片を使用した結果
最近、Mercurialでリリースブランチを維持するときに変更をスキップすることについていくつかの質問がありました。例えば: Mercurial:ダミーのマージ後、ブランチ固有の変更が引き続き返される あるブランチのMercurialバックアウトが他のブランチに影響を与えるのはなぜですか? これは2.0で導入されて以来、graftこの問題を回避するためにを使用することについて疑問に思っていました。次のようなリビジョンツリーがあるとします。 A---B---C---D---E---F---G---H---I---J 悪の変更をスキップするリリースブランチを作成する必要があるとしますE。 hg update -r D hg graft "F::J" 私たちに与える: A---B---C---D---E---F---G---H---I---J \ --F'--G'--H'--I'--J' Q1:ここで何が起こったのですか?私はそれが理解できるtransplantの外にパッチを生成しているだろうF::Jし、その後にそれらを適用しDますが、graftむしろパッチよりも3ウェイマージを使用すると言われています。それで……それはどのように機能しますか?なぜそれが良いのですか? 今修正しE、それをリリースブランチにマージするとします。 --E2----------------- / \ A---B---C---D---E---F---G---H---I---J---M1 \ \ --F'--G'--H'--I'--J'---------M2-- M1は単純なマージです。特別なことは何もありません。M2は、「同じ」(または少なくとも同等の)変更がオンになっているブランチをマージしています。 Q2:このマージは、通常の3ウェイマージ使用しているD、J'とM1? Q3:mercurialは、マージ操作に役立つ移植操作に関する追加情報を保存/使用していますか? そして最後に... Q4:このようなフローの潜在的な問題は何ですか?

7
すべてのローカルチェンジセットを削除し、ツリーに戻します
私はMercurialを使用していて、3つの頭を持つローカルでひどい混乱に陥っています。プッシュすることはできません。ローカルの変更とコミットをすべて削除し、完全にクリーンなコードとクリーンな履歴からやり直したいだけです。 言い換えると、(a)リモートブランチの先端に存在するものとまったく同じコードがローカルにあり、(b)ローカルコミットの履歴がないことです。 hg update -Cローカルの変更を上書きすることを知っています。しかし、ローカルコミットを削除するにはどうすればよいですか? 明確にするために、私がローカルで行った作業を保存することに関心はありません。完全にクリーンなローカルチェックアウトに戻す最も簡単な方法が欲しいだけです。

2
別のリポジトリからのGitプル
と呼ばれるリポジトリGenericがあります。これは一般的なアプリケーションです。私はそれをと呼ばれるリポジトリに分岐しましたAcme。これは、アプリケーションに保存されたGenericリポジトリに基づいて構築され、それにAcme Coブランドを追加します。 でコア機能に変更を加えた場合、でコア機能に加えた最新の変更でリポジトリGenericを更新しAcmeますGeneric。どうすればいいですか? 私が知る限り、私は基本的に上流リポジトリで行われた変更を現在のフォークにマージしようとしています。 何か意味がある場合は、これを実行しようとしています。これは、(Acmeこの例のように)個々のクライアントに基づいて構築およびブランド化する汎用アプリケーションがあるためです。よりクリーンな方法がある場合は、お知らせください。

4
移動したファイルの履歴がgit logに表示されないのはなぜですか?それに対して何ができますか?
私はを使用していくつかのファイルの名前を変更しましたgit mv、使用されgit stash、HEADを(それを変更せずに)すばやく確認してgit stash popから、全体を再び取得しました。私の動きはコミットリストから消えていたので、私はそれらをやり直しました、git rmそしてコミットメッセージはgitが名前の変更が名前の変更であることを発見したと主張しました。だから私はそれ以上は考えませんでした。 しかし、今、コミット後、移動したファイルの履歴を取得できません!問題のコミットについてgitが言っていることは次のとおりです: ~/projects% git log --summary commit de6e9fa2179ae17ec35a5c368d246f19da27f93a Author: brone Date: Wed Dec 8 22:37:54 2010 +0000 Moved R_DebugUI into runtime delete mode 100644 test/R_DebugUI_iOS.h delete mode 100644 test/R_DebugUI_iOS.m create mode 100644 system/runtime/src/R_DebugUI_iOS.h create mode 100644 system/runtime/src/R_DebugUI_iOS.m <<snip older commits>> ~/projects% 現在、これらの移動されたファイルの1つの履歴を取得しようとしているため、古いバージョンを表示できますが、あまり有用なものはありません。 ~/projects/system/runtime/src% git log …
90 git  history  dvcs  rename  git-log 

2
Mercurialでのマージを中止する方法は?
私はマージを間違えました。元に戻してからもう一度やり直したいのですが。 コミットされる前にマージを元に戻す方法はありますか? hg revert私が望むことをしません、それはファイルのテキストを元に戻すだけです。Mercurialは、マージの2回目の試行を中止し、元のマージがまだコミットされていないことを訴えます。 hg mergeコマンドの後、コミットされる前にマージを元に戻す方法はありますか?

13
Windowsの下でのGit:MSYSまたはCygwin?
プロジェクトをgitに移行する予定ですが、現在、Windowsで最適なオプションや最も安定したオプションはどれか疑問に思っています。 私が収集したものから、基本的に2.5のオプションがあります。 MSYSgit Cygwinの下のgit (別名2.5)CygwinプロンプトからのMSYSgit(Cygwin gitがすでにインストールされている場合)。 注:IMO Cygwin自体は大きなプラスです。これは、ほとんどすべての* nixコマンドラインツールにアクセスできるためです。MSYSgitbashでは、これらのツールのかなり小さなサブセットにしかアクセスできません。 それを踏まえて、どのようなオプションを提案しますか?
80 git  cygwin  msysgit  dvcs 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.