問題タブ [mercurial]
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.
mercurial - Mercurial: 競合するマージの後、エディターに競合ファイルが表示されない
マージの競合が発生したときにエディターを起動する問題を解決した後 - Mercurial: マージの競合が検出されたときにエディターが表示されない
別の問題が発生しました。エディターは起動しますが、次の順序でファイルを開きます。
hello.c hello.c~base.???? hello.c~other.????
しかし、私が本当に見たいのは、競合を強調するファイルです。これは最初の hello.c であるはずですが、hello.c はヒントを表示するだけです。
何かアドバイス?
よろしく、
クリス
ide - Mercurialプラクティス:IDEとスケーラビリティでの使用
もちろん、私はSCMツールの有用性を確信していますが、SCMツールの実験的なユーザーではありません。以前の仕事ではあいまいな商用ツールを使用し、現在の仕事ではPerforceを使用し、小さな個人的なプロジェクトでTortoiseSVNを少し試しましたが、検索やバックアップなどを行うために、いたるところに.svnフォルダーがたくさんあるのは嫌いでした。難しい。それから私は分散型SCMの興味を発見し、個人的な個人的なニーズのために、明らかに単純な(gitよりも)Mercurialの方法を選択しました。私はそれを適切に使用することを学び、ウィキの一部を読み、優れたPDFブックの真っ只中にいます。
たとえば、Mercurialの作業慣行では、「ローカルで複数のツリーを使用することを躊躇しないでください。Mercurialはこれを高速かつ軽量にします。」および「作業する機能ごとに、新しいツリーを作成します。」これらは興味深く賢明なアドバイスですが、ブランチが慎重に計画され(そして管理者によって処理される)「聖なる」中央リポジトリがあり、チェンジリストは(上級)ピアによってチェックされなければならない集中型SCMで私の小さな習慣を少し傷つけますビルドなどを壊してはいけません:-)新しいブランチでの作業を開始するにはかなりの時間がかかります...
したがって、上記に照らして2つの質問があります。
IDEなどのコンテキストで、多くのクローンを作成することはどの程度実用的ですか?プロジェクトに構成/設定ファイル、makefile、Antスクリプト、シェルスクリプトなどがあり、パスの更新が必要な場合はどうなりますか?(はい、おそらく悪い考えです...)たとえば、Eclipseでクローンをコンパイルして実行する場合は、Javaビルドパス、実行/デバッグターゲットなどを微調整して、さらに別のプロジェクトを実行する必要があります。 。Eclipseプラグインがそのタスクを容易にしない限り。ここの施設が恋しいですか?
その規模はどのようになりますか?大規模なコードベースではHgは問題ないことを読みましたが、私は困惑しています。私の仕事では、約200万行のJavaアプリケーション(まあ、いくつかは大きな共通カーネルの周りにあります)があり、コードだけで約110MBの重みがあります。古い(2004)Windowsワークステーションでクリーンコンパイルを実行すると、50MBのクラスファイルを生成するのに約15分かかります。3つのファイルを変更するためにプロジェクト全体のクローンを作成しているとは思いません。では、ここでの実践は何ですか?
私はまだこれらの質問が私の読書で扱われているのを見たことがないので、これが有用なスレッドになることを願っています。
mercurial - OpenJDK のソースをオンラインで参照することはできますか?
SourceForge のプロジェクトと同じように、OpenJDK のソース コードをオンラインで参照することはできますか? Mercury を使ったことがなかったので、戸惑いました。
(注: ソースをダウンロードしたくありません。オンラインで参照して、いくつかのメソッドがどのように実装されているかを確認したいだけです。)
git - Git リポジトリの双方向ミラーを別の SCM に提供するにはどうすればよいですか? (bzr、hgなど)
過去 6 か月ほど、メインの Perforce リポジトリの双方向 Git ミラーを使用して、ワークフローの評価を行ってきました。私はそれを使用することに恋をしたと言わざるを得ませんが、これまでのところ1つの致命的な欠陥がありました.Windowsのサポートはひどいです.
通常、これは私にとって問題ではありませんが、今は問題です。Git リポジトリでローカルにコミットされたいくつかの作業を行う必要がありますが、このボックスの Git ディストリビューションには解決できない問題があるため、作業する必要があるマシンからアクセスできません。
とにかく、できれば 2 番目のミラーを実行したいと考えています。今回は Git リポジトリに便乗していますが、Mercurial または Bazar を介してサービスを提供しています。有望に見えるいくつかのツールと、ブログのコメントで、人々はこれを行ったが完全ではないと言っているいくつかの参照を見つけました。
Windowsで問題なく動作する別のDVCSを使用して、Gitリポジトリへの双方向ミラーを維持する簡単な方法があるかどうか、誰か教えてください。
お手数おかけしますがよろしくお願いいたします...
ジェイミー
mercurial - Mercurialのベストプラクティス:ブランチとクローン、および部分的なマージ?
...だから私はMercurial(、、)の簡単なものにadd
慣れ、.hgignoreファイル(yay!)について知り、ブランチ(、commit
)を作成して切り替えるコツをつかんだ。diff
branch
update -C
しかし、私には2つの大きな質問があります。
ブランチ「Branch1」にいて、ブランチ「Branch2」からの変更のすべてではなく一部を取得したい場合、どうすればよいですか?特に、すべての変更が1つのサブディレクトリにある場合。(リポジトリ全体のクローンを作成し、Beyond Compareなどのディレクトリマージツールを使用して編集内容を選択して選択できると思います。ただし、1つのファイルまたは1つのディレクトリの変更を分離する方法があるはずです。)
でブランチを切り替えるの
update -C
はとても簡単なようですが、なぜわざわざを使用するのだろうかと思いclone
ます。私はいくつかの理由しか考えられません(以下を参照)-私が見逃している他の理由はありますか?a。2つのバージョン/ブランチを同時に操作する必要がある場合(たとえば、パフォーマンスメトリック差分を実行する)
b。バックアップ用(
clone
物理的に異なる場所にあるネットワークドライブへのリポジトリ)c。上で述べたように、pick&chooseマージを実行します。
svn - ソース管理管理のインターワーキングはどのように実現できますか?
以前にも関連する質問が寄せられましたが、2 つのソース コントロール管理 (SCM) システム間の相互運用性を実現する方法についてのアイデアを知りたいと思います。たとえば、あらゆる SCM (Mercurial、Git、SVN、CVS、Perforce、ClearCase など) を考慮することができます。
主に、ClearCase を SVN や Git/Mercurial と併用できるかどうかに関心があります。
リモートの ClearCase で管理されているソース ツリーを別の SCM (ClearCase 以外) で管理するにはどうすればよいですか?
他の人は ClearCase を使用できますが、「他の」SCM を使用して、そのリポジトリで変更をコミットしたいと考えています。ClearCase リポジトリの変更は、すぐにまたは定期的に行う必要があります (また、ClearCase リポジトリからの更新は、最新のソースがあることを確認するために定期的に行う必要があります)。
(その他/関連する)例/経験は大歓迎です。ありがとう !
PS: これはClearCase をダンプすることではなく(喜んでそうします)、同じソース ツリーで同時に 2 つのソース管理を操作することです。
svn - 一部のバージョン管理システムのマージが優れている理由は何ですか?
分散型 VCS (git、mercurial など) の多くは、Subversion などの従来の VCS よりもマージが優れていると聞いています。これは何を意味するのでしょうか?合併をより良くするために、彼らはどのようなことをしていますか? これらのことは、従来の VCS で実行できますか?
おまけの質問: SVN 1.5 のマージ トラッキングは、競技場を平準化しますか?
command-line - Mercurial:コマンドラインでの複数行のコミットメッセージ?
コマンドラインでmercurialに複数行のコミットメッセージを指定するにはどうすればよいですか?
動作しません。ログには次のように表示されます。
git - gitリポジトリをMercurialに変換するにはどうすればよいですか?
私はソースコードリポジトリとしてgitを使用してJavaアプリケーションを開発してきました。プロジェクトを他のJava開発者と共有したいのですが、hgが最も使用されているようです。
私の質問は、gitリポジトリをhgに変換するにはどうすればよいですか?
「gitをhgに変換」をグーグルで検索してみた場合、検索ヒットはすべてhgからgitへの変換に関するものです。TortoiseHgも使用しています。
java - Mercurial と Java プロジェクトの一種の継続的インテグレーション ワークフロー
私が働いているJavaのプロジェクトがあります。
Mercurial でプロジェクトを作成するには、すべてのクラスのリポジトリを作成する必要があることを知っています。
クラスがたくさんあるので、リポジトリのコピーと私がしなければならない変更で作られたjarのコピーを持つことができると思います。
したがって、Mercurial 用語では次のようになります。
- すべてのクラスを含むメイン リポジトリ
- 変更と新しいクラスを含む小さなレポ
BリポジトリからAリポジトリにマージしたい。そして、B リポジトリに存在するクラス (*.java) のみをプルして更新したいと考えています。
私はこれを試してみましたが失敗しました:
- B リポジトリを作成するには、A リポジトリのクローンを作成し、すべてのファイルを削除します。
- .java を変更する必要があるときは
wget
、ローカル マシンの Mercurial サーバーで特定のファイルを編集します。ファイルが新しい場合は、hg add を実行するだけです。 hg commit -I file1 -i file2 ... -i fileN
Bリポジトリの作業フォルダに存在するすべてのファイルに対して行うコミットを行うには。
次に、失敗した部分:
- 既存のファイルだけを hg 更新することはできません。
- B レポが A レポにマージされると、すべて問題ありません。
-I
しかし、パラメータでマージされた状態の hg commit を実行できません。そのすべてか無か。 - リポジトリからプルして更新しようとすると、同じ問題が発生します 4.
hg pull -f
クローンではなく、B リポジトリの無関係なリポジトリから開始することを認識しています。しかし、アップデートの同じ問題があります。そして、それはかなり醜く見えます。
移植プラグインが役立つと思います。これも読みました Mercurialで2つのプロジェクトを結合する方法? .
この履歴が B レポで生成されたとしても、A レポでファイルの履歴を保存することは必須です。
これを達成するための最良の方法を知っていますか?
ありがとう