回答:
hg commit --close-branch
ブランチを閉じるのに十分なはずです。(を参照hg commit
)
--close-branch
ブランチをクローズ済みとしてマークし、ブランチリストから非表示にします。
このスレッドも参照してください:
この開発ラインが行き止まりになり、もう迷惑をかけたくないので、ブランチを閉じることを期待しています。
したがって、ブランチが閉じられている場合、閉じたブランチを表示するように明示的に要求しない限り、(ブランチ、ヘッド、ログなどで)ブランチを表示するべきではありません。閉じたブランチがリポジトリに残ることを期待していることに注意する必要があります。これは将来的に役立つ可能性があり、
commit --close-branch
メッセージは少なくともブランチが閉じられた理由を説明する必要があります。
枝の剪定は、まったく別のことです。
注:Mercurialと比較すると、「支店を閉鎖する」ビジネスはGitで欠落していると見なされる側面の 1つです。
gitのブランチは、常に言われますが、使用されて破棄される一時的なものであり、私が知る限り、gitにはブランチが完了したことを同僚に示す方法がありません。
これを行う唯一の方法は、それを削除するか、最終的なマージコミットが表示され、さらなる開発のためにブランチが閉じられていることを彼らに理解してもらうことです。[Mercurialの場合]ブランチを使い終わったら、リポジトリから削除することはできません。代わりに、ブランチを閉じるコミットを発行すると、Mercurialはブランチが閉じたことを通知します。リポジトリの履歴の一部として残ります。
PruningDeadBranchesにあるコマンドであるブランチのクローズを完了する簡単なスクリプトを書きました。
#!/bin/bash
#script to close the not required branch in mercurial
hg up -C $1
if [ $? -eq 0 ]; then
echo "$1 is up"
else
echo "branch not found, please recheck your argument"
exit 1
fi
# if we are here then the branch is up, so we do the following
hg commit --close-branch -m 'this branch no longer required'
echo "$1 is closed"
hg up -C default
echo "default is up"
リポジトリのローカルコピーに移動し、引数を指定してこのスクリプトを実行します。例えば:
$./the_script_above.sh bad_branch_name_to_close
これは次のことを行います。
$ hg update yourbranchnamecontainingspace
。私はあなたのようなMercurialのコマンド実行時に、しかし、あなたがパースエラーを取得し、我々はスペースでbranchnameを作成することができると思い更新を。スクリプトにパラメーターとしてブランチ名を渡すときに、スペース文字をエスケープすることを検討する必要がある場合があります。乾杯。
echo "$1 is up"
ここで複製されていませんか?中then
および後fi
?また、このようなスクリプトは、デフォルトに一度にマージするオプションをサポートしている場合にも役立ちます