差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
ツール:mercurial [2018/02/15 19:04] – [複数のリポジトリの統合 (マージ)] mumeiyamibito | ツール:mercurial [2020/10/12 10:17] (現在) – mumeiyamibito | ||
---|---|---|---|
行 12: | 行 12: | ||
===== インストール ===== | ===== インストール ===== | ||
- | - インストール\\ <code bash>$ sudo apt-get install mercurial</ | + | ==== apt からのインストール |
+ | <code bash>$ sudo apt install mercurial</ | ||
+ | |||
+ | ==== pip からのインストール ==== | ||
+ | <code bash>$ sudo -H pip3 install mercurial</ | ||
+ | |||
+ | * 最新版がインストールされる。 | ||
+ | * '' | ||
+ | |||
+ | ==== 初期設定 ==== | ||
- 設定 | - 設定 | ||
* ホームディレクトリに .hgrc を作成して編集する\\ < | * ホームディレクトリに .hgrc を作成して編集する\\ < | ||
行 100: | 行 110: | ||
* 直前のcommit, | * 直前のcommit, | ||
* 作業領域は変更しない | * 作業領域は変更しない | ||
+ | |||
+ | |||
+ | ==== 誤って複数のファイルをコミットした場合の取り消し ==== | ||
+ | * mercurial では、一度 '' | ||
+ | * 特定のファイルのみのコミットの場合、コミットの章で触れたように、'' | ||
+ | * 指定を忘れて誤って全体をコミットしてしまった場合に戻す方法は '' | ||
+ | $ hg qimport -r REV_ID | ||
+ | $ hg qrefresh FILE | ||
+ | $ hg qfinish -a | ||
+ | </ | ||
+ | * '' | ||
+ | * '' | ||
+ | * これで特定のファイルのみのコミットの修正される。 | ||
+ | * '' | ||
==== リビジョン表示 ==== | ==== リビジョン表示 ==== | ||
行 264: | 行 288: | ||
convert= | convert= | ||
</ | </ | ||
+ | * 参考サイト: | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | ==== リポジトリを修復したい ==== | ||
+ | * 何らかの処理によって、mercurial の管理ディレクトリ内のデータが破損した場合、mercurial の操作をしようとすると '' | ||
+ | * 修復するには以下のコマンドを実行すると復旧できる可能性がある\\ <code bash>$ hg convert --config convert.hg.ignoreerrors=True SOURCE_REPO DEST_REPO</ | ||
+ | * '' | ||
+ | * '' | ||
+ | * 参考サイト: | ||
==== SSH が利用できるリモートサーバとの連携 ==== | ==== SSH が利用できるリモートサーバとの連携 ==== | ||
* mercurial のサーバ構築のサイトの多くは Apache を使った方法を紹介しているが、ただバージョン管理のストレージとして使いたい場合には大掛かり過ぎる気がする (Apache を設定すれば、ウェブ上で公開することが可能である)。ここでは、バージョン管理のストレージとして使う場合を想定して紹介する。 | * mercurial のサーバ構築のサイトの多くは Apache を使った方法を紹介しているが、ただバージョン管理のストレージとして使いたい場合には大掛かり過ぎる気がする (Apache を設定すれば、ウェブ上で公開することが可能である)。ここでは、バージョン管理のストレージとして使う場合を想定して紹介する。 | ||
行 291: | 行 324: | ||
* '' | * '' | ||
* '' | * '' | ||
+ | |||
+ | ==== リポジトリの root ディレクトリパスを調べる ==== | ||
+ | * シェルスクリプトなどに使えるかも。\\ <code bash>$ hg root</ | ||
+ | * 参考サイト: | ||
===== エクステンション ===== | ===== エクステンション ===== | ||
行 328: | 行 365: | ||
* 詳しくは [[https:// | * 詳しくは [[https:// | ||
+ | |||
+ | ==== リポジトリを git リポジトリに変換する ==== | ||
+ | - 変換プログラムをダウンロードする。\\ <code bash> | ||
+ | $ git clone http:// | ||
+ | </ | ||
+ | - 転送先の git リポジトリ (空) '' | ||
+ | $ mkdir NEW_GIT_REPO | ||
+ | $ cd NEW_GIT_REPO | ||
+ | $ git init | ||
+ | </ | ||
+ | - 変換する。\\ <code bash> | ||
+ | $ ../ | ||
+ | </ | ||
+ | * '' | ||
+ | * 参考サイト: | ||
+ | |||
+ | |||
+ | ===== Tips ===== | ||
+ | ==== 一部のサブコマンドで pager を無効化する ==== | ||
+ | * '' | ||
+ | * これらの結果をプロンプトに反映させたい場合や、端末上にその結果を残したい (pager は q キーを押すと、結果が消える) 場合は、設定ファイル '' | ||
+ | [pager] | ||
+ | ignore = SUBCOMMAND [, SUBCOMMND, ...] | ||
+ | </ | ||
+ | * '' | ||
+ | * 複数ある場合は、カンマで区切る | ||
+ | * 参考サイト: | ||
+ | * 一時的に無効化したい場合は、'' | ||
+ | * 例:\\ < | ||
+ | $ hg log --pager false | ||
+ | </ | ||
+ | * 参考サイト: | ||
===== 参考サイト ===== | ===== 参考サイト ===== |