# HG changeset patch # User Matt Mackall # Date 1375415525 18000 # Node ID a58251c0568fc5e86089a803ca75f75cc8c01678 # Parent 004f965630d907a3417a93e87d056ad4c2dab541# Parent 064f7d697852ad6de03b7b2cbf452b69f5de6bef merge with stable diff -r 004f965630d9 -r a58251c0568f .hgsigs --- a/.hgsigs Fri Jul 12 11:14:42 2013 +0900 +++ b/.hgsigs Thu Aug 01 22:52:05 2013 -0500 @@ -74,3 +74,5 @@ ddc7a6be20212d18f3e27d9d7e6f079a66d96f21 0 iD8DBQBRkswvywK+sNU5EO8RAiYYAJsHTHyHbJeAgmGvBTmDrfcKu4doUgCeLm7eGBjx7yAPUvEtxef8rAkQmXI= cceaf7af4c9e9e6fa2dbfdcfe9856c5da69c4ffd 0 iD8DBQBRqnFLywK+sNU5EO8RAsWNAJ9RR6t+y1DLFc2HeH0eN9VfZAKF9gCeJ8ezvhtKq/LMs0/nvcgKQc/d5jk= 009794acc6e37a650f0fae37872e733382ac1c0c 0 iD8DBQBR0guxywK+sNU5EO8RArNkAKCq9pMihVzP8Os5kCmgbWpe5C37wgCgqzuPZTHvAsXF5wTyaSTMVa9Ccq4= +f0d7721d7322dcfb5af33599c2543f27335334bb 0 iD8DBQBR8taaywK+sNU5EO8RAqeEAJ4idDhhDuEsgsUjeQgWNj498matHACfT67gSF5w0ylsrBx1Hb52HkGXDm0= +f37b5a17e6a0ee17afde2cdde5393dd74715fb58 0 iD8DBQBR+ymFywK+sNU5EO8RAuSdAJkBMcd9DAZ3rWE9WGKPm2YZ8LBoXACfXn/wbEsVy7ZgJoUwiWmHSnQaWCI= diff -r 004f965630d9 -r a58251c0568f .hgtags --- a/.hgtags Fri Jul 12 11:14:42 2013 +0900 +++ b/.hgtags Thu Aug 01 22:52:05 2013 -0500 @@ -87,3 +87,5 @@ ddc7a6be20212d18f3e27d9d7e6f079a66d96f21 2.6.1 cceaf7af4c9e9e6fa2dbfdcfe9856c5da69c4ffd 2.6.2 009794acc6e37a650f0fae37872e733382ac1c0c 2.6.3 +f0d7721d7322dcfb5af33599c2543f27335334bb 2.7-rc +f37b5a17e6a0ee17afde2cdde5393dd74715fb58 2.7 diff -r 004f965630d9 -r a58251c0568f contrib/check-code.py --- a/contrib/check-code.py Fri Jul 12 11:14:42 2013 +0900 +++ b/contrib/check-code.py Thu Aug 01 22:52:05 2013 -0500 @@ -173,6 +173,8 @@ (r'^\s+(\w|\.)+=\w[^,()\n]*$', "missing whitespace in assignment"), (r'(\s+)try:\n((?:\n|\1\s.*\n)+?)\1except.*?:\n' r'((?:\n|\1\s.*\n)+?)\1finally:', 'no try/except/finally in Python 2.4'), + (r'(?= len(self.series): return start for i in xrange(start, len(self.series)): @@ -1891,8 +1892,8 @@ end = self.series.index(p) except ValueError: return 0 - return next(end + 1) - return next(end) + return nextpatch(end + 1) + return nextpatch(end) def appliedname(self, index): pname = self.applied[index].name diff -r 004f965630d9 -r a58251c0568f hgext/rebase.py --- a/hgext/rebase.py Fri Jul 12 11:14:42 2013 +0900 +++ b/hgext/rebase.py Thu Aug 01 22:52:05 2013 -0500 @@ -174,6 +174,7 @@ raise util.Abort(_('cannot specify both a ' 'revision and a source')) + cmdutil.checkunfinished(repo) cmdutil.bailifchanged(repo) if not destf: @@ -258,10 +259,10 @@ if state[rev] == -1: ui.progress(_("rebasing"), pos, ("%d:%s" % (rev, repo[rev])), _('changesets'), total) + p1, p2 = defineparents(repo, rev, target, state, + targetancestors) storestatus(repo, originalwd, target, state, collapsef, keepf, keepbranchesf, external, activebookmark) - p1, p2 = defineparents(repo, rev, target, state, - targetancestors) if len(repo.parents()) == 2: repo.ui.debug('resuming interrupted rebase\n') else: @@ -591,33 +592,52 @@ raise raise util.Abort(_('no rebase in progress')) +def inrebase(repo, originalwd, state): + '''check whether the workdir is in an interrupted rebase''' + parents = [p.rev() for p in repo.parents()] + if originalwd in parents: + return True + + for newrev in state.itervalues(): + if newrev in parents: + return True + + return False + def abort(repo, originalwd, target, state): 'Restore the repository to its original state' dstates = [s for s in state.values() if s != nullrev] immutable = [d for d in dstates if not repo[d].mutable()] + cleanup = True if immutable: - raise util.Abort(_("can't abort rebase due to immutable changesets %s") - % ', '.join(str(repo[r]) for r in immutable), - hint=_('see hg help phases for details')) + repo.ui.warn(_("warning: can't clean up immutable changesets %s\n") + % ', '.join(str(repo[r]) for r in immutable), + hint=_('see hg help phases for details')) + cleanup = False descendants = set() if dstates: descendants = set(repo.changelog.descendants(dstates)) if descendants - set(dstates): repo.ui.warn(_("warning: new changesets detected on target branch, " - "can't abort\n")) - return -1 - else: + "can't strip\n")) + cleanup = False + + if cleanup: + # Update away from the rebase if necessary + if inrebase(repo, originalwd, state): + merge.update(repo, repo[originalwd].rev(), False, True, False) + # Strip from the first rebased revision - merge.update(repo, repo[originalwd].rev(), False, True, False) rebased = filter(lambda x: x > -1 and x != target, state.values()) if rebased: strippoints = [c.node() for c in repo.set('roots(%ld)', rebased)] # no backup of rebased cset versions needed repair.strip(repo.ui, repo, strippoints) - clearstatus(repo) - repo.ui.warn(_('rebase aborted\n')) - return 0 + + clearstatus(repo) + repo.ui.warn(_('rebase aborted\n')) + return 0 def buildstate(repo, dest, rebaseset, collapse): '''Define which revisions are going to be rebased and where @@ -798,3 +818,6 @@ entry[1].append(('t', 'tool', '', _("specify merge tool for rebase"))) cmdutil.summaryhooks.add('rebase', summaryhook) + cmdutil.unfinishedstates.append( + ['rebasestate', False, False, _('rebase in progress'), + _("use 'hg rebase --continue' or 'hg rebase --abort'")]) diff -r 004f965630d9 -r a58251c0568f hgext/record.py --- a/hgext/record.py Fri Jul 12 11:14:42 2013 +0900 +++ b/hgext/record.py Thu Aug 01 22:52:05 2013 -0500 @@ -519,6 +519,7 @@ will be left in place, so the user can continue working. """ + cmdutil.checkunfinished(repo, commit=True) merge = len(repo[None].parents()) > 1 if merge: raise util.Abort(_('cannot partially commit a merge ' diff -r 004f965630d9 -r a58251c0568f hgext/transplant.py --- a/hgext/transplant.py Fri Jul 12 11:14:42 2013 +0900 +++ b/hgext/transplant.py Thu Aug 01 22:52:05 2013 -0500 @@ -605,6 +605,7 @@ if opts.get('edit'): tp.editor = cmdutil.commitforceeditor + cmdutil.checkunfinished(repo) p1, p2 = repo.dirstate.parents() if len(repo) > 0 and p1 == revlog.nullid: raise util.Abort(_('no revision checked out')) @@ -683,6 +684,9 @@ def extsetup(ui): revset.symbols['transplanted'] = revsettransplanted templatekw.keywords['transplanted'] = kwtransplanted + cmdutil.unfinishedstates.append( + ['series', True, False, _('transplant in progress'), + _("use 'hg transplant --continue' or 'hg update' to abort")]) # tell hggettext to extract docstrings from these functions: i18nfunctions = [revsettransplanted, kwtransplanted] diff -r 004f965630d9 -r a58251c0568f i18n/it.po --- a/i18n/it.po Fri Jul 12 11:14:42 2013 +0900 +++ b/i18n/it.po Thu Aug 01 22:52:05 2013 -0500 @@ -6261,7 +6261,7 @@ msgstr " Se non vengono forniti nomi, aggiunge tutti i file al repository." msgid " .. container:: verbose" -msgstr " .. contenitore:: verboso" +msgstr "" msgid "" " An example showing how new (unknown) files are added\n" @@ -7244,7 +7244,7 @@ " changesets, as it will compare the merge changeset against its\n" " first parent only." msgstr "" -" .. nota::\n" +" .. note::\n" " l'export potrebbe generare un diff inatteso per changeset di \n" " merge, dal momento che confronterà tali changeset solo con\n" " il loro primo genitore." @@ -7797,7 +7797,7 @@ " its first parent. Also, only files different from BOTH parents\n" " will appear in files:." msgstr "" -" .. nota::\n" +" .. note::\n" " log -p/--patch potrebbe generare un diff inatteso per changeset\n" " di merge, in quanto confronta solo i changeset di merge con il loro\n" " primo genitore. Inoltre, solo i file differente da ENTRAMBI i " diff -r 004f965630d9 -r a58251c0568f i18n/ja.po --- a/i18n/ja.po Fri Jul 12 11:14:42 2013 +0900 +++ b/i18n/ja.po Thu Aug 01 22:52:05 2013 -0500 @@ -28,7 +28,7 @@ # # Distributed SCM 分散構成管理ツール # -# abort 中断 +# abort 中止 # active # guard # "hg qguard" 側 ガード設定(状況) @@ -105,6 +105,7 @@ # patch パッチ # platform 稼働環境 # pop(patch) (パッチの)適用解除 +# progress (, in) 未完了(interrupted rebase/graft/histedit/transplant) # pruned xxxxx (obsoleted with no successors) xxxxxx # pull (追加リビジョンの)取り込み # push (追加リビジョンの)反映 @@ -123,6 +124,7 @@ # search 探索 # server サーバ # source url (of subrepo) (サブリポジトリの)参照先 URL +# stop 中断(再開可能な場合)/中止(再開不可能な場合) # subrepo サブリポジトリ # successor (changeset) 後継リビジョン # successors set 後継セット @@ -144,7 +146,7 @@ msgstr "" "Project-Id-Version: Mercurial\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-06-30 23:13+0900\n" +"POT-Creation-Date: 2013-07-31 16:07+0900\n" "PO-Revision-Date: 2009-11-16 21:24+0100\n" "Last-Translator: Japanese translation team \n" "Language-Team: Japanese\n" @@ -1441,8 +1443,8 @@ " It is possible to map alternate email addresses to a main address\n" " by providing a file using the following format::" msgstr "" -" 以下の形式のファイルを指定することで、 リビジョンに記録された電子\n" -" メールアドレスを別のものに変換することが可能です::" +" 下記形式のファイルを指定することで、 「別名」の電子メールアドレスを、\n" +" 「実名」に変換して集計できます::" msgid " = " msgstr " <別名> = <実名>" @@ -1450,11 +1452,13 @@ msgid "" " Such a file may be specified with the --aliases option, otherwise\n" " a .hgchurn file will be looked for in the working directory root.\n" -" " -msgstr "" -" 上記形式のファイルは、 --aliases が指定された場合は指定された\n" -" ファイルが読み込まれますが、 特に指定が無い場合、 リポジトリのルート\n" -" 直下にある .hgchurn というファイルを読み込もうとします。\n" +" Aliases will be split from the rightmost \"=\".\n" +" " +msgstr "" +" --aliases 指定により、 指定の変換ファイルが読み込まれますが、\n" +" 特に指定が無い場合は、 リポジトリのルート直下にある .hgchurn\n" +" というファイルが読み込まれます。\n" +" 別名定義の記述は、 一番右側の \"=\" 以降が「実名」となります。\n" " " #, python-format @@ -1616,6 +1620,16 @@ " tags.local = black bold" msgid "" +" rebase.rebased = blue\n" +" rebase.remaining = red bold" +msgstr "" +" rebase.rebased = blue\n" +" rebase.remaining = red bold" + +msgid " histedit.remaining = red bold" +msgstr " histedit.remaining = red bold" + +msgid "" "The available effects in terminfo mode are 'blink', 'bold', 'dim',\n" "'inverse', 'invisible', 'italic', 'standout', and 'underline'; in\n" "ECMA-48 mode, the options are 'bold', 'inverse', 'italic', and\n" @@ -2405,6 +2419,10 @@ msgstr "要求されたツール '%s' を見つけることができません" #, python-format +msgid "splicemap entry %s is not a valid revision identifier" +msgstr "splicemap のエントリ %s は有効なリビジョンではありません" + +#, python-format msgid "%s error:\n" msgstr "%s エラー:\n" @@ -2417,10 +2435,6 @@ msgstr "変換ファイル %r を開くことができません: %s" #, python-format -msgid "syntax error in %s(%d): child parent1[,parent2] expected" -msgstr "%s(%d) での文法エラー: 正しい形式は 子 親1[,親2]" - -#, python-format msgid "%s: invalid source repository type" msgstr "%s: 変換元リポジトリ種別が不正です" @@ -2443,6 +2457,14 @@ msgid "getting files" msgstr "ファイルの取得中" +#, python-format +msgid "syntax error in %s(%d): child parent1[,parent2] expected" +msgstr "%s(%d) での文法エラー: 正しい形式は 子 親1[,親2]" + +#, python-format +msgid "splicemap file not found or error reading %s:" +msgstr "splicemap ファイル %s の読み込みに失敗しました:" + msgid "revisions" msgstr "リビジョン" @@ -2617,6 +2639,10 @@ "%s\n" #, python-format +msgid "changeset %d is both before and after %d\n" +msgstr "ソートによって、リビジョン %d が %d の前後両方に出現します\n" + +#, python-format msgid "%d changeset entries\n" msgstr "%d 件のリビジョン要素\n" @@ -2700,7 +2726,7 @@ #, python-format msgid "" "tree analysis stopped because it points to an unregistered archive %s...\n" -msgstr "未登録アーカイブ %s の参照によりツリー解析を中断...\n" +msgstr "未登録アーカイブ %s の参照によりツリー解析を中止...\n" #, python-format msgid "could not parse cat-log of %s" @@ -3507,8 +3533,9 @@ msgid "commands to sign and verify changesets" msgstr "リビジョンへの署名および検証コマンド" -msgid "error while verifying signature" -msgstr "署名検証中のエラー" +#, python-format +msgid "%s Unknown key ID \"%s\"\n" +msgstr "%s \"%s\" は未知のキーIDです\n" #, python-format msgid "%s Bad signature from \"%s\"\n" @@ -3618,7 +3645,7 @@ msgstr "複製元や改名元の履歴も遡る" msgid "only follow the first parent of merge changesets (DEPRECATED)" -msgstr "マージの際には第1親のみを遡る (DEPRECATED)" +msgstr "マージの際には第1親のみを遡る (非推奨)" msgid "show revisions matching date spec" msgstr "指定日時に合致するリビジョンを表示" @@ -3636,7 +3663,7 @@ msgstr "ファイルが登録除外されたリビジョンを含める" msgid "show only merges (DEPRECATED)" -msgstr "マージ実施リビジョンのみを表示 (DEPRECATED)" +msgstr "マージ実施リビジョンのみを表示 (非推奨)" msgid "USER" msgstr "ユーザ" @@ -3840,7 +3867,7 @@ msgstr "cat-file: 種別もリビジョンも指定されていません\n" msgid "aborting hg cat-file only understands commits\n" -msgstr "中断: catfile は commit 種別でのみ実行可能です\n" +msgstr "中止: catfile は commit 種別でのみ実行可能です\n" msgid "parse given revisions" msgstr "指定リビジョンの解析" @@ -4238,7 +4265,7 @@ "#\n" msgid "Fix up the change and run hg histedit --continue" -msgstr "衝突解消後に \"hg histedit --continue\" してください" +msgstr "衝突解消後に 'hg histedit --continue' を実行してください" #, python-format msgid "%s: empty changeset\n" @@ -4248,8 +4275,8 @@ "Make changes as needed, you may commit or record as needed now.\n" "When you are finished, run hg histedit --continue to resume." msgstr "" -"必要に応じて変更/記録を行ってください。 作業が完了したならば、\n" -"改変再開のために hg histedit --continue を実行してください。" +"必要に応じて変更/コミットを行ってください。\n" +"作業完了後は 'hg histedit --continue' で histedit を再開します。" #, python-format msgid "%s: empty changeset" @@ -4266,13 +4293,13 @@ msgstr "履歴改変手順を指定ファイルから読み込み" msgid "continue an edit already in progress" -msgstr "中断された履歴改変を再開" +msgstr "中断された未完了の履歴改変を再開" msgid "don't strip old nodes after edit is complete" msgstr "改変元の履歴を改変完了後も保持" msgid "abort an edit in progress" -msgstr "進行中の履歴改変を中止" +msgstr "未完了の履歴改変を中止" msgid "changesets not found in destination" msgstr "連携先リポジトリに、 含まれないリビジョンを、 改変対象化" @@ -4306,7 +4333,8 @@ msgstr "--abort 指定時は引数を指定できません" msgid "history edit already in progress, try --continue or --abort" -msgstr "履歴改変は継続中です。 --continue または --abort を指定してください" +msgstr "" +"以前の履歴改変が未完了です。 --continue または --abortを指定してください" msgid "no revisions allowed with --outgoing" msgstr "--outgoing とリビジョン指定は併用できません" @@ -4323,12 +4351,14 @@ #, python-format msgid "update to %s or descendant and run \"hg histedit --continue\" again" -msgstr "" -"%s かその子孫で作業領域更新後に \"hg histedit --continue\" してください" +msgstr "%s 又はその子孫で作業領域更新後に、再度 histedit を実行してください" msgid "cannot edit history that would orphan nodes" msgstr "履歴ツリーが分断されるような履歴改変はできません" +msgid "cannot edit history that contains merges" +msgstr "マージを含む履歴は histedit の対象に指定できません" + #, python-format msgid "cannot edit immutable changeset: %s" msgstr "改変不能なリビジョンがあります: %s" @@ -4363,6 +4393,23 @@ msgid "histedit: moving bookmarks %s from %s to %s\n" msgstr "histedit: ブックマーク %s を %s から %s に移動中\n" +#. i18n: column positioning for "hg summary" +#, python-format +msgid "hist: %s (histedit --continue)\n" +msgstr "hist: %s (histedit --continue)\n" + +#, python-format +msgid "%d remaining" +msgstr "残リビジョン数 %d" + +msgid "histedit in progress" +msgstr "histedit による履歴改変が未完了です" + +msgid "use 'hg histedit --continue' or 'hg histedit --abort'" +msgstr "" +"未完了の histedit は、'hg histedit --continue' で再開するか、'hg histedit --" +"abort' で中止してください" + msgid "accelerate status report using Linux's inotify service" msgstr "Linux の inoitfy サービスによる状態報告の高速化" @@ -4807,7 +4854,7 @@ " kwexpand refuses to run if given files contain local changes.\n" " " msgstr "" -" 指定されたファイルの変更が未コミットの場合、 実行は中断されます。\n" +" 指定されたファイルの変更が未コミットの場合、 実行は中止されます。\n" " " msgid "show keyword status flags of all files" @@ -4881,7 +4928,7 @@ " kwshrink refuses to run if given files contain local changes.\n" " " msgstr "" -" 指定されたファイルの変更が未コミットの場合、 実行は中断されます。\n" +" 指定されたファイルの変更が未コミットの場合、 実行は中止されます。\n" " " msgid "track large binary files" @@ -5356,27 +5403,23 @@ msgid "uncommitted local changes" msgstr "作業領域の変更が未コミットです" -msgid "&Largefile" -msgstr "&Largefile" - -msgid "&Normal file" -msgstr "&Normal file" - #, python-format msgid "" "%s has been turned into a largefile\n" -"use (l)argefile or keep as (n)ormal file?" +"use (l)argefile or keep as (n)ormal file?$$ &Largefile $$ &Normal file" msgstr "" "ファイル %s が大容量ファイル化されています。\n" -"どちらの形式を採用しますか? 大容量:(l)argefile 通常:(n)ormal file" +"大容量:(l)argefile と通常:(n)ormal file のどちらの形式を採用しますか?$$ " +"&Largefile $$ &Normal file" #, python-format msgid "" "%s has been turned into a normal file\n" -"keep as (l)argefile or use (n)ormal file?" +"keep as (l)argefile or use (n)ormal file?$$ &Largefile $$ &Normal file" msgstr "" "ファイル %s が通常ファイル化されています。\n" -"どちらの形式を採用しますか? 大容量:(l)argefile 通常:(n)ormal file" +"大容量:(l)argefile と通常:(n)ormal file のどちらの形式を採用しますか?$$ " +"&Largefile $$ &Normal file" #, python-format msgid "merging %s and %s to %s\n" @@ -5389,16 +5432,11 @@ #, python-format msgid "" "largefile %s has a merge conflict\n" -"keep (l)ocal or take (o)ther?" +"keep (l)ocal or take (o)ther?$$ &Local $$ &Other" msgstr "" "大容量ファイル %s のマージで衝突が検出されました。\n" -"どちらの内容を採用しますか? 作業領域:(l)ocal マージ対象:(o)ther" - -msgid "&Local" -msgstr "&Local" - -msgid "&Other" -msgstr "&Other" +"作業領域:(l)ocal とマージ対象:(o)ther のどちらの内容を採用しますか?$$ " +"&Local $$ &Other" msgid "no files to copy" msgstr "コピーするファイルがありません" @@ -5642,7 +5680,7 @@ "discarded. Setting::" msgstr "" "作業領域中に、 未コミット変更がある場合、 qpush, qpop や qgoto の実行は、\n" -"即座に中断されます。 -f/--force 指定時は、 変更内容が破棄されます。\n" +"即座に中止されます。 -f/--force 指定時は、 変更内容が破棄されます。\n" "これらのコマンドの挙動は、 以下の設定により::" msgid "" @@ -6191,20 +6229,19 @@ msgid "" " An existing changeset may be placed under mq control with -r/--rev\n" -" (e.g. qimport --rev tip -n patch will place tip under mq control).\n" -" With -g/--git, patches imported with --rev will use the git diff\n" -" format. See the diffs help topic for information on why this is\n" -" important for preserving rename/copy information and permission\n" -" changes. Use :hg:`qfinish` to remove changesets from mq control." -msgstr "" -" -r/--rev を指定することで、\n" -" 既存の通常リビジョンを MQ 管理下に置くことができます\n" -" (例: 'qimport --rev tip -n patch' は、 tip を MQ 管理下に置きます)。\n" -" -g/--git 指定は、 --rev 指定による取り込みの際に\n" -" git 差分形式を使用します。\n" -" 改名/複製情報や、 権限設定の情報保持にとっての\n" -" git 差分形式の有用性に関しては、 'help diffs' を参照してください。\n" -" リビジョンを MQ 管理下から除外する場合、 :hg:`qfinish` を使用します。" +" (e.g. qimport --rev . -n patch will place the current revision\n" +" under mq control). With -g/--git, patches imported with --rev will\n" +" use the git diff format. See the diffs help topic for information\n" +" on why this is important for preserving rename/copy information\n" +" and permission changes. Use :hg:`qfinish` to remove changesets\n" +" from mq control." +msgstr "" +" -r/--rev 指定により、 既存の通常リビジョンを MQ 管理下に置きます。\n" +" (例: 'qimport --rev . -n patch' は現リビジョンを MQ 管理下に置きます)\n" +" -g/--git 指定は、 --rev 指定での取り込みで git 差分形式を使用します。\n" +" 改名/複製や権限設定変更における git 差分形式の有用性は、\n" +" :hg:`help diffs` を参照してください。 MQ 管理下のパッチを、\n" +" 通常リビジョン化する場合は :hg:`qfinish` を使用します。" msgid "" " To import a patch from standard input, pass - as the patch file.\n" @@ -6682,9 +6719,9 @@ " overlap with patched files. With -f/--force, backup and patch over\n" " uncommitted changes." msgstr "" -" 作業領域に未コミット変更がある場合、 通常はコマンドが中断されます。\n" +" 作業領域に未コミット変更がある場合、 通常はコマンドが中止されます。\n" " --keep-changes が指定された場合、 未コミット変更とパッチとの間で、\n" -" 重複がある場合のみ、 中断されます。 -f/--force が指定された場合、\n" +" 重複がある場合のみ、 中止されます。 -f/--force が指定された場合、\n" " 変更内容をバックアップした上で、 未コミット変更の上から、\n" " パッチが適用されます。" @@ -6725,9 +6762,9 @@ " overlap with patched files. With -f/--force, backup and discard\n" " changes made to such files." msgstr "" -" 作業領域に未コミット変更がある場合、 通常はコマンドが中断されます。\n" +" 作業領域に未コミット変更がある場合、 通常はコマンドが中止されます。\n" " --keep-changes が指定された場合、 未コミット変更とパッチとの間で、\n" -" 重複がある場合のみ、 中断されます。 -f/--force が指定された場合、\n" +" 重複がある場合のみ、 中止されます。 -f/--force が指定された場合、\n" " 変更内容をバックアップした上で、 未コミット変更の内容を破棄します。" #, python-format @@ -6835,7 +6872,7 @@ msgstr "" " :hg:`strip` は指定のリビジョンおよび、 指定リビジョンの子孫を\n" " 取り除きます。 作業領域の変更が未コミットの場合、\n" -" --force が指定されない限りは処理を中断します。\n" +" --force が指定されない限りは処理を中止します。\n" " --force が指定された場合、 変更内容は破棄されます。" msgid "" @@ -7963,14 +8000,8 @@ "\n" "統計結果:" -msgid "are you sure you want to send (yn)?" -msgstr "メールを送信しますか? (y/n)" - -msgid "&No" -msgstr "&No" - -msgid "&Yes" -msgstr "&Yes" +msgid "are you sure you want to send (yn)?$$ &Yes $$ &No" +msgstr "メールを送信しますか? (y/n)$$ &Yes $$ &No" msgid "patchbomb canceled" msgstr "メールは送信しません" @@ -8082,7 +8113,7 @@ msgstr "作業領域中の未登録ファイルを削除するコマンド" msgid "abort if an error occurs" -msgstr "エラーが発生した場合、 中断する" +msgstr "エラーが発生した場合に処理を中止" msgid "purge ignored files too" msgstr "無視したファイルも削除する" @@ -8223,10 +8254,10 @@ msgstr "マージツールの指定" msgid "continue an interrupted rebase" -msgstr "中断された移動を再開" +msgstr "中断された未完了の移動を再開" msgid "abort an interrupted rebase" -msgstr "中断された移動を中断" +msgstr "中断による未完了な移動の情報を破棄(=中止)" msgid "[-s REV | -b REV] [-d REV] [OPTION]" msgstr "[-s REV | -b REV] [-d REV] [OPTION]" @@ -8266,9 +8297,9 @@ msgid "" " If you don't specify a destination changeset (``-d/--dest``),\n" -" rebase uses the tipmost head of the current named branch as the\n" -" destination. (The destination changeset is not modified by\n" -" rebasing, but new changesets are added as its descendants.)" +" rebase uses the current branch tip as the destination. (The\n" +" destination changeset is not modified by rebasing, but new\n" +" changesets are added as its descendants.)" msgstr "" " 移動先リビジョン (``-d/--dest``) が指定されない場合、移動先として、\n" " 現行の名前付きブランチの、 最新ヘッドが採用されます。\n" @@ -8326,25 +8357,25 @@ msgid "" " One result of the rules for selecting the destination changeset\n" " and source branch is that, unlike ``merge``, rebase will do\n" -" nothing if you are at the latest (tipmost) head of a named branch\n" +" nothing if you are at the branch tip of a named branch\n" " with two heads. You need to explicitly specify source and/or\n" " destination (or ``update`` to the other head, if it's the head of\n" " the intended source branch)." msgstr "" -" 現行の名前付きブランチが2つのヘッドを持ち、 且つ最新のヘッド側が、\n" -" 作業領域の親である場合、 リビジョン指定無しでも処理を行う ``merge``\n" -" と異なり、 本コマンドは何も実施しません。 これは、 移動先 (※ 訳注:\n" -" 現行の名前付きブランチの、 最新ヘッド) と移動元 (※ 訳注: 作業領域の、\n" -" 親に対する \"base\" 指定) リビジョンの選択仕様のためです。\n" -" 必要に応じて、 移動元/先を明示してください (もう一方のヘッドが、\n" -" 移動先であるならば、 そちらに ``update`` してください)。" +" 現行の名前付きブランチが2つのヘッドを持ち、 且つ作業領域の親が、\n" +" 最新ヘッド側である場合、 本コマンドは何も実施しません。\n" +" 自動的に2つのヘッドを選択する :hg:`merge` と異なり、\n" +" デフォルトの移動元と移動先が、 共に最新ヘッドを選択するためです。\n" +" そのようなケースでは、 移動元/移動先を明示的に指定してください。\n" +" (他方のヘッドが移動先なら、 そちらに :hg:`update` してください)" msgid "" " If a rebase is interrupted to manually resolve a merge, it can be\n" " continued with --continue/-c or aborted with --abort/-a." msgstr "" -" 手動マージでの衝突解消の必要性から、 移動処理が中断された場合は、\n" -" --continue/-c での再開や、 --abort/-a での移動前状態への復旧が可能です。" +" 手動マージによる衝突解消が必要な場合、 移動処理が中断されますので、\n" +" 衝突解消後に --continue/-c で再開するか、 --abort/-a で中止\n" +" (移動関連情報の破棄) してください。" msgid "" " Returns 0 on success, 1 if nothing to rebase.\n" @@ -8403,7 +8434,9 @@ msgstr "リビジョン" msgid "unresolved conflicts (see hg resolve, then hg rebase --continue)" -msgstr "衝突が未解消です (\"hg resolve\" と \"hg rebase --continue\" 参照)" +msgstr "" +"衝突が未解消です ('hg resolve' での衝突解消後に、'hg rebase --continue' を実" +"行してください)" #, python-format msgid "no changes, revision %d skipped\n" @@ -8427,17 +8460,17 @@ msgstr "親リビジョンが 3 つになるので、 リビジョン %d をベースにできません" msgid "no rebase in progress" -msgstr "進行中の移動状態はありません" +msgstr "未完了な rebase による移動はありません" #, python-format msgid "can't abort rebase due to immutable changesets %s" msgstr "改変不能リビジョンがあるため rebase 前の状態に復旧できません: %s" msgid "warning: new changesets detected on target branch, can't abort\n" -msgstr "警告: 新規リビジョンが対象ブランチに検出されたので中断できません\n" +msgstr "警告: 新規リビジョンが対象ブランチに検出されたので中止できません\n" msgid "rebase aborted\n" -msgstr "移動が中断されました\n" +msgstr "移動が中止されました\n" msgid "cannot rebase onto an applied mq patch" msgstr "MQ パッチ上への移動はできません" @@ -8458,12 +8491,29 @@ msgid "--tool can only be used with --rebase" msgstr "--tool は --rebase 指定時にしか使用できません" +#. i18n: column positioning for "hg summary" +#, python-format +msgid "rebase: %s, %s (rebase --continue)\n" +msgstr "rebase: %s, %s (rebase --continue)\n" + +#, python-format +msgid "%d rebased" +msgstr "移動完了数 %d" + msgid "rebase working directory to branch head" msgstr "作業領域をブランチヘッドに移動" msgid "specify merge tool for rebase" msgstr "移動用のマージツールの指定" +msgid "rebase in progress" +msgstr "rebase による移動が未完了です" + +msgid "use 'hg rebase --continue' or 'hg rebase --abort'" +msgstr "" +"未完了の rebase は、'hg rebase --continue' で再開するか、'hg rebase --abort' " +"で中止してください" + msgid "commands to interactively select changes for commit/qrefresh" msgstr "commit や qrefresh における対話的な変更取り込みの選択" @@ -8486,35 +8536,12 @@ msgid "%d hunks, %d lines changed\n" msgstr "%d 個の差分、 %d 行の変更\n" -msgid "[Ynesfdaq?]" -msgstr "[Ynesfdaq?]" - -msgid "&Yes, record this change" -msgstr "&Yes - この変更を記録します" - -msgid "&No, skip this change" -msgstr "&No - この変更をスキップします" - -msgid "&Edit the change manually" -msgstr "&Edit - 変更内容を手動で編集します" - -msgid "&Skip remaining changes to this file" -msgstr "&Skip - このファイルの残りの変更を全てスキップします" - -msgid "Record remaining changes to this &file" -msgstr "&File - このファイルの残りの変更を全て記録します" - -msgid "&Done, skip remaining changes and files" -msgstr "&Done - 残りの変更およびファイルを全てスキップして終了します" - -msgid "Record &all changes to all remaining files" -msgstr "&All - 残りの変更およびファイルを全て記録します" - -msgid "&Quit, recording no changes" -msgstr "&Quit - 変更を記録しないで終了します" - -msgid "&?" -msgstr "&?" +msgid "" +"[Ynesfdaq?]$$ &Yes, record this change$$ &No, skip this change$$ &Edit the " +"change manually$$ &Skip remaining changes to this file$$ Record remaining " +"changes to this &file$$ &Done, skip remaining changes and files$$ Record " +"&all changes to all remaining files$$ &Quit, recording no changes$$ &?" +msgstr "" msgid "cannot edit patch for whole file" msgstr "ファイル全体に対するパッチは編集できません" @@ -8543,7 +8570,7 @@ "パッチ適用が成功した場合、 編集後の差分は、 記録対象に追加されます。\n" "適用が失敗した場合、 却下差分はファイルに保存されます。 再試行の際は、\n" "このファイルを利用可能です。 差分の全行が削除された場合、\n" -"編集作業は中断され、差分はそのまま維持されます。\n" +"編集作業は中止され、差分はそのまま維持されます。\n" msgid "edit failed" msgstr "編集に失敗" @@ -8858,21 +8885,19 @@ " with rollback, the other clone will suddenly stop working: all\n" " operations will fail with \"abort: working directory has unknown\n" " parent\". The only known workaround is to use debugsetparents on\n" -" the broken clone to reset it to a changeset that still exists\n" -" (e.g. tip).\n" +" the broken clone to reset it to a changeset that still exists.\n" " " msgstr "" " .. note::\n" " rollback の実施や、 履歴を改変するエクステンション (例: mq や\n" -" rebase 等) の利用は、 共有リポジトリ間に相当の混乱をもたらします。\n" +" rebase 等) の利用は、 リポジトリ間での共有に混乱をもたらします。\n" " 典型的な例は、 共有関係にあるリポジトリの両方が、 \n" " 作業領域を同一リビジョンで更新した状態で、 一方が当該リビジョンを\n" " rollback により破棄することで、 他方が機能しなくなるケースです:\n" -" \"中断: 作業領域の親 REV が未知のリビジョンです\"\n" +" \"中止: 作業領域の親 REV が未知のリビジョンです\"\n" " メッセージ表示と共に、 他方でのあらゆる操作が失敗します。\n" -" この場合の唯一の復旧方法は、 機能しない側のリポジトリにおける、\n" -" 確実に存在するリビジョン (例: tip) を使った :hg:`debugsetparents`\n" -" の実施だけです。\n" +" この場合の唯一の復旧方法は、 機能しない側のリポジトリにおいて、\n" +" 確実に存在するリビジョンでの :hg:`debugsetparents` 実施だけです。\n" " " msgid "convert a shared repository to a normal one" @@ -8944,7 +8969,7 @@ msgstr "マージの場合のみパッチファイルを省略可能" msgid "fix up the merge and run hg transplant --continue" -msgstr "衝突解消後に \"hg transplant --continue\" してください" +msgstr "衝突解消後に 'hg transplant --continue' を実行してください" #, python-format msgid "skipping emptied changeset %s\n" @@ -9012,7 +9037,7 @@ msgstr "コミットログへの移植情報の付与" msgid "continue last transplant session after fixing conflicts" -msgstr "衝突解消後における、中断された直前の移植作業の再開" +msgstr "中断された未完了の移植を再開" msgid "filter changesets through command" msgstr "コマンドによるリビジョンのフィルタリング" @@ -9087,7 +9112,7 @@ msgstr " - REV までの全リビジョンを、現リビジョン上に移植::" msgid " hg transplant --branch REV --all" -msgstr " hg transplant --branch REV --all" +msgstr " hg transplant --branch REV --all" msgid "" " You can optionally mark selected transplanted changesets as merge\n" @@ -9162,6 +9187,14 @@ " changeset if any." msgstr ":transplanted: 文字列。 (移植先であれば) 移植元リビジョンの ID。" +msgid "transplant in progress" +msgstr "transplant による移植が未完了です" + +msgid "use 'hg transplant --continue' or 'hg update' to abort" +msgstr "" +"未完了の transplant は、'hg transplant --continue' で再開するか、'hg update' " +"で中止してください" + msgid "allow the use of MBCS paths with problematic encodings" msgstr "問題ある文字コードをパス名に使用する場合の対処" @@ -9472,6 +9505,16 @@ msgid "%s: unknown bundle version %s" msgstr "%s: 未知のバンドル形式バージョン %s" +msgid "bundling" +msgstr "バンドル生成中" + +msgid "manifests" +msgstr "マニフェスト" + +#, python-format +msgid "empty or missing revlog for %s" +msgstr "%s に対するリビジョンログが空ないし不在です" + msgid "no node" msgstr "ノードがありません" @@ -9720,7 +9763,7 @@ msgstr "HG: コミットログを入力してください。'HG:' で始まる行は無視されます。" msgid "HG: Leave message empty to abort commit." -msgstr "HG: メッセージが空のままならコミットを中断します。" +msgstr "HG: メッセージが空のままならコミットを中止します。" #, python-format msgid "HG: user: %s" @@ -9764,7 +9807,7 @@ #, python-format msgid "reopening closed branch head %d\n" -msgstr "閉鎖済みブランチヘッド %d の再開中\n" +msgstr "閉鎖済みブランチヘッド %d の閉鎖状態を解除中\n" #, python-format msgid "committed changeset %d:%s\n" @@ -9790,6 +9833,20 @@ msgid "no changes needed to %s\n" msgstr "%s には改変の必要がありません\n" +msgid "graft in progress" +msgstr "graft による移植が未完了です" + +msgid "use 'hg graft --continue' or 'hg update' to abort" +msgstr "" +"未完了の graft は、'hg graft --continue' で再開するか、'hg update' で中止して" +"ください" + +msgid "last update was interrupted" +msgstr "直前の作業領域更新は中断されました" + +msgid "use 'hg update' to get a consistent checkout" +msgstr "作業領域内容の整合性を取るために、'hg update' を実行してください" + msgid "repository root directory or name of overlay bundle file" msgstr "リポジトリのルート位置、 ないしバンドルファイルのパス" @@ -10347,7 +10404,7 @@ " コマンド実行時には、 環境変数 HG_NODE に検証対象リビジョンの ID\n" " が格納されます。コマンドの終了コードは、 リビジョンに対する bad\n" " ないし good のマーク付けに使用されます。終了コード 0 は good、 125\n" -" はリビジョンのスキップ、 127 (コマンド不在) は探索中断、\n" +" はリビジョンのスキップ、 127 (コマンド不在) は探索の中止、\n" " その他の非 0 終了コードは bad とみなされます。" msgid "" @@ -10484,7 +10541,7 @@ msgstr "二分探索できません(bad リビジョンが未指定です)" msgid "(use of 'hg bisect ' is deprecated)\n" -msgstr "('hg bisect ' 形式の実行は推奨されません)\n" +msgstr "('hg bisect ' 形式の実行は非推奨です)\n" msgid "incompatible arguments" msgstr "不正な引数の組み合わせです" @@ -10501,7 +10558,7 @@ #, python-format msgid "%s killed" -msgstr "%s プロセスは中断されました" +msgstr "%s プロセスは異常終了しました" #, python-format msgid "changeset %d:%s: %s\n" @@ -10530,8 +10587,8 @@ msgid "mark a bookmark inactive" msgstr "ブックマークを非アクティブ化" -msgid "hg bookmarks [-f] [-d] [-i] [-m NAME] [-r REV] [NAME]" -msgstr "hg bookmarks [-f] [-d] [-i] [-m NAME] [-r REV] [NAME]" +msgid "hg bookmarks [OPTIONS]... [NAME]..." +msgstr "hg bookmarks [OPTIONS]... [NAME]..." msgid "track a line of development with movable markers" msgstr "移動可能なマーキングによる履歴進展の追跡" @@ -10631,6 +10688,9 @@ msgid "new bookmark name required" msgstr "新しいブックマーク名を要求しました" +msgid "only one new bookmark name allowed" +msgstr "新規ブックマーク名の指定は1つだけです" + msgid "no bookmarks set\n" msgstr "ブックマークは存在しません\n" @@ -10860,12 +10920,10 @@ msgid "" " Print the specified files as they were at the given revision. If\n" -" no revision is given, the parent of the working directory is used,\n" -" or tip if no revision is checked out." +" no revision is given, the parent of the working directory is used." msgstr "" " 指定されたリビジョン時点でのファイル内容を出力します。 リビジョンが\n" -" 指定されない場合は作業領域の親リビジョンが、 作業領域の更新前なら tip\n" -" が使用されます。" +" 指定されない場合は、 作業領域の親リビジョン時点の内容を表示します。" msgid "" " Output may be to a file, in which case the name of the file is\n" @@ -11089,6 +11147,9 @@ msgid "amend the parent of the working dir" msgstr "作業領域の親リビジョンの改変" +msgid "use the secret phase for committing" +msgstr "secret フェーズでコミット中" + msgid "commit the specified files or all outstanding changes" msgstr "指定ファイルないし全ての変更内容のリポジトリへの記録" @@ -11171,12 +11232,6 @@ msgid "cannot amend with --subrepos" msgstr "--amend と --subrepos は併用できません" -msgid "cannot commit an interrupted graft operation" -msgstr "中断された graft 操作があるためコミットできません" - -msgid "use \"hg graft -c\" to continue graft" -msgstr "中断された graft は \"hg graft -c\" で再開できます" - msgid "can only close branch heads" msgstr "閉鎖できるのはブランチヘッドだけです" @@ -12101,7 +12156,7 @@ msgstr "移植対象リビジョン" msgid "resume interrupted graft" -msgstr "中断された移植を再開" +msgstr "中断された未完了の移植を再開" msgid "append graft info to log message" msgstr "コミットログへの移植情報の付与" @@ -12148,8 +12203,8 @@ " continued with the -c/--continue option." msgstr "" " 本コマンドのマージ処理で衝突が検出された場合、 処理が中断されるので、\n" -" 手動での衝突解決が可能です。 全ての衝突が解消されたならば、\n" -" -c/--continue 指定によりコマンドの実行を再開してください。" +" 手動で衝突を解決してください。 全ての衝突が解消されたならば、\n" +" -c/--continue 指定により、 未完了の移植を再開してください。" msgid "" " .. note::\n" @@ -12177,7 +12232,7 @@ msgstr " hg graft -D \"2085::2093 and not 2091\"" msgid " - continue a graft after resolving conflicts::" -msgstr " - 衝突解消後のコマンド実行再開::" +msgstr " - 衝突解消後における、未完了の移植の再開::" msgid " hg graft -c" msgstr " hg graft -c" @@ -12185,8 +12240,8 @@ msgid " - show the source of a grafted changeset::" msgstr " - 複製元リビジョンの表示::" -msgid " hg log --debug -r tip" -msgstr " hg log --debug -r tip" +msgid " hg log --debug -r ." +msgstr " hg log --debug -r ." msgid "" " Returns 0 on successful completion.\n" @@ -12229,7 +12284,7 @@ msgstr "衝突が未解消のため、継続できません" msgid "use hg resolve and hg graft --continue" -msgstr "hg resolve と hg graft --continue を使用してください" +msgstr "'hg resolve' での衝突解消後に、'hg graft --continue'を実行してください" #, python-format msgid "graft for revision %s is empty\n" @@ -12315,36 +12370,31 @@ msgid "[-ct] [-r STARTREV] [REV]..." msgstr "[-ct] [-r STARTREV] [REV]..." -msgid "show current repository heads or show branch heads" -msgstr "現時点でのリポジトリ(ないしブランチ)のヘッド表示" - -msgid " With no arguments, show all repository branch heads." -msgstr "" -" 引数指定が無い場合、 リポジトリ中の全てのブランチヘッドを表示します。" - -msgid "" -" Repository \"heads\" are changesets with no child changesets. They are\n" -" where development generally takes place and are the usual targets\n" -" for update and merge operations. Branch heads are changesets that have\n" -" no child changeset on the same branch." -msgstr "" -" リポジトリの「ヘッド」とは、\n" -" 子リビジョンを持たないリビジョンのことです。\n" -" 変更作業の実施や、 update/merge コマンド実施の際には、\n" -" このリビジョンを対象とするのが一般的です。\n" -" 「ブランチヘッド」とは、 同じ名前付きブランチ内に、\n" -" 子リビジョンを持たないリビジョンのことです。" - -msgid "" -" If one or more REVs are given, only branch heads on the branches\n" -" associated with the specified changesets are shown. This means\n" -" that you can use :hg:`heads foo` to see the heads on a branch\n" -" named ``foo``." -msgstr "" -" 1つ以上のリビジョンが指定された場合、 指定されたリビジョンの属する\n" -" 名前付きブランチにおけるヘッドのみを表示します。\n" -" この挙動は、 :hg:`heads foo` を実行することで、\n" -" 名前付きブランチ ``foo`` におけるヘッドを表示できることを意味します。" +msgid "show branch heads" +msgstr "ブランチヘッドを表示" + +msgid "" +" With no arguments, show all open branch heads in the repository.\n" +" Branch heads are changesets that have no descendants on the\n" +" same branch. They are where development generally takes place and\n" +" are the usual targets for update and merge operations." +msgstr "" +" 引数指定が無い場合、 リポジトリ中の未閉鎖ブランチヘッドを、\n" +" 全て表示します。 「ブランチヘッド」とは、 同一名前付きブランチ上に、\n" +" 子リビジョンを持たないリビジョンのことです。 新規の変更内容は、\n" +" このようなリビジョンに記録されますので、 update や merge 操作での、\n" +" 対象として指定される機会が多いです。" + +msgid "" +" If one or more REVs are given, only open branch heads on the\n" +" branches associated with the specified changesets are shown. This\n" +" means that you can use :hg:`heads .` to see the heads on the\n" +" currently checked-out branch." +msgstr "" +" 1つ以上のリビジョンが指定された場合、 指定リビジョンが属する、\n" +" 名前付きブランチの、 未閉鎖ブランチヘッドのみを表示します。\n" +" 例えば :hg:`heads .` 実行では、 作業領域が属する名前付きブランチの、\n" +" 未閉鎖ブランチヘッドにみが表示されます。" msgid "" " If -c/--closed is specified, also show branch heads marked closed\n" @@ -12363,10 +12413,11 @@ msgid "" " If -t/--topo is specified, named branch mechanics will be ignored and " "only\n" -" changesets without children will be shown." +" topological heads (changesets with no children) will be shown." msgstr "" " -t/--topo 指定時には、 名前付きブランチに関する判定は無視され、\n" -" 単に子リビジョンを持たないリビジョンが表示されます。" +" 構造的 (topological) ヘッド (子リビジョンを一切持たないリビジョン)\n" +" が表示されます。" msgid "" " Returns 0 if matching heads are found, 1 if not.\n" @@ -12498,8 +12549,8 @@ msgid "base path (DEPRECATED)" msgstr "基底パス (非推奨)" -msgid "skip check for outstanding uncommitted changes" -msgstr "作業領域中の未コミット変更の確認を省略" +msgid "skip check for outstanding uncommitted changes (DEPRECATED)" +msgstr "作業領域中の未コミット変更の確認を省略 (非推奨)" msgid "don't commit, just update the working directory" msgstr "作業領域の更新のみで、 コミット実施を抑止" @@ -12527,11 +12578,11 @@ " (--no-commit 指定が無い限り) 個別に行います。" msgid "" -" If there are outstanding changes in the working directory, import\n" -" will abort unless given the -f/--force flag." -msgstr "" -" 作業領域の変更が未コミットの場合、 -f/--force が指定されない限り、\n" -" 取り込みは実施されません。" +" Because import first applies changes to the working directory,\n" +" import will abort if there are outstanding changes." +msgstr "" +" 取り込み作業は作業領域で実施されるため、 未コミット変更がある場合は、\n" +" 取り込み操作は中断されます。" msgid "" " You can import a patch straight from a mail message. Even patches\n" @@ -12958,8 +13009,8 @@ msgid "can't specify a revision with --all" msgstr "リビジョン指定と --all は併用できません" -msgid "force a merge with outstanding changes" -msgstr "作業領域中の未コミット変更ごとマージを実施" +msgid "force a merge including outstanding changes (DEPRECATED)" +msgstr "作業領域中の未コミット変更ごとマージを実施 (非推奨)" msgid "revision to merge" msgstr "マージ対象リビジョン" @@ -13013,7 +13064,7 @@ " 対象となります。 それ以外の場合は、 明示的なリビジョン指定が必要です。" msgid " :hg:`resolve` must be used to resolve unresolved files." -msgstr " 衝突未解消なファイルは :hg:`resolve` での衝突解消が必要です。" +msgstr " 衝突未解消なファイルは :hg:`resolve` での衝突解消が必要です。" msgid "" " To undo an uncommitted merge, use :hg:`update --clean .` which\n" @@ -13497,7 +13548,7 @@ " 追加 (Added) [A]、 変更無し (Clean) [C]、 変更有り (Modified) [M]\n" " および不在 (Missing) [!] で表します。\n" " 挙動は、 警告 (Warn) [W]、 構成管理からの登録除外 (Remove) [R]\n" -" および作業領域からの削除 (Delete) [D] で表します::" +" および作業領域からの削除 (Delete) [D] で表します:" msgid "" " ======= == == == ==\n" @@ -13509,14 +13560,14 @@ " -Af R R R R\n" " ======= == == == ==" msgstr "" -" ======= == == == ==\n" -" A C M !\n" -" ======= == == == ==\n" -" 無指定 W RD W R\n" -" -f R RD RD R\n" -" -A W W W R\n" -" -Af R R R R\n" -" ======= == == == ==" +" =============== == == == ==\n" +" オプション/状態 A C M !\n" +" =============== == == == ==\n" +" 無指定 W RD W R\n" +" -f R RD RD R\n" +" -A W W W R\n" +" -Af R R R R\n" +" =============== == == == ==" msgid "" " Note that remove never deletes files in Added [A] state from the\n" @@ -13775,8 +13826,15 @@ msgid "ignore safety measures" msgstr "安全判定を無視" -msgid "roll back the last transaction (dangerous)" -msgstr "直前のトランザクションの巻き戻し(要注意)" +msgid "roll back the last transaction (DANGEROUS) (DEPRECATED)" +msgstr "直前のトランザクションの巻き戻し (要注意) (非推奨)" + +msgid "" +" Please use :hg:`commit --amend` instead of rollback to correct\n" +" mistakes in the last commit." +msgstr "" +" 直前のコミットをやり直す場合は、 rollback の代わりに、極力\n" +" :hg:`commit --amend` を使用してください。" msgid "" " This command should be used with care. There is only one level of\n" @@ -14190,6 +14248,9 @@ msgid "%d subrepos" msgstr "サブリポジトリ数 %d" +msgid " (interrupted update)" +msgstr " (作業領域の更新が中断されたままです)" + msgid " (merge)" msgstr " (マージ)" @@ -14285,10 +14346,10 @@ msgid "" " If no revision is given, the parent of the working directory is\n" -" used, or tip if no revision is checked out." -msgstr "" -" 対象リビジョンが指定されない場合、 作業領域の親リビジョンが\n" -" (作業領域更新前なら tip が) タグ付けの対象となります。" +" used." +msgstr "" +" 対象リビジョンが指定されない場合、 作業領域の親リビジョンが、\n" +" タグ付けの対象となります。" msgid "" " To facilitate version control, distribution, and merging of tags,\n" @@ -14373,8 +14434,8 @@ msgid "[-p] [-g]" msgstr "[-p] [-g]" -msgid "show the tip revision" -msgstr "tip リビジョンの表示" +msgid "show the tip revision (DEPRECATED)" +msgstr "tip リビジョンの表示 (非推奨)" msgid "" " The tip revision (usually just called the tip) is the changeset\n" @@ -14396,6 +14457,9 @@ " リポジトリでの tip が現リポジトリの tip となります。 \"tip\" タグは\n" " 特別なタグで、 改名や、 他のリビジョンへの付け替えはできません。" +msgid " This command is deprecated, please use :hg:`heads` instead." +msgstr " 本コマンドは非推奨です。 :hg:`heads` を使用してください。" + msgid "update to new branch head if changesets were unbundled" msgstr "新規取り込みの際は、 新規ブランチヘッドで、 作業領域を更新" @@ -14561,11 +14625,11 @@ msgstr "(詳細は http://mercurial.selenic.com を参照してください)" msgid "" -"Copyright (C) 2005-2012 Matt Mackall and others\n" +"Copyright (C) 2005-2013 Matt Mackall and others\n" "This is free software; see the source for copying conditions. There is NO\n" "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" msgstr "" -"Copyright (C) 2005-2012 Matt Mackall 他\n" +"Copyright (C) 2005-2013 Matt Mackall 他\n" "本製品はフリーソフトウェアです。\n" "頒布条件に関しては同梱されるライセンス条項をお読みください。\n" "市場適合性や特定用途への可否を含め、 本製品は無保証です。\n" @@ -14722,7 +14786,7 @@ #, python-format msgid "abort: %s\n" -msgstr "中断: %s\n" +msgstr "中止: %s\n" #, python-format msgid "(%s)\n" @@ -14757,11 +14821,11 @@ #, python-format msgid "abort: %s: %s\n" -msgstr "中断: %s: %s\n" +msgstr "中止: %s: %s\n" #, python-format msgid "abort: could not lock %s: %s\n" -msgstr "中断: %s のロックに失敗: %s\n" +msgstr "中止: %s のロックに失敗: %s\n" #, python-format msgid "hg %s: %s\n" @@ -14986,10 +15050,11 @@ #, python-format msgid "" " no tool found to merge %s\n" -"keep (l)ocal or take (o)ther?" -msgstr "" -" %s のマージに適切なツールが見つかりません\n" -"どちらの内容を採用しますか? 作業領域:(l)ocal マージ対象:(o)ther" +"keep (l)ocal or take (o)ther?$$ &Local $$ &Other" +msgstr "" +" %s のマージに適切なツールが見つかりません。\n" +"作業領域:(l)ocal とマージ対象:(o)ther のどちらの内容を採用しますか?$$ " +"&Local $$ &Other" msgid "" "``internal:local``\n" @@ -15062,16 +15127,16 @@ msgstr "%s のマージに失敗!\n" #, python-format -msgid "was merge of '%s' successful (yn)?" -msgstr "'%s' のマージは成功しましたか? (y/n) " +msgid "was merge of '%s' successful (yn)?$$ &Yes $$ &No" +msgstr "'%s' のマージは成功しましたか?(y/n)$$ &Yes $$ &No" #, python-format msgid "" " output file %s appears unchanged\n" -"was merge successful (yn)?" +"was merge successful (yn)?$$ &Yes $$ &No" msgstr "" " マージ結果ファイル %s は未変更に見えます\n" -"マージ成功とみなしますか? (y/n)" +"マージ成功とみなしますか? (y/n)$$ &Yes $$ &No" msgid "unterminated string" msgstr "文字列が終端していません" @@ -15563,6 +15628,24 @@ msgid "Mercurial Distributed SCM\n" msgstr "Mercurial - 分散構成管理ツール\n" +msgid ".. Common link and substitution definitions." +msgstr ".. Common link and substitution definitions." + +msgid "" +".. |hg(1)| replace:: **hg**\\ (1)\n" +".. _hg(1): hg.1.html\n" +".. |hgrc(5)| replace:: **hgrc**\\ (5)\n" +".. _hgrc(5): hgrc.5.html\n" +".. |hgignore(5)| replace:: **hgignore**\\ (5)\n" +".. _hgignore(5): hgignore.5.html\n" +msgstr "" +".. |hg(1)| replace:: **hg**\\ (1)\n" +".. _hg(1): hg.1.html\n" +".. |hgrc(5)| replace:: **hgrc**\\ (5)\n" +".. _hgrc(5): hgrc.5.html\n" +".. |hgignore(5)| replace:: **hgignore**\\ (5)\n" +".. _hgignore(5): hgignore.5.html\n" + msgid "" "The Mercurial system uses a set of configuration files to control\n" "aspects of its behavior." @@ -18471,7 +18554,7 @@ " PEM 符号化形式の証明書認証局証明書一覧格納ファイルへのパス。\n" " ファイル名記述における環境変数および ``~user`` 記述は置換されます。\n" " 本項目が、 クライアント側で記述された場合、 指定された証明書により、\n" -" HTTPS サーバが認証されます。 ファイルの形式例を以下に示します::" +" HTTPS サーバが認証されます。 ファイルの形式例を以下に示します。" msgid "" " This feature is only supported when using Python 2.6 or later. If you " @@ -19203,7 +19286,7 @@ " - interactive prompt\n" " - LOGNAME (with ``@hostname`` appended)" msgstr "" -" - HGUSER 環境変数値(推奨されません)\n" +" - HGUSER 環境変数値(非推奨)\n" " - (HGRCPATH 環境変数で指定される)設定ファイル中の設定\n" " - EMAIL 環境変数値\n" " - 対話的な入力\n" @@ -20347,6 +20430,341 @@ " 'Parent, working directory' を参照してください。\n" msgid "" +"====\n" +" hg\n" +"====" +msgstr "" +"====\n" +" hg\n" +"====" + +msgid "" +"---------------------------------------\n" +"Mercurial source code management system\n" +"---------------------------------------" +msgstr "" +"----------------------------------\n" +"ソースコード管理システム Mercurial\n" +"----------------------------------" + +msgid "" +":Author: Matt Mackall \n" +":Organization: Mercurial\n" +":Manual section: 1\n" +":Manual group: Mercurial Manual" +msgstr "" +":Author: Matt Mackall \n" +":Organization: Mercurial\n" +":Manual section: 1\n" +":Manual group: Mercurial Manual" + +msgid "" +".. contents::\n" +" :backlinks: top\n" +" :class: htmlonly\n" +" :depth: 1" +msgstr "" +".. contents::\n" +" :backlinks: top\n" +" :class: htmlonly\n" +" :depth: 1" + +msgid "" +"\n" +"Synopsis\n" +"\"\"\"\"\"\"\"\"\n" +"**hg** *command* [*option*]... [*argument*]..." +msgstr "" +"\n" +"概要\n" +"\"\"\"\"\n" +"**hg** *command* [*option*]... [*argument*]..." + +msgid "" +"Description\n" +"\"\"\"\"\"\"\"\"\"\"\"\n" +"The **hg** command provides a command line interface to the Mercurial\n" +"system." +msgstr "" +"説明\n" +"\"\"\"\"\n" +"**hg** コマンドは、 Mercurial のコマンドラインインタフェースです。" + +msgid "" +"Command Elements\n" +"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"" +msgstr "" +"コマンド行指定での凡例\n" +"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"" + +msgid "" +"files...\n" +" indicates one or more filename or relative path filenames; see\n" +" `File Name Patterns`_ for information on pattern matching" +msgstr "" +"files...\n" +" 1つ以上の、ファイル名あるいは相対パスの指定; パターン指定の詳細は、\n" +" `ファイル名パターン`_ を参照してください。" + +msgid "" +"path\n" +" indicates a path on the local machine" +msgstr "" +"path\n" +" ローカルホスト上のパスの指定" + +msgid "" +"revision\n" +" indicates a changeset which can be specified as a changeset\n" +" revision number, a tag, or a unique substring of the changeset\n" +" hash value" +msgstr "" +"revision\n" +" リビジョン番号、 タグ名、 一意なチェンジセットハッシュ値など、\n" +" リビジョンを特定するための識別値の指定" + +msgid "" +"repository path\n" +" either the pathname of a local repository or the URI of a remote\n" +" repository." +msgstr "" +"repository path\n" +" ローカルホスト上のリポジトリへのパスや、 連携先リポジトリの URI の指定" + +msgid ".. include:: hg.1.gendoc.txt" +msgstr ".. include:: hg.1.gendoc.txt" + +msgid "" +"Files\n" +"\"\"\"\"\"" +msgstr "" +"関連ファイル\n" +"\"\"\"\"\"\"\"\"\"\"\"\"" + +msgid "" +"``/etc/mercurial/hgrc``, ``$HOME/.hgrc``, ``.hg/hgrc``\n" +" This file contains defaults and configuration. Values in\n" +" ``.hg/hgrc`` override those in ``$HOME/.hgrc``, and these override\n" +" settings made in the global ``/etc/mercurial/hgrc`` configuration.\n" +" See |hgrc(5)|_ for details of the contents and format of these\n" +" files." +msgstr "" +"``/etc/mercurial/hgrc``, ``$HOME/.hgrc``, ``.hg/hgrc``\n" +" これらのファイルには、 各種設定値を記述します。 ``.hg/hgrc``\n" +" での記述は ``$HOME/.hgrc`` での記述を、``$HOME/.hgrc`` での記述は\n" +" ``/etc/mercurial/hgrc`` での記述を、それぞれ上書きします。\n" +" これらのファイルに関する詳細は、 |hgrc(5)|_ を参照してください。" + +msgid "" +"``.hgignore``\n" +" This file contains regular expressions (one per line) that\n" +" describe file names that should be ignored by **hg**. For details,\n" +" see |hgignore(5)|_." +msgstr "" +"``.hgignore``\n" +" このファイルには、 **hg** コマンドに無視して欲しいファイル名を、\n" +" 一行一パターンで記述します。 詳細は |hgignore(5)|_ を参照してください。" + +msgid "" +"``.hgsub``\n" +" This file defines the locations of all subrepositories, and\n" +" tells where the subrepository checkouts came from. For details, see\n" +" :hg:`help subrepos`." +msgstr "" +"``.hgsub``\n" +" このファイルには、 サブリポジトリの位置とアクセス先を記述します。\n" +" 詳細は :hg:`help subrepos` を参照してください。" + +msgid "" +"``.hgsubstate``\n" +" This file is where Mercurial stores all nested repository states. *NB: " +"This\n" +" file should not be edited manually.*" +msgstr "" +"``.hgsubstate``\n" +" このファイルには、 サブリポジトリの状態が書き込まれます。\n" +" *NB: このファイルは手動で変更しないでください。*" + +msgid "" +"``.hgtags``\n" +" This file contains changeset hash values and text tag names (one\n" +" of each separated by spaces) that correspond to tagged versions of\n" +" the repository contents. The file content is encoded using UTF-8." +msgstr "" +"``.hgtags``\n" +" このファイルには、 リポジトリ内のタグ付けされたリビジョンに対応する、\n" +" リビジョンIDとタグ名の対 (の空白区切り) が書き込まれます。\n" +" このファイルの文字コードには UTF-8 が使用されます。" + +msgid "" +"``.hg/last-message.txt``\n" +" This file is used by :hg:`commit` to store a backup of the commit " +"message\n" +" in case the commit fails." +msgstr "" +"``.hg/last-message.txt``\n" +" このファイルには、 コミット失敗に備えて、 :hg:`commit` 実行時に、\n" +" コミットメッセージがバックアップされます。" + +msgid "" +"``.hg/localtags``\n" +" This file can be used to define local tags which are not shared among\n" +" repositories. The file format is the same as for ``.hgtags``, but it is\n" +" encoded using the local system encoding." +msgstr "" +"``.hg/localtags``\n" +" このファイルには、 リポジトリ間で共有されないローカルなタグの定義が、\n" +" 記録されます。 ファイルの形式は ``.hgtags`` と同じですが、\n" +" 文字コードにはローカルの文字コードが使用されます。" + +msgid "" +"Some commands (e.g. revert) produce backup files ending in ``.orig``,\n" +"if the ``.orig`` file already exists and is not tracked by Mercurial,\n" +"it will be overwritten." +msgstr "" +"コマンドの中には、 ``.orig`` 拡張子付きのファイルに、 ファイルの内容を、\n" +"バックアップするものもあります (例: :hg:`revert`)。 バックアップと同名の\n" +"``.orig`` ファイルが存在し、且つ Mercurial の管理対象でない場合、\n" +"そのファイルの内容は、 バックアップによって上書きされます。" + +msgid "" +"Bugs\n" +"\"\"\"\"\n" +"Probably lots, please post them to the mailing list (see Resources_\n" +"below) when you find them." +msgstr "" +"不具合\n" +"\"\"\"\"\"\"\n" +"不具合を見つけた場合は、 メーリングリスト ( 後述する 各種情報_ 参照)\n" +"までお知らせください。(※ 訳注: 日本語翻訳の不具合等は、\n" +"日本語メーリングリスト\n" +"`mercurial-ja\n" +"`_\n" +"へのメール投函や、 Twitter で\n" +"`#mercurialjp `_\n" +"ハッシュタグをつけてつぶやいてください)" + +msgid "" +"See Also\n" +"\"\"\"\"\"\"\"\"\n" +"|hgignore(5)|_, |hgrc(5)|_" +msgstr "" +"他の参照先\n" +"\"\"\"\"\"\"\"\"\"\"\n" +"|hgignore(5)|_, |hgrc(5)|_" + +msgid "" +"Author\n" +"\"\"\"\"\"\"\n" +"Written by Matt Mackall " +msgstr "" +"著者\n" +"\"\"\"\"\n" +"Matt Mackall " + +msgid "" +"Resources\n" +"\"\"\"\"\"\"\"\"\"\n" +"Main Web Site: http://mercurial.selenic.com/" +msgstr "" +"各種情報\n" +"\"\"\"\"\"\"\"\"\n" +"ウェブサイト: http://mercurial.selenic.com/" + +msgid "Source code repository: http://selenic.com/hg" +msgstr "ソースコードリポジトリ: http://selenic.com/hg" + +msgid "Mailing list: http://selenic.com/mailman/listinfo/mercurial" +msgstr "メーリングリスト: http://selenic.com/mailman/listinfo/mercurial" + +msgid "" +"Copying\n" +"\"\"\"\"\"\"\"\n" +"Copyright (C) 2005-2013 Matt Mackall.\n" +"Free use of this software is granted under the terms of the GNU General\n" +"Public License version 2 or any later version." +msgstr "" +"Copying\n" +"\"\"\"\"\"\"\"\n" +"Copyright (C) 2005-2013 Matt Mackall.\n" +"本ソフトウェアは、 バージョン2またはそれ以降の GNU General\n" +"Public License の元での自由な利用が保証されています。" + +msgid ".. include:: common.txt\n" +msgstr ".. include:: common.txt\n" + +msgid "" +"==========\n" +" hgignore\n" +"==========" +msgstr "" +"==========\n" +" hgignore\n" +"==========" + +msgid "" +"---------------------------------\n" +"syntax for Mercurial ignore files\n" +"---------------------------------" +msgstr "" +"--------------------------------\n" +"Mercurial 無視設定ファイルの文法\n" +"--------------------------------" + +msgid "" +":Author: Vadim Gelfer \n" +":Organization: Mercurial\n" +":Manual section: 5\n" +":Manual group: Mercurial Manual" +msgstr "" +":Author: Vadim Gelfer \n" +":Organization: Mercurial\n" +":Manual section: 5\n" +":Manual group: Mercurial Manual" + +msgid ".. include:: hgignore.5.gendoc.txt" +msgstr ".. include:: hgignore.5.gendoc.txt" + +msgid "" +"Author\n" +"======\n" +"Vadim Gelfer " +msgstr "" +"著者\n" +"====\n" +"本マニュアルページの著者は Vadim Gelfer です。" + +msgid "Mercurial was written by Matt Mackall ." +msgstr "Mercurial の著者は Matt Mackall です。" + +msgid "" +"See Also\n" +"========\n" +"|hg(1)|_, |hgrc(5)|_" +msgstr "" +"他の参照先\n" +"==========\n" +"|hg(1)|_, |hgrc(5)|_" + +msgid "" +"Copying\n" +"=======\n" +"This manual page is copyright 2006 Vadim Gelfer.\n" +"Mercurial is copyright 2005-2013 Matt Mackall.\n" +"Free use of this software is granted under the terms of the GNU General\n" +"Public License version 2 or any later version." +msgstr "" +"Copying\n" +"=======\n" +"本マニュアルページの著作権は copyright 2006 Vadim Gelfer です。\n" +"Mercurial の著作権は copyright 2005-2013 Matt Mackall です。\n" +"本ソフトウェアは、 バージョン2またはそれ以降の GNU General\n" +"Public License の元での自由な利用が保証されています。" + +msgid ".. include:: common.txt" +msgstr ".. include:: common.txt" + +msgid "" "Synopsis\n" "========" msgstr "" @@ -20545,6 +20963,89 @@ " ^\\.pc/\n" msgid "" +"======\n" +" hgrc\n" +"======" +msgstr "" +"======\n" +" hgrc\n" +"======" + +msgid "" +"---------------------------------\n" +"configuration files for Mercurial\n" +"---------------------------------" +msgstr "" +"------------------------\n" +"Mercurial の設定ファイル\n" +"------------------------" + +msgid "" +":Author: Bryan O'Sullivan \n" +":Organization: Mercurial\n" +":Manual section: 5\n" +":Manual group: Mercurial Manual" +msgstr "" +":Author: Bryan O'Sullivan \n" +":Organization: Mercurial\n" +":Manual section: 5\n" +":Manual group: Mercurial Manual" + +msgid "" +".. contents::\n" +" :backlinks: top\n" +" :class: htmlonly" +msgstr "" +".. contents::\n" +" :backlinks: top\n" +" :class: htmlonly" + +msgid "" +"\n" +"Description\n" +"===========" +msgstr "" +"\n" +"説明\n" +"====" + +msgid ".. include:: hgrc.5.gendoc.txt" +msgstr ".. include:: hgrc.5.gendoc.txt" + +msgid "" +"Author\n" +"======\n" +"Bryan O'Sullivan ." +msgstr "" +"著者\n" +"====\n" +"本マニュアルページの著者は Bryan O'Sullivan です。" + +msgid "" +"See Also\n" +"========\n" +"|hg(1)|_, |hgignore(5)|_" +msgstr "" +"他の参照先\n" +"==========\n" +"|hg(1)|_, |hgignore(5)|_" + +msgid "" +"Copying\n" +"=======\n" +"This manual page is copyright 2005 Bryan O'Sullivan.\n" +"Mercurial is copyright 2005-2013 Matt Mackall.\n" +"Free use of this software is granted under the terms of the GNU General\n" +"Public License version 2 or any later version." +msgstr "" +"Copying\n" +"=======\n" +"本マニュアルの著作権は copyright 2005 Bryan O'Sullivan です。\n" +"Mercurial の著作権は copyright 2005-2013 Matt Mackall です。\n" +"本ソフトウェアは、 バージョン2またはそれ以降の GNU General\n" +"Public License の元での自由な利用が保証されています。" + +msgid "" "Mercurial's internal web server, hgweb, can serve either a single\n" "repository, or a tree of repositories. In the second case, repository\n" "paths and global options can be defined using a dedicated\n" @@ -21808,14 +22309,14 @@ "log, outgoing, incoming, tip, parents, heads, glog" msgid "" -"Four styles are packaged with Mercurial: default (the style used\n" -"when no explicit preference is passed), compact, changelog,\n" +"Five styles are packaged with Mercurial: default (the style used\n" +"when no explicit preference is passed), compact, changelog, phases\n" "and xml.\n" "Usage::" msgstr "" -"Mercurial には(明示的な指定が無い場合に使用される)default、 compact\n" -"changelog および xml の4つのスタイル設定が同梱されています。\n" -"利用方法は::" +"Mercurial には、 default(明示的な指定が無い場合のスタイル)、 compact、\n" +"changelog、 phases、 および xml の5つのスタイル設定が同梱されています。\n" +"スタイルの指定方法は以下の通り::" msgid " $ hg log -r1 --style changelog" msgstr " $ hg log -r1 --style changelog" @@ -21903,12 +22404,15 @@ msgid "- label(label, expr)" msgstr "- label(label, expr)" +msgid "- rstdoc(text, style)" +msgstr "- rstdoc(text, style)" + +msgid "- strip(text[, chars])" +msgstr "- strip(text[, chars])" + msgid "- sub(pat, repl, expr)" msgstr "- sub(pat, repl, expr)" -msgid "- rstdoc(text, style)" -msgstr "- rstdoc(text, style)" - msgid "Also, for any expression that returns a list, there is a list operator:" msgstr "また、 列挙形式を返す expr に対しては、 以下の様な記述が可能です:" @@ -22514,16 +23018,6 @@ msgid "%d changesets found\n" msgstr "%d 個のリビジョンがあります\n" -msgid "bundling" -msgstr "バンドル生成中" - -msgid "manifests" -msgstr "マニフェスト" - -#, python-format -msgid "empty or missing revlog for %s" -msgstr "%s に対するリビジョンログが空ないし不在です" - msgid "adding changesets\n" msgstr "リビジョンを追加中\n" @@ -22539,6 +23033,14 @@ msgid "adding file changes\n" msgstr "ファイルの変更を追加中\n" +#, python-format +msgid " (%+d heads)" +msgstr "(%+d個のヘッド)" + +#, python-format +msgid "added %d changesets with %d changes to %d files%s\n" +msgstr "%d 個のリビジョン(%d の変更を %d ファイルに適用)を追加%s\n" + msgid "received file revlog group is empty" msgstr "ファイルのリビジョンログが空です" @@ -22549,14 +23051,6 @@ msgid "missing file data for %s:%s - run hg verify" msgstr "%s:%s のファイルデータが不在です - hg verify を実施してください" -#, python-format -msgid " (%+d heads)" -msgstr "(%+d個のヘッド)" - -#, python-format -msgid "added %d changesets with %d changes to %d files%s\n" -msgstr "%d 個のリビジョン(%d の変更を %d ファイルに適用)を追加%s\n" - msgid "unexpected response from remote server:" msgstr "連携先のサーバから予期しない返信:" @@ -22681,27 +23175,20 @@ #, python-format msgid "" "local changed %s which remote deleted\n" -"use (c)hanged version or (d)elete?" -msgstr "" -"変更したファイル %s は別リビジョンで登録除外されています\n" -"どちらを採用しますか? 変更:(c)hange 登録除外:(d)elete" - -msgid "&Changed" -msgstr "&Changed" - -msgid "&Delete" -msgstr "&Delete" +"use (c)hanged version or (d)elete?$$ &Changed $$ &Delete" +msgstr "" +"変更したファイル %s は別リビジョンで登録除外されています。\n" +"変更:(c)hanged と登録除外:(d)elete のどちらを採用しますか?$$ &Changed $$ " +"&Delete" #, python-format msgid "" "remote changed %s which local deleted\n" -"use (c)hanged version or leave (d)eleted?" -msgstr "" -"リモートで変更された %s はローカルで削除されています\n" -"どちらを採用しますか? 変更:(c)hanged 削除:(d)elete" - -msgid "&Deleted" -msgstr "&Deleted" +"use (c)hanged version or leave (d)eleted?$$ &Changed $$ &Deleted" +msgstr "" +"リモートで変更された %s は、ローカルで削除されています。\n" +"変更:(c)hanged と削除:(d)elete のどちらを採用しますか?$$ &Changed $$ " +"&Deleted" #, python-format msgid "update failed to remove %s: %s!\n" @@ -22988,6 +23475,10 @@ msgid "%s not found in the transaction" msgstr "トランザクション中に %s は見つかりませんでした" +#, python-format +msgid "attempted to add linkrev -1 to %s" +msgstr "linkrev -1 なリビジョンを %s に追加しようとしています" + msgid "consistency error in delta" msgstr "差分情報の不整合" @@ -24140,45 +24631,49 @@ #, python-format msgid "" " subrepository sources for %s differ\n" -"use (l)ocal source (%s) or (r)emote source (%s)?" -msgstr "" -" サブリポジトリ %s で差分が検出されました\n" -"どちらを採用しますか? 手元(%s):(l)ocal 連携先(%s):(r)emote" - -msgid "&Remote" -msgstr "&Remote" +"use (l)ocal source (%s) or (r)emote source (%s)?$$ &Local $$ &Remote" +msgstr "" +" サブリポジトリ %s で連携先との差分が検出されました。\n" +"手元(%s):(l)ocal と連携先(%s):(r)emote のどちらの内容を採用しますか?$$ " +"&Local $$ &Remote" #, python-format msgid "" " local changed subrepository %s which remote removed\n" -"use (c)hanged version or (d)elete?" -msgstr "" -"サブリポジトリで変更したファイル %s は、 連携先では登録除外されています\n" -"どちらを採用しますか? 変更:(c)hange 登録除外:(d)elete" +"use (c)hanged version or (d)elete?$$ &Changed $$ &Delete" +msgstr "" +" サブリポジトリで変更したファイル %s は連携先で登録除外されています。\n" +"変更:(c)hanged と登録除外:(d)elete のどちらを採用しますか?$$ &Changed $$ " +"&Delete" #, python-format msgid "" " remote changed subrepository %s which local removed\n" -"use (c)hanged version or (d)elete?" -msgstr "" -"サブリポジトリで登録除外されたファイル %s は、 連携先では変更されています\n" -"どちらを採用しますか? 変更:(c)hange 登録除外:(d)elete" +"use (c)hanged version or (d)elete?$$ &Changed $$ &Delete" +msgstr "" +" サブリポジトリで登録除外したファイル %s は連携先で変更されています。\n" +"変更:(c)hanged と登録除外:(d)elete のどちらを採用しますか?$$ &Changed $$ " +"&Delete" #, python-format msgid "" " subrepository sources for %s differ\n" "use (l)ocal source (%s) or (r)emote source (%s)?\n" -msgstr "" -" サブリポジトリ %s の作業領域で差分が検出されました\n" -"どちらを採用しますか? 手元(%s):(l)ocal 連携先(%s):(r)emote\n" +"$$ &Local $$ &Remote" +msgstr "" +" サブリポジトリ %s で連携先との差分が検出されました\n" +"手元(%s):(l)ocal と連携先(%s):(r)emote のどちらの内容を採用しますか?\n" +"$$ &Local $$ &Remote" #, python-format msgid "" " subrepository sources for %s differ (in checked out version)\n" "use (l)ocal source (%s) or (r)emote source (%s)?\n" -msgstr "" -" サブリポジトリ %s のリビジョンに差分が検出されました\n" -"どちらを採用しますか? 手元(%s):(l)ocal 連携先(%s):(r)emote\n" +"$$ &Local $$ &Remote" +msgstr "" +" サブリポジトリ %s の作業領域で差分が検出されました\n" +"手元(%s):(l)ocal と連携先(%s):(r)emote のどちらを採用しますか?\n" +"$$ &Local $$ &Remote" msgid "default path for subrepository not found" msgstr "サブリポジトリの連携先が見つかりません" @@ -24482,9 +24977,9 @@ " 例) \"foo\" および \"foo/bar\" は \"foo\"" msgid "" -":tabindent: Any text. Returns the text, with every line except the\n" -" first starting with a tab character." -msgstr ":tabindent: 文字列。 最初の行以外をタブ文字で字下げします。" +":tabindent: Any text. Returns the text, with every non-empty line\n" +" except the first starting with a tab character." +msgstr ":tabindent: 文字列。 最初の行以外の非空行をタブ文字で字下げします。" msgid "" ":urlescape: Any text. Escapes all \"special\" characters. For example,\n" @@ -24503,15 +24998,6 @@ msgid ":emailuser: Any text. Returns the user portion of an email address." msgstr ":emailuser: 文字列。 メールアドレスのユーザ名部分を取り出します。" -msgid "fill expects one or two arguments" -msgstr "fill の引数は1つないし2つです" - -msgid "fill expects an integer width" -msgstr "fill には数値を指定してください" - -msgid "date expects one or two arguments" -msgstr "date の引数は1つないし2つです" - msgid ":author: String. The unmodified author of the changeset." msgstr ":author: 文字列。 リビジョンの作者名(記録情報そのまま)。" @@ -24669,6 +25155,15 @@ msgid "filter %s expects one argument" msgstr "フィルタ %s は引数が1つ必要です" +msgid "date expects one or two arguments" +msgstr "date の引数は1つないし2つです" + +msgid "fill expects one to four arguments" +msgstr "fill の引数は1つから4つの間です" + +msgid "fill expects an integer width" +msgstr "fill には数値を指定してください" + #. i18n: "get" is a keyword msgid "get() expects two arguments" msgstr "get() の引数は2つです" @@ -24677,14 +25172,6 @@ msgid "get() expects a dict as first argument" msgstr "get() の第1引数は辞書でなければなりません" -#. i18n: "join" is a keyword -msgid "join expects one or two arguments" -msgstr "join の引数は1つないし2つです" - -#. i18n: "sub" is a keyword -msgid "sub expects three arguments" -msgstr "sub は引数が3つ必要です" - #. i18n: "if" is a keyword msgid "if expects two or three arguments" msgstr "if は2ないし3の引数が必要です" @@ -24693,16 +25180,31 @@ msgid "ifeq expects three or four arguments" msgstr "ifeq は3ないし4の引数が必要です" +#. i18n: "join" is a keyword +msgid "join expects one or two arguments" +msgstr "join の引数は1つないし2つです" + #. i18n: "rstdoc" is a keyword msgid "rstdoc expects two arguments" msgstr "rstdoc の引数は2つです" +msgid "strip expects one or two arguments" +msgstr "strip の引数は1つないし2つです" + +#. i18n: "sub" is a keyword +msgid "sub expects three arguments" +msgstr "sub は引数が3つ必要です" + msgid "unmatched quotes" msgstr "引用符の対応関係が不正です" #, python-format -msgid "style not found: %s" -msgstr "スタイルが見つかりません: %s" +msgid "style '%s' not found" +msgstr "スタイル '%s' が見つかりません" + +#, python-format +msgid "available styles: %s" +msgstr "利用可能なスタイル: %s" #, python-format msgid "%s: missing value" diff -r 004f965630d9 -r a58251c0568f i18n/pt_BR.po --- a/i18n/pt_BR.po Fri Jul 12 11:14:42 2013 +0900 +++ b/i18n/pt_BR.po Thu Aug 01 22:52:05 2013 -0500 @@ -31,7 +31,7 @@ msgstr "" "Project-Id-Version: Mercurial\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-04-20 18:56-0300\n" +"POT-Creation-Date: 2013-07-23 09:37-0300\n" "PO-Revision-Date: 2011-06-28 09:55+0200\n" "Last-Translator: Wagner Bruna \n" "Language-Team: Brazilian Portuguese\n" @@ -249,7 +249,7 @@ " sources = serve" msgstr "" " [acl]\n" -" # Permite ou recusa acesso para revisões de entrada apenas se sua origem\n" +" # Permite ou recusa acesso para revisões recebidas apenas se sua origem\n" " # estiver listada aqui, caso contrário ignora esta verificação. A origem\n" " # é \"serve\" para todo tipo de acesso remoto (http ou ssh), \"push\",\n" " # \"pull\" ou \"bundle\" quando os comandos correspondentes forem\n" @@ -1346,7 +1346,7 @@ msgstr "" " É possível mapear endereços de email alternativos para um\n" " endereço principal provendo um arquivo usando o seguinte\n" -" formato:" +" formato::" msgid " = " msgstr " = " @@ -1354,11 +1354,13 @@ msgid "" " Such a file may be specified with the --aliases option, otherwise\n" " a .hgchurn file will be looked for in the working directory root.\n" +" Aliases will be split from the rightmost \"=\".\n" " " msgstr "" " Esse arquivo pode ser especificado com a opção --aliases; de\n" " outro modo, será usado um arquivo .hgchurn no raiz do diretório\n" " de trabalho, se existir.\n" +" Apelidos serão divididos no \"=\" mais à direita.\n" " " #, python-format @@ -1524,6 +1526,16 @@ " tags.local = black bold" msgid "" +" rebase.rebased = blue\n" +" rebase.remaining = red bold" +msgstr "" +" rebase.rebased = blue\n" +" rebase.remaining = red bold" + +msgid " histedit.remaining = red bold" +msgstr " histedit.remaining = red bold" + +msgid "" "The available effects in terminfo mode are 'blink', 'bold', 'dim',\n" "'inverse', 'invisible', 'italic', 'standout', and 'underline'; in\n" "ECMA-48 mode, the options are 'bold', 'inverse', 'italic', and\n" @@ -1626,7 +1638,7 @@ #. i18n: "label" is a keyword msgid "label expects two arguments" -msgstr "label exige dois argumentos" +msgstr "label espera dois argumentos" #. i18n: 'always', 'auto', and 'never' are keywords and should #. not be translated @@ -2343,6 +2355,10 @@ msgstr "não foi possível encontrar ferramenta \"%s\" necessária" #, python-format +msgid "splicemap entry %s is not a valid revision identifier" +msgstr "a entrada %s do splicemap não é um identificador de revisão válido" + +#, python-format msgid "%s error:\n" msgstr "erro no comando %s:\n" @@ -2355,10 +2371,6 @@ msgstr "não foi possível abrir arquivo de mapeamento %r: %s" #, python-format -msgid "syntax error in %s(%d): child parent1[,parent2] expected" -msgstr "erro de sintaxe em %s(%d): \"filho pai1[,pai2]\" esperado" - -#, python-format msgid "%s: invalid source repository type" msgstr "%s: tipo de repositório de origem inválido" @@ -2381,6 +2393,14 @@ msgid "getting files" msgstr "obtendo arquivos" +#, python-format +msgid "syntax error in %s(%d): child parent1[,parent2] expected" +msgstr "erro de sintaxe em %s(%d): \"filho pai1[,pai2]\" esperado" + +#, python-format +msgid "splicemap file not found or error reading %s:" +msgstr "arquivo splicemap não encontrado, ou erro ao ler %s:" + msgid "revisions" msgstr "revisões" @@ -2558,6 +2578,10 @@ "%s\n" #, python-format +msgid "changeset %d is both before and after %d\n" +msgstr "a revisão %d está ao mesmo tempo antes e depois de %d\n" + +#, python-format msgid "%d changeset entries\n" msgstr "%d entradas de revisão\n" @@ -3479,8 +3503,9 @@ msgid "commands to sign and verify changesets" msgstr "comando para assinar e verificar revisões" -msgid "error while verifying signature" -msgstr "erro verificando assinatura" +#, python-format +msgid "%s Unknown key ID \"%s\"\n" +msgstr "%s ID de chave desconhecido \"%s\"\n" #, python-format msgid "%s Bad signature from \"%s\"\n" @@ -4042,7 +4067,7 @@ msgstr "" "Edite a mensagem de consolidação, e feche o editor.\n" "Para esse exemplo, vamos assumir que a mensagem\n" -"foi mudada para ``Add beta and delta.``Depois que o histedit for\n" +"foi mudada para ``Add beta and delta.`` Depois que o histedit for\n" "executado, e tiver removido quaisquer revisões velhas ou temporárias\n" "de que necessitava, o histórico se parecerá com o seguinte::" @@ -4241,7 +4266,7 @@ msgstr "Lê alterações de histórico a partir do arquivo especificado." msgid "continue an edit already in progress" -msgstr "continua uma edição em progresso" +msgstr "continua uma edição em andamento" msgid "don't strip old nodes after edit is complete" msgstr "não remove nós antigos após o término da edição" @@ -4306,6 +4331,9 @@ msgid "cannot edit history that would orphan nodes" msgstr "não é possível editar histórico de forma a produzir nós órfãos" +msgid "cannot edit history that contains merges" +msgstr "não é possível editar histórico que contenha mesclagens" + #, python-format msgid "cannot edit immutable changeset: %s" msgstr "não é possível editar uma revisão imutável: %s" @@ -4340,6 +4368,21 @@ msgid "histedit: moving bookmarks %s from %s to %s\n" msgstr "histedit: movendo marcadores %s de %s para %s\n" +#. i18n: column positioning for "hg summary" +#, python-format +msgid "hist: %s (histedit --continue)\n" +msgstr "hist: %s (histedit --continue)\n" + +#, python-format +msgid "%d remaining" +msgstr "%d por fazer" + +msgid "histedit in progress" +msgstr "edição de histórico em andamento" + +msgid "use 'hg histedit --continue' or 'hg histedit --abort'" +msgstr "use 'hg histedit --continue' ou 'hg histedit --abort'" + msgid "accelerate status report using Linux's inotify service" msgstr "acelera informações de status usando o serviço inotify do Linux" @@ -5157,7 +5200,7 @@ msgstr " .. container:: verbose" msgid " Some examples:" -msgstr " Alguns exemplos::" +msgstr " Alguns exemplos:" msgid " - pull largefiles for all branch heads::" msgstr " - traz largefiles para todas as cabeças de ramo::" @@ -5363,27 +5406,21 @@ msgid "uncommitted local changes" msgstr "alterações locais pendentes" -msgid "&Largefile" -msgstr "&Largefile" - -msgid "&Normal file" -msgstr "Arquivo &Normal" - #, python-format msgid "" "%s has been turned into a largefile\n" -"use (l)argefile or keep as (n)ormal file?" +"use (l)argefile or keep as (n)ormal file?$$ &Largefile $$ &Normal file" msgstr "" "%s foi transformado em um largefile\n" -"usar (l)argefile ou manter como arquivo (n)ormal?" +"usar (l)argefile ou manter como arquivo (n)ormal?$$ &Largefile $$ Arquivo &Normal" #, python-format msgid "" "%s has been turned into a normal file\n" -"keep as (l)argefile or use (n)ormal file?" +"keep as (l)argefile or use (n)ormal file?$$ &Largefile $$ &Normal file" msgstr "" "%s foi transformado em um arquivo normal\n" -"manter como (l)argefile ou usar um arquivo (n)ormal?" +"manter como (l)argefile ou usar um arquivo (n)ormal?$$ &Largefile $$ Arquivo &Normal" #, python-format msgid "merging %s and %s to %s\n" @@ -5396,16 +5433,10 @@ #, python-format msgid "" "largefile %s has a merge conflict\n" -"keep (l)ocal or take (o)ther?" +"keep (l)ocal or take (o)ther?$$ &Local $$ &Other" msgstr "" "largefile %s tem um conflito de mesclagem\n" -"manter (l)ocal ou usar (o)utro?" - -msgid "&Local" -msgstr "&Local" - -msgid "&Other" -msgstr "&Outra" +"manter (l)ocal ou usar (o)utro?$$ &Local $$ &Outro" msgid "no files to copy" msgstr "nenhum arquivo para copiar" @@ -5448,16 +5479,16 @@ #. i18n: column positioning for "hg summary" msgid "largefiles: (no remote repo)\n" -msgstr "largefiles: (nenhum repositório remoto)\n" +msgstr "largefiles: (nenhum repositório remoto)\n" #. i18n: column positioning for "hg summary" msgid "largefiles: (no files to upload)\n" -msgstr "largefiles: (nenhum arquivo a ser enviado)\n" +msgstr "largefiles: (nenhum arquivo a ser enviado)\n" #. i18n: column positioning for "hg summary" #, python-format msgid "largefiles: %d to upload\n" -msgstr "largefiles: %d a serem enviados\n" +msgstr "largefiles: %d a serem enviados\n" #, python-format msgid "largefile %s is not in cache and could not be downloaded" @@ -6210,15 +6241,17 @@ msgid "" " An existing changeset may be placed under mq control with -r/--rev\n" -" (e.g. qimport --rev tip -n patch will place tip under mq control).\n" -" With -g/--git, patches imported with --rev will use the git diff\n" -" format. See the diffs help topic for information on why this is\n" -" important for preserving rename/copy information and permission\n" -" changes. Use :hg:`qfinish` to remove changesets from mq control." +" (e.g. qimport --rev . -n patch will place the current revision\n" +" under mq control). With -g/--git, patches imported with --rev will\n" +" use the git diff format. See the diffs help topic for information\n" +" on why this is important for preserving rename/copy information\n" +" and permission changes. Use :hg:`qfinish` to remove changesets\n" +" from mq control." msgstr "" " Uma revisão existente pode ser colocada sob o controle da mq\n" -" com -r/--rev (por exemplo, qimport --rev tip -n patch colocará a\n" -" tip sob o controle da mq). Com -g/--git, os patches importados\n" +" com -r/--rev (por exemplo, qimport --rev . -n patch colocará a\n" +" revisão atual sob o controle da mq).\n" +" Com -g/--git, os patches importados\n" " com --rev usarão o formato git diff. Veja o tópico de ajuda diff\n" " para informações sobre por que isso é importante para preservar\n" " informação de cópia e renomeação e mudanças de permissão.\n" @@ -7207,11 +7240,11 @@ #. i18n: column positioning for "hg summary" #, python-format msgid "mq: %s\n" -msgstr "mq: %s\n" +msgstr "mq: %s\n" #. i18n: column positioning for "hg summary" msgid "mq: (empty queue)\n" -msgstr "mq: (fila vazia)\n" +msgstr "mq: (fila vazia)\n" msgid "" "``mq()``\n" @@ -8018,14 +8051,8 @@ "\n" "Sumário final:" -msgid "are you sure you want to send (yn)?" -msgstr "você tem certeza que deseja enviar (yn)?" - -msgid "&No" -msgstr "(&N) não" - -msgid "&Yes" -msgstr "(&Y) sim" +msgid "are you sure you want to send (yn)?$$ &Yes $$ &No" +msgstr "você tem certeza que deseja enviar (yn)?$$ (&Y) Sim $$ &Não" msgid "patchbomb canceled" msgstr "patchbomb cancelado" @@ -8330,9 +8357,9 @@ msgid "" " If you don't specify a destination changeset (``-d/--dest``),\n" -" rebase uses the tipmost head of the current named branch as the\n" -" destination. (The destination changeset is not modified by\n" -" rebasing, but new changesets are added as its descendants.)" +" rebase uses the current branch tip as the destination. (The\n" +" destination changeset is not modified by rebasing, but new\n" +" changesets are added as its descendants.)" msgstr "" " Se você não especificar uma revisão de destino (opção ``-d/--dest``),\n" " rebase usará como destino a cabeça mais recente do ramo nomeado\n" @@ -8395,14 +8422,14 @@ msgid "" " One result of the rules for selecting the destination changeset\n" " and source branch is that, unlike ``merge``, rebase will do\n" -" nothing if you are at the latest (tipmost) head of a named branch\n" +" nothing if you are at the branch tip of a named branch\n" " with two heads. You need to explicitly specify source and/or\n" " destination (or ``update`` to the other head, if it's the head of\n" " the intended source branch)." msgstr "" " Um resultado das regras de seleção da revisão de destino é que, ao\n" -" contrário de ``merge``, rebase não fará nada se você estiver na última\n" -" cabeça (a mais próxima da tip) de um ramo nomeado com duas ou mais\n" +" contrário de ``merge``, rebase não fará nada se você estiver na\n" +" revisão mais recente de um ramo nomeado com duas ou mais\n" " cabeças. Nesse caso você precisa especificar explicitamente a origem\n" " e/ou o destino (ou fazer um ``update`` para outra cabeça, se for a\n" " cabeça do ramo de origem desejado)." @@ -8500,7 +8527,7 @@ msgstr "não se pode usar a revisão %d como base, o resultado teria 3 pais" msgid "no rebase in progress" -msgstr "nenhum rebaseamento em progresso" +msgstr "nenhum rebaseamento em andamento" #, python-format msgid "can't abort rebase due to immutable changesets %s" @@ -8535,12 +8562,27 @@ msgid "--tool can only be used with --rebase" msgstr "--tool só pode ser usada em conjunto com --rebase" +#. i18n: column positioning for "hg summary" +#, python-format +msgid "rebase: %s, %s (rebase --continue)\n" +msgstr "rebase: %s, %s (rebase --continue)\n" + +#, python-format +msgid "%d rebased" +msgstr "%d rebaseados" + msgid "rebase working directory to branch head" msgstr "rebaseia o diretório de trabalho para a cabeça do ramo" msgid "specify merge tool for rebase" msgstr "especifica o utilitário de mesclagem para o rebaseamento" +msgid "rebase in progress" +msgstr "rebaseamento em andamento" + +msgid "use 'hg rebase --continue' or 'hg rebase --abort'" +msgstr "use 'hg rebase --continue' ou 'hg rebase --abort'" + msgid "commands to interactively select changes for commit/qrefresh" msgstr "" "comandos para selecionar interativamente mudanças em um commit ou qrefresh" @@ -8564,35 +8606,17 @@ msgid "%d hunks, %d lines changed\n" msgstr "%d trechos, %d linhas modificadas\n" -msgid "[Ynesfdaq?]" -msgstr "[Ynesfdaq?]" - -msgid "&Yes, record this change" -msgstr "(&Y) sim, grava esta mudança" - -msgid "&No, skip this change" -msgstr "(&N) não, descarta essa mudança" - -msgid "&Edit the change manually" -msgstr "&Edita a mudança manualmente" - -msgid "&Skip remaining changes to this file" -msgstr "(&S) descarta mudanças restantes neste arquivo" - -msgid "Record remaining changes to this &file" -msgstr "(&F) grava as mudanças restantes deste arquivo" - -msgid "&Done, skip remaining changes and files" -msgstr "(&D) terminado, descarta mudanças e arquivos restantes" - -msgid "Record &all changes to all remaining files" -msgstr "(&A) grava todas as mudanças dos arquivos restantes" - -msgid "&Quit, recording no changes" -msgstr "(&Q) encerra, sem gravar nenhuma mudança" - -msgid "&?" -msgstr "&?" +msgid "" +"[Ynesfdaq?]$$ &Yes, record this change$$ &No, skip this change$$ &Edit the " +"change manually$$ &Skip remaining changes to this file$$ Record remaining " +"changes to this &file$$ &Done, skip remaining changes and files$$ Record " +"&all changes to all remaining files$$ &Quit, recording no changes$$ &?" +msgstr "" +"[Ynesfdaq?]$$ (&Y) sim, grave esta mudança$$ &Não, descarte esta mudança$$ " +"&Edite a mudança manualmente$$ De&Scarte as mudanças restantes neste " +"arquivo$$ (&F) grave as mudanças restantes deste arquivo$$ Termina&Do, " +"descarte as mudanças e arquivos restantes$$ Grave tod&As as mudanças de " +"todos os arquivos restantes$$ (&Q) encerra, sem gravar nenhuma mudança$$ &?" msgid "cannot edit patch for whole file" msgstr "não é possível editar um patch para o arquivo inteiro" @@ -8944,8 +8968,7 @@ " with rollback, the other clone will suddenly stop working: all\n" " operations will fail with \"abort: working directory has unknown\n" " parent\". The only known workaround is to use debugsetparents on\n" -" the broken clone to reset it to a changeset that still exists\n" -" (e.g. tip).\n" +" the broken clone to reset it to a changeset that still exists.\n" " " msgstr "" " .. note::\n" @@ -8958,7 +8981,7 @@ " \"abortado: diretório de trabalho tem pai desconhecido\". A\n" " única correção conhecida é o uso do comando debugsetparents no\n" " clone quebrado para reposicioná-lo para uma revisão que ainda\n" -" exista (por exemplo, a tip).\n" +" exista.\n" " " msgid "convert a shared repository to a normal one" @@ -9254,6 +9277,12 @@ ":transplanted: String. O identificador de nó da revisão\n" " transplantada, se existir." +msgid "transplant in progress" +msgstr "transplante em andamento" + +msgid "use 'hg transplant --continue' or 'hg update' to abort" +msgstr "use 'hg transplant --continue' ou 'hg update' para abortar" + msgid "allow the use of MBCS paths with problematic encodings" msgstr "permite o uso de caminhos MBCS com codificação problemática." @@ -9577,6 +9606,16 @@ msgid "%s: unknown bundle version %s" msgstr "%s: versão de bundle %s desconhecida" +msgid "bundling" +msgstr "criando bundle" + +msgid "manifests" +msgstr "manifestos" + +#, python-format +msgid "empty or missing revlog for %s" +msgstr "revlog vazio ou não encontrado para %s" + msgid "no node" msgstr "nenhum nó" @@ -9696,47 +9735,47 @@ #. i18n: column positioning for "hg log" #, python-format msgid "changeset: %d:%s\n" -msgstr "revisão: %d:%s\n" +msgstr "revisão: %d:%s\n" #. i18n: column positioning for "hg log" #, python-format msgid "branch: %s\n" -msgstr "ramo: %s\n" +msgstr "ramo: %s\n" #. i18n: column positioning for "hg log" #, python-format msgid "bookmark: %s\n" -msgstr "marcador: %s\n" +msgstr "marcador: %s\n" #. i18n: column positioning for "hg log" #, python-format msgid "tag: %s\n" -msgstr "etiqueta: %s\n" +msgstr "etiqueta: %s\n" #. i18n: column positioning for "hg log" #, python-format msgid "phase: %s\n" -msgstr "fase: %s\n" +msgstr "fase: %s\n" #. i18n: column positioning for "hg log" #, python-format msgid "parent: %d:%s\n" -msgstr "pai: %d:%s\n" +msgstr "pai: %d:%s\n" #. i18n: column positioning for "hg log" #, python-format msgid "manifest: %d:%s\n" -msgstr "manifesto: %d:%s\n" +msgstr "manifesto: %d:%s\n" #. i18n: column positioning for "hg log" #, python-format msgid "user: %s\n" -msgstr "usuário: %s\n" +msgstr "usuário: %s\n" #. i18n: column positioning for "hg log" #, python-format msgid "date: %s\n" -msgstr "data: %s\n" +msgstr "data: %s\n" #. i18n: column positioning for "hg log" msgid "files:" @@ -9753,17 +9792,17 @@ #. i18n: column positioning for "hg log" #, python-format msgid "files: %s\n" -msgstr "arquivos: %s\n" +msgstr "arquivos: %s\n" #. i18n: column positioning for "hg log" #, python-format msgid "copies: %s\n" -msgstr "cópias: %s\n" +msgstr "cópias: %s\n" #. i18n: column positioning for "hg log" #, python-format msgid "extra: %s=%s\n" -msgstr "extra: %s=%s\n" +msgstr "extra: %s=%s\n" msgid "description:\n" msgstr "descrição:\n" @@ -9771,7 +9810,7 @@ #. i18n: column positioning for "hg log" #, python-format msgid "summary: %s\n" -msgstr "sumário: %s\n" +msgstr "sumário: %s\n" #, python-format msgid "%s: no key named '%s'" @@ -9901,6 +9940,18 @@ msgid "no changes needed to %s\n" msgstr "nenhuma mudança necessária para %s\n" +msgid "graft in progress" +msgstr "enxerto em andamento" + +msgid "use 'hg graft --continue' or 'hg update' to abort" +msgstr "use 'hg graft --continue' ou 'hg update' para abortar" + +msgid "last update was interrupted" +msgstr "o último update foi interrompido" + +msgid "use 'hg update' to get a consistent checkout" +msgstr "use 'hg update' para obter uma cópia de trabalho consistente" + msgid "repository root directory or name of overlay bundle file" msgstr "" "diretório raiz do repositório ou nome de arquivo de bundle para sobreposição" @@ -10256,7 +10307,7 @@ " do arquivo (ou forçado através de -t/--type)." msgid " Examples:" -msgstr " Exemplos::" +msgstr " Exemplos:" msgid " - create a zip file containing the 1.0 release::" msgstr " - cria um arquivo zip contendo a versão 1.0::" @@ -10669,8 +10720,8 @@ msgid "mark a bookmark inactive" msgstr "torna um marcador inativo" -msgid "hg bookmarks [-f] [-d] [-i] [-m NAME] [-r REV] [NAME]" -msgstr "hg bookmarks [-f] [-d] [-i] [-m NOME] [-r REV] [NOME]" +msgid "hg bookmarks [OPTIONS]... [NAME]..." +msgstr "hg bookmarks [OPÇÕES]... [NOME]..." msgid "track a line of development with movable markers" msgstr "rastreia uma linha de desenvolvimento com marcadores móveis" @@ -10766,6 +10817,9 @@ msgid "new bookmark name required" msgstr "requerido nome do novo marcador" +msgid "only one new bookmark name allowed" +msgstr "apenas um novo nome de marcador é permitido" + msgid "no bookmarks set\n" msgstr "nenhum marcador definido\n" @@ -10999,12 +11053,10 @@ msgid "" " Print the specified files as they were at the given revision. If\n" -" no revision is given, the parent of the working directory is used,\n" -" or tip if no revision is checked out." +" no revision is given, the parent of the working directory is used." msgstr "" " Imprime o conteúdo dos arquivos especificados na revisão pedida.\n" -" Se a revisão não for dada, o pai do diretório de trabalho é usado,\n" -" ou a tip se nenhuma revisão estiver obtida." +" Se a revisão não for dada, será usado o pai do diretório de trabalho." msgid "" " Output may be to a file, in which case the name of the file is\n" @@ -11240,6 +11292,9 @@ msgid "amend the parent of the working dir" msgstr "emenda o pai do diretório de trabalho" +msgid "use the secret phase for committing" +msgstr "consolida a revisão na fase \"secret\"" + msgid "commit the specified files or all outstanding changes" msgstr "consolida os arquivos pedidos ou todas as mudanças por gravar" @@ -11320,12 +11375,6 @@ msgid "cannot amend with --subrepos" msgstr "amend não suporta --subrepos" -msgid "cannot commit an interrupted graft operation" -msgstr "não é possível realizar um commit de um enxerto interrompido" - -msgid "use \"hg graft -c\" to continue graft" -msgstr "use \"hg graft -c\" para continuar o enxerto" - msgid "can only close branch heads" msgstr "só se pode fechar cabeças de ramo" @@ -12365,8 +12414,8 @@ msgid " - show the source of a grafted changeset::" msgstr " - mostra a origem de uma revisão enxertada::" -msgid " hg log --debug -r tip" -msgstr " hg log --debug -r tip" +msgid " hg log --debug -r ." +msgstr " hg log --debug -r ." msgid "" " Returns 0 on successful completion.\n" @@ -12497,34 +12546,33 @@ msgid "[-ct] [-r STARTREV] [REV]..." msgstr "[-ct] [-r REVINICIAL] [REV]..." -msgid "show current repository heads or show branch heads" -msgstr "mostra as cabeças atuais do repositório ou cabeças de ramo" - -msgid " With no arguments, show all repository branch heads." -msgstr " Sem argumentos, mostra todas as cabeças de ramo do repositório." - -msgid "" -" Repository \"heads\" are changesets with no child changesets. They are\n" -" where development generally takes place and are the usual targets\n" -" for update and merge operations. Branch heads are changesets that have\n" -" no child changeset on the same branch." -msgstr "" -" \"Cabeças\" do repositório são revisões que não têm revisões\n" -" filhas. Elas são onde o desenvolvimento geralmente\n" -" acontece e são os alvos costumeiros para operações update e\n" -" merge. Cabeças de ramo são revisões que não possuem revisões filhas\n" -" no mesmo ramo." - -msgid "" -" If one or more REVs are given, only branch heads on the branches\n" -" associated with the specified changesets are shown. This means\n" -" that you can use :hg:`heads foo` to see the heads on a branch\n" -" named ``foo``." +msgid "show branch heads" +msgstr "exibe cabeças de ramo" + +msgid "" +" With no arguments, show all open branch heads in the repository.\n" +" Branch heads are changesets that have no descendants on the\n" +" same branch. They are where development generally takes place and\n" +" are the usual targets for update and merge operations." +msgstr "" +" Sem argumentos, exibe todas as cabeças de ramo abertas\n" +" do repositório.\n" +" \"Cabeças\" de ramo são revisões que não possuem descendentes\n" +" no mesmo ramo.\n" +" Elas são onde o desenvolvimento geralmente acontece\n" +" e são os alvos usuais para operações update e\n" +" merge. " + +msgid "" +" If one or more REVs are given, only open branch heads on the\n" +" branches associated with the specified changesets are shown. This\n" +" means that you can use :hg:`heads .` to see the heads on the\n" +" currently checked-out branch." msgstr "" " Se um ou mais argumentos REV forem dados, apenas cabeças de ramo\n" -" nos ramos correspondentes a essas revisões serão mostradas. Ou\n" -" seja, você pode usar :hg:`heads foo` para mostrar as cabeças no\n" -" ramo ``foo``." +" abertas nos ramos correspondentes a essas revisões serão mostradas. Ou\n" +" seja, você pode usar :hg:`heads .` para mostrar as cabeças no\n" +" ramo atual." msgid "" " If -c/--closed is specified, also show branch heads marked closed\n" @@ -12542,10 +12590,10 @@ msgid "" " If -t/--topo is specified, named branch mechanics will be ignored and only\n" -" changesets without children will be shown." +" topological heads (changesets with no children) will be shown." msgstr "" " Se -t/--topo for especificado, ramos nomeados serão ignorados e apenas\n" -" revisões sem filhas serão mostradas." +" cabeças topológicas (revisões sem filhas) serão mostradas." msgid "" " Returns 0 if matching heads are found, 1 if not.\n" @@ -12684,8 +12732,8 @@ msgid "base path (DEPRECATED)" msgstr "caminho base (OBSOLETO)" -msgid "skip check for outstanding uncommitted changes" -msgstr "não faz verificação de mudanças ainda não consolidadas" +msgid "skip check for outstanding uncommitted changes (DEPRECATED)" +msgstr "não faz verificação de mudanças ainda não consolidadas (OBSOLETO)" msgid "don't commit, just update the working directory" msgstr "não consolida, apenas atualiza o diretório de trabalho" @@ -12713,11 +12761,11 @@ " (se --no-commit não for especificado)." msgid "" -" If there are outstanding changes in the working directory, import\n" -" will abort unless given the -f/--force flag." -msgstr "" -" Se houver mudanças não gravadas no diretório de trabalho, import\n" -" irá abortar, a não ser que a opção -f/--force seja passada." +" Because import first applies changes to the working directory,\n" +" import will abort if there are outstanding changes." +msgstr "" +" Como o comando import primeiro aplica as mudanças ao diretório\n" +" de trabalho, ele abortará se houverem mudanças não consolidadas." msgid "" " You can import a patch straight from a mail message. Even patches\n" @@ -13167,8 +13215,8 @@ msgid "can't specify a revision with --all" msgstr "você não pode especificar uma revisão com --all" -msgid "force a merge with outstanding changes" -msgstr "força uma mesclagem com mudanças ainda não consideradas" +msgid "force a merge including outstanding changes (DEPRECATED)" +msgstr "força a inclusão na mesclagem de mudanças não consolidadas (OBSOLETO)" msgid "revision to merge" msgstr "revisão a ser mesclada" @@ -13710,11 +13758,11 @@ " can be used to remove files from the next revision without\n" " deleting them from the working directory." msgstr "" -" -A/--after pode ser usado para remover\n" -" apenas arquivos já removidos do diretório de trabalho,\n" -" -f/--force pode ser usado para forçar a remoção, e -Af pode ser\n" -" usado para remover os arquivos da próxima revisão sem removê-los\n" -" do diretório de trabalho." +" -A/--after pode ser usado para remover\n" +" apenas arquivos já removidos do diretório de trabalho,\n" +" -f/--force pode ser usado para forçar a remoção, e -Af pode ser\n" +" usado para remover os arquivos da próxima revisão sem removê-los\n" +" do diretório de trabalho." msgid "" " The following table details the behavior of remove for different\n" @@ -14017,8 +14065,15 @@ msgid "ignore safety measures" msgstr "ignora medidas de segurança" -msgid "roll back the last transaction (dangerous)" -msgstr "desfaz a última transação (perigoso)" +msgid "roll back the last transaction (DANGEROUS) (DEPRECATED)" +msgstr "desfaz a última transação (PERIGOSO) (OBSOLETO)" + +msgid "" +" Please use :hg:`commit --amend` instead of rollback to correct\n" +" mistakes in the last commit." +msgstr "" +" Use :hg:`commit --amend` ao invés de rollback para corrigir\n" +" erros na última consolidação." msgid "" " This command should be used with care. There is only one level of\n" @@ -14387,7 +14442,7 @@ #. i18n: column positioning for "hg summary" #, python-format msgid "parent: %d:%s " -msgstr "pai: %d:%s " +msgstr "pai: %d:%s " msgid " (empty repository)" msgstr " (repositório vazio)" @@ -14398,11 +14453,11 @@ #. i18n: column positioning for "hg summary" #, python-format msgid "branch: %s\n" -msgstr "ramo: %s\n" +msgstr "ramo: %s\n" #. i18n: column positioning for "hg summary" msgid "bookmarks:" -msgstr "marcadores:" +msgstr "marcadores: " #, python-format msgid "%d modified" @@ -14444,6 +14499,9 @@ msgid "%d subrepos" msgstr "%d sub-repositórios" +msgid " (interrupted update)" +msgstr " (update interrompido)" + msgid " (merge)" msgstr " (mesclagem)" @@ -14479,11 +14537,11 @@ msgstr "atualizações: %d novas revisões, %d cabeças de ramo (merge)\n" msgid "1 or more incoming" -msgstr "1 ou mais de entrada" +msgstr "1 ou mais a serem recebidas" #, python-format msgid "%d outgoing" -msgstr "%d de saída" +msgstr "%d a serem enviadas" #, python-format msgid "%d incoming bookmarks" @@ -14496,11 +14554,11 @@ #. i18n: column positioning for "hg summary" #, python-format msgid "remote: %s\n" -msgstr "remoto: %s\n" +msgstr "remoto: %s\n" #. i18n: column positioning for "hg summary" msgid "remote: (synced)\n" -msgstr "remoto: (sincronizado)\n" +msgstr "remoto: (sincronizado)\n" msgid "force tag" msgstr "força a mudança da etiqueta" @@ -14541,11 +14599,10 @@ msgid "" " If no revision is given, the parent of the working directory is\n" -" used, or tip if no revision is checked out." +" used." msgstr "" " Se a revisão não for fornecida, será usada a revisão pai do\n" -" diretório de trabalho, ou a tip se a cópia de trabalho não\n" -" estiver em uma revisão." +" diretório de trabalho." msgid "" " To facilitate version control, distribution, and merging of tags,\n" @@ -14630,8 +14687,8 @@ msgid "[-p] [-g]" msgstr "[-p] [-g]" -msgid "show the tip revision" -msgstr "exibe a revisão mais recente" +msgid "show the tip revision (DEPRECATED)" +msgstr "exibe a revisão mais recente (OBSOLETO)" msgid "" " The tip revision (usually just called the tip) is the changeset\n" @@ -14654,6 +14711,9 @@ " especial e não pode ser renomeada ou atribuída a outra\n" " revisão." +msgid " This command is deprecated, please use :hg:`heads` instead." +msgstr " Este comando é obsoleto, use :hg:`heads` em seu lugar." + msgid "update to new branch head if changesets were unbundled" msgstr "" "atualiza para nova cabeça de ramo se revisões forem extraídas do bundle" @@ -14827,11 +14887,11 @@ msgstr "(veja http://mercurial.selenic.com para mais informações)" msgid "" -"Copyright (C) 2005-2012 Matt Mackall and others\n" +"Copyright (C) 2005-2013 Matt Mackall and others\n" "This is free software; see the source for copying conditions. There is NO\n" "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" msgstr "" -"Copyright (C) 2005-2012 Matt Mackall e outros\n" +"Copyright (C) 2005-2013 Matt Mackall e outros\n" "Este software é livre; veja os fontes para condições de cópia. Não\n" "há garantias, nem mesmo de adequação para qualquer propósito em\n" "particular.\n" @@ -15259,10 +15319,10 @@ #, python-format msgid "" " no tool found to merge %s\n" -"keep (l)ocal or take (o)ther?" +"keep (l)ocal or take (o)ther?$$ &Local $$ &Other" msgstr "" " nenhuma ferramenta encontrada para mesclar %s\n" -"manter (l)ocal ou usar (o)utro?" +"manter o arquivo (l)ocal ou usar o (o)utro?$$ &Local $$ &Outro" msgid "" "``internal:local``\n" @@ -15336,16 +15396,16 @@ msgstr "mesclagem de %s falhou!\n" #, python-format -msgid "was merge of '%s' successful (yn)?" -msgstr "a mesclagem de '%s' teve sucesso (yn)?" +msgid "was merge of '%s' successful (yn)?$$ &Yes $$ &No" +msgstr "a mesclagem de '%s' teve sucesso (yn)?$$ (&Y) sim $$ &Não" #, python-format msgid "" " output file %s appears unchanged\n" -"was merge successful (yn)?" -msgstr "" -" arquivo de saída %s parece não ter modificações\n" -"a mesclagem teve sucesso (yn)?" +"was merge successful (yn)?$$ &Yes $$ &No" +msgstr "" +" o arquivo de saída %s parece não ter modificações\n" +"a mesclagem teve sucesso (yn)?$$ (&Y) sim $$ &Não" msgid "unterminated string" msgstr "string não terminada" @@ -15672,19 +15732,19 @@ msgstr "Arquivos de Configuração" msgid "Date Formats" -msgstr "Formatos de datas" +msgstr "Formatos de Datas" msgid "File Name Patterns" -msgstr "Padrões de nome de arquivo" +msgstr "Padrões de Nomes de Arquivo" msgid "Environment Variables" -msgstr "Variáveis de ambiente" +msgstr "Variáveis de Ambiente" msgid "Specifying Single Revisions" -msgstr "Especificação de revisões únicas" +msgstr "Especificação de Revisões Únicas" msgid "Specifying Multiple Revisions" -msgstr "Especificação de múltiplas revisões" +msgstr "Especificação de Múltiplas Revisões" msgid "Specifying Revision Sets" msgstr "Especificação de Conjuntos de Revisões" @@ -15842,6 +15902,24 @@ msgid "Mercurial Distributed SCM\n" msgstr "Sistema de controle de versão distribuído Mercurial\n" +msgid ".. Common link and substitution definitions." +msgstr ".. Common link and substitution definitions." + +msgid "" +".. |hg(1)| replace:: **hg**\\ (1)\n" +".. _hg(1): hg.1.html\n" +".. |hgrc(5)| replace:: **hgrc**\\ (5)\n" +".. _hgrc(5): hgrc.5.html\n" +".. |hgignore(5)| replace:: **hgignore**\\ (5)\n" +".. _hgignore(5): hgignore.5.html\n" +msgstr "" +".. |hg(1)| replace:: **hg**\\ (1)\n" +".. _hg(1): hg.1.html\n" +".. |hgrc(5)| replace:: **hgrc**\\ (5)\n" +".. _hgrc(5): hgrc.5.html\n" +".. |hgignore(5)| replace:: **hgignore**\\ (5)\n" +".. _hgignore(5): hgignore.5.html\n" + msgid "" "The Mercurial system uses a set of configuration files to control\n" "aspects of its behavior." @@ -19781,7 +19859,7 @@ "- Show status of files that appear to be binary in the working directory::" msgstr "" "- Exibe o status de arquivos que parecem ser binários no diretório\n" -"de trabalho::" +" de trabalho::" msgid " hg status -A \"set:binary()\"" msgstr " hg status -A \"set:binary()\"" @@ -20760,6 +20838,343 @@ " Veja 'Parent, working directory'.\n" msgid "" +"====\n" +" hg\n" +"====" +msgstr "" +"====\n" +" hg\n" +"====" + +msgid "" +"---------------------------------------\n" +"Mercurial source code management system\n" +"---------------------------------------" +msgstr "" +"----------------------------------------------------\n" +"Mercurial - sistema de gerenciamento de código fonte\n" +"----------------------------------------------------" + +msgid "" +":Author: Matt Mackall \n" +":Organization: Mercurial\n" +":Manual section: 1\n" +":Manual group: Mercurial Manual" +msgstr "" +":Author: Matt Mackall \n" +":Organization: Mercurial\n" +":Manual section: 1\n" +":Manual group: Mercurial Manual" + +msgid "" +".. contents::\n" +" :backlinks: top\n" +" :class: htmlonly\n" +" :depth: 1" +msgstr "" +".. contents::\n" +" :backlinks: top\n" +" :class: htmlonly\n" +" :depth: 1" + +msgid "" +"\n" +"Synopsis\n" +"\"\"\"\"\"\"\"\"\n" +"**hg** *command* [*option*]... [*argument*]..." +msgstr "" +"\n" +"Sinopse\n" +"\"\"\"\"\"\"\"\n" +"**hg** *comando* [*opção*]... [*argumento*]..." + +msgid "" +"Description\n" +"\"\"\"\"\"\"\"\"\"\"\"\n" +"The **hg** command provides a command line interface to the Mercurial\n" +"system." +msgstr "" +"Descrição\n" +"\"\"\"\"\"\"\"\"\"\n" +"O comando **hg** fornece uma interface de linha de comando para o\n" +"sistema Mercurial." + +msgid "" +"Command Elements\n" +"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"" +msgstr "" +"Elementos do Comando\n" +"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"" + +msgid "" +"files...\n" +" indicates one or more filename or relative path filenames; see\n" +" `File Name Patterns`_ for information on pattern matching" +msgstr "" +"arquivos...\n" +" indica um ou mais nomes ou caminhos relativos para arquivos;\n" +" veja `Padrões de Nomes de Arquivo`_ para informações sobre\n" +" correspondência de padrões" + +msgid "" +"path\n" +" indicates a path on the local machine" +msgstr "" +"caminho\n" +" indica um caminho na máquina local" + +msgid "" +"revision\n" +" indicates a changeset which can be specified as a changeset\n" +" revision number, a tag, or a unique substring of the changeset\n" +" hash value" +msgstr "" +"revisão\n" +" indica uma revisão que pode ser especificada como um número\n" +" de revisão, uma etiqueta ou uma parte única do identificador\n" +" de revisão" + +msgid "" +"repository path\n" +" either the pathname of a local repository or the URI of a remote\n" +" repository." +msgstr "" +"caminho para o repositório\n" +" o caminho para um repositório local ou a URI de um repositório\n" +" remoto." + +msgid ".. include:: hg.1.gendoc.txt" +msgstr ".. include:: hg.1.gendoc.txt" + +msgid "" +"Files\n" +"\"\"\"\"\"" +msgstr "" +"Arquivos\n" +"\"\"\"\"\"\"\"\"" + +msgid "" +"``/etc/mercurial/hgrc``, ``$HOME/.hgrc``, ``.hg/hgrc``\n" +" This file contains defaults and configuration. Values in\n" +" ``.hg/hgrc`` override those in ``$HOME/.hgrc``, and these override\n" +" settings made in the global ``/etc/mercurial/hgrc`` configuration.\n" +" See |hgrc(5)|_ for details of the contents and format of these\n" +" files." +msgstr "" +"``/etc/mercurial/hgrc``, ``$HOME/.hgrc``, ``.hg/hgrc``\n" +" Estes arquivos contêm opções padrão e configurações. Os valores\n" +" em ``.hg/hgrc`` sobrepõe os valores em ``$HOME/.hgrc``, e estes\n" +" sobrepõe configurações feitas no arquivo ``/etc/mercurial/hgrc``\n" +" global.\n" +" Veja |hgrc(5)|_ para detalhes sobre o conteúdo e formato destes\n" +" arquivos." + +msgid "" +"``.hgignore``\n" +" This file contains regular expressions (one per line) that\n" +" describe file names that should be ignored by **hg**. For details,\n" +" see |hgignore(5)|_." +msgstr "" +"``.hgignore``\n" +" Este arquivo contém expressões regulares (uma por linha) que\n" +" descrevem nomes de arquivo que devem ser ignorados pelo **hg**.\n" +" Para mais detalhes, veja |hgignore(5)|_." + +msgid "" +"``.hgsub``\n" +" This file defines the locations of all subrepositories, and\n" +" tells where the subrepository checkouts came from. For details, see\n" +" :hg:`help subrepos`." +msgstr "" +"``.hgsub``\n" +" Este arquivo define as localizações de todos os sub-repositórios,\n" +" e indica quais as origens de suas revisões. Para mais detalhes,\n" +" veja :hg:`help subrepos`." + +msgid "" +"``.hgsubstate``\n" +" This file is where Mercurial stores all nested repository states. *NB: This\n" +" file should not be edited manually.*" +msgstr "" +"``.hgsubstate``\n" +" Este arquivo armazena os estados dos sub-repositórios\n" +" aninhados. *NB: Este arquivo é mantido automaticamente\n" +" pelo Mercurial, e não deve ser editado manualmente.*" + +msgid "" +"``.hgtags``\n" +" This file contains changeset hash values and text tag names (one\n" +" of each separated by spaces) that correspond to tagged versions of\n" +" the repository contents. The file content is encoded using UTF-8." +msgstr "" +"``.hgtags``\n" +" Este arquivo contém identificadores de revisão e nomes\n" +" de etiquetas (um par por linha, separados por um espaço) que\n" +" correspondem a versões etiquetadas do conteúdo do repositório.\n" +" Seu conteúdo é codificado em UTF-8." + +msgid "" +"``.hg/last-message.txt``\n" +" This file is used by :hg:`commit` to store a backup of the commit message\n" +" in case the commit fails." +msgstr "" +"``.hg/last-message.txt``\n" +" Este arquivo é usado por :hg:`commit` para armazenar uma cópia\n" +" da mensagem de consolidação, para o caso de a consolidação falhar." + +msgid "" +"``.hg/localtags``\n" +" This file can be used to define local tags which are not shared among\n" +" repositories. The file format is the same as for ``.hgtags``, but it is\n" +" encoded using the local system encoding." +msgstr "" +"``.hg/localtags``\n" +" Este arquivo pode ser usado para definir etiquetas locais,\n" +" que não são compartilhadas com outros repositórios. O formato\n" +" do arquivo é o mesmo de ``.hgtags``, mas usando a codificação\n" +" local do sistema." + +msgid "" +"Some commands (e.g. revert) produce backup files ending in ``.orig``,\n" +"if the ``.orig`` file already exists and is not tracked by Mercurial,\n" +"it will be overwritten." +msgstr "" +"Alguns comandos (revert, por exemplo) produzem arquivos de backup\n" +"terminados em ``.orig``. Se um arquivo ``.orig`` já existir e não for\n" +"rastreado pelo Mercurial, ele será sobrescrito." + +msgid "" +"Bugs\n" +"\"\"\"\"\n" +"Probably lots, please post them to the mailing list (see Resources_\n" +"below) when you find them." +msgstr "" +"Bugs\n" +"\"\"\"\"\n" +"Provavelmente vários, por favor informe-os na lista de discussão\n" +"(veja a seção Recursos_ abaixo)." + +msgid "" +"See Also\n" +"\"\"\"\"\"\"\"\"\n" +"|hgignore(5)|_, |hgrc(5)|_" +msgstr "" +"Veja Também\n" +"\"\"\"\"\"\"\"\"\"\"\"\n" +"|hgignore(5)|_, |hgrc(5)|_" + +msgid "" +"Author\n" +"\"\"\"\"\"\"\n" +"Written by Matt Mackall " +msgstr "" +"Autor\n" +"\"\"\"\"\"\n" +"Escrito por Matt Mackall " + +msgid "" +"Resources\n" +"\"\"\"\"\"\"\"\"\"\n" +"Main Web Site: http://mercurial.selenic.com/" +msgstr "" +"Recursos\n" +"\"\"\"\"\"\"\"\"\n" +"Página Principal: http://mercurial.selenic.com/" + +msgid "Source code repository: http://selenic.com/hg" +msgstr "Repositório de código fonte: http://selenic.com/hg" + +msgid "Mailing list: http://selenic.com/mailman/listinfo/mercurial" +msgstr "Lista de discussão: http://selenic.com/mailman/listinfo/mercurial" + +msgid "" +"Copying\n" +"\"\"\"\"\"\"\"\n" +"Copyright (C) 2005-2013 Matt Mackall.\n" +"Free use of this software is granted under the terms of the GNU General\n" +"Public License version 2 or any later version." +msgstr "" +"Cópia\n" +"\"\"\"\"\"\n" +"Copyright (C) 2005-2013 Matt Mackall.\n" +"Garante-se livre uso deste software nos termos da licença\n" +"GNU General Public License, versão 2 ou qualquer versão posterior." + +msgid ".. include:: common.txt\n" +msgstr ".. include:: common.txt\n" + +msgid "" +"==========\n" +" hgignore\n" +"==========" +msgstr "" +"==========\n" +" hgignore\n" +"==========" + +msgid "" +"---------------------------------\n" +"syntax for Mercurial ignore files\n" +"---------------------------------" +msgstr "" +"---------------------------------------------------------\n" +"sintaxe para arquivos de padrões ignorados pelo Mercurial\n" +"---------------------------------------------------------" + +msgid "" +":Author: Vadim Gelfer \n" +":Organization: Mercurial\n" +":Manual section: 5\n" +":Manual group: Mercurial Manual" +msgstr "" +":Author: Vadim Gelfer \n" +":Organization: Mercurial\n" +":Manual section: 5\n" +":Manual group: Mercurial Manual" + +msgid ".. include:: hgignore.5.gendoc.txt" +msgstr ".. include:: hgignore.5.gendoc.txt" + +msgid "" +"Author\n" +"======\n" +"Vadim Gelfer " +msgstr "" +"Autor\n" +"=====\n" +"Vadim Gelfer " + +msgid "Mercurial was written by Matt Mackall ." +msgstr "Mercurial foi escrito por Matt Mackall ." + +msgid "" +"See Also\n" +"========\n" +"|hg(1)|_, |hgrc(5)|_" +msgstr "" +"Veja Também\n" +"===========\n" +"|hg(1)|_, |hgrc(5)|_" + +msgid "" +"Copying\n" +"=======\n" +"This manual page is copyright 2006 Vadim Gelfer.\n" +"Mercurial is copyright 2005-2013 Matt Mackall.\n" +"Free use of this software is granted under the terms of the GNU General\n" +"Public License version 2 or any later version." +msgstr "" +"Cópia\n" +"=====\n" +"Esta página de manual: copyright 2006 Vadim Gelfer.\n" +"Mercurial: copyright 2005-2013 Matt Mackall.\n" +"Garante-se livre uso deste software nos termos da licença\n" +"GNU General Public License, versão 2 ou qualquer versão posterior." + +msgid ".. include:: common.txt" +msgstr ".. include:: common.txt" + +msgid "" "Synopsis\n" "========" msgstr "" @@ -20953,6 +21368,89 @@ " ^\\.pc/\n" msgid "" +"======\n" +" hgrc\n" +"======" +msgstr "" +"======\n" +" hgrc\n" +"======" + +msgid "" +"---------------------------------\n" +"configuration files for Mercurial\n" +"---------------------------------" +msgstr "" +"-----------------------------------------\n" +"arquivos de configuração para o Mercurial\n" +"-----------------------------------------" + +msgid "" +":Author: Bryan O'Sullivan \n" +":Organization: Mercurial\n" +":Manual section: 5\n" +":Manual group: Mercurial Manual" +msgstr "" +":Author: Bryan O'Sullivan \n" +":Organization: Mercurial\n" +":Manual section: 5\n" +":Manual group: Mercurial Manual" + +msgid "" +".. contents::\n" +" :backlinks: top\n" +" :class: htmlonly" +msgstr "" +".. contents::\n" +" :backlinks: top\n" +" :class: htmlonly" + +msgid "" +"\n" +"Description\n" +"===========" +msgstr "" +"\n" +"Descrição\n" +"=========" + +msgid ".. include:: hgrc.5.gendoc.txt" +msgstr ".. include:: hgrc.5.gendoc.txt" + +msgid "" +"Author\n" +"======\n" +"Bryan O'Sullivan ." +msgstr "" +"Autor\n" +"=====\n" +"Bryan O'Sullivan ." + +msgid "" +"See Also\n" +"========\n" +"|hg(1)|_, |hgignore(5)|_" +msgstr "" +"Veja Também\n" +"===========\n" +"|hg(1)|_, |hgignore(5)|_" + +msgid "" +"Copying\n" +"=======\n" +"This manual page is copyright 2005 Bryan O'Sullivan.\n" +"Mercurial is copyright 2005-2013 Matt Mackall.\n" +"Free use of this software is granted under the terms of the GNU General\n" +"Public License version 2 or any later version." +msgstr "" +"Cópia\n" +"=====\n" +"Esta página de manual: copyright 2005 Bryan O'Sullivan.\n" +"Mercurial: copyright 2005-2013 Matt Mackall.\n" +"Garante-se livre uso deste software nos termos da licença\n" +"GNU General Public License, versão 2 ou qualquer versão posterior." + +msgid "" "Mercurial's internal web server, hgweb, can serve either a single\n" "repository, or a tree of repositories. In the second case, repository\n" "paths and global options can be defined using a dedicated\n" @@ -22267,14 +22765,14 @@ "ao log: log, outgoing, incoming, tip, parents, heads e glog." msgid "" -"Four styles are packaged with Mercurial: default (the style used\n" -"when no explicit preference is passed), compact, changelog,\n" +"Five styles are packaged with Mercurial: default (the style used\n" +"when no explicit preference is passed), compact, changelog, phases\n" "and xml.\n" "Usage::" msgstr "" -"Quatro estilos são incluídos na distribuição do Mercurial: default\n" +"Cinco estilos são incluídos na distribuição do Mercurial: default\n" "(o estilo usado quando nenhuma preferência for passada), compact,\n" -"changelog e xml.\n" +"changelog, phases e xml.\n" "Uso::" msgid " $ hg log -r1 --style changelog" @@ -22368,12 +22866,15 @@ msgid "- label(label, expr)" msgstr "- label(label, expr)" -msgid "- sub(pat, repl, expr)" -msgstr "- sub(padrão, substituição, expr)" - msgid "- rstdoc(text, style)" msgstr "- rstdoc(texto, estilo)" +msgid "- strip(text[, chars])" +msgstr "- strip(texto[, caracteres])" + +msgid "- sub(pat, repl, expr)" +msgstr "- sub(padrão, substituição, expressão)" + msgid "" "Also, for any expression that returns a list, there is a list operator:" msgstr "" @@ -22998,16 +23499,6 @@ msgid "%d changesets found\n" msgstr "%d revisões encontradas\n" -msgid "bundling" -msgstr "criando bundle" - -msgid "manifests" -msgstr "manifestos" - -#, python-format -msgid "empty or missing revlog for %s" -msgstr "revlog vazio ou não encontrado para %s" - msgid "adding changesets\n" msgstr "adicionando revisões\n" @@ -23023,6 +23514,14 @@ msgid "adding file changes\n" msgstr "adicionando mudanças em arquivos\n" +#, python-format +msgid " (%+d heads)" +msgstr " (%+d cabeças)" + +#, python-format +msgid "added %d changesets with %d changes to %d files%s\n" +msgstr "adicionadas %d revisões com %d mudanças em %d arquivos%s\n" + msgid "received file revlog group is empty" msgstr "grupo recebido de arquivos revlog vazio" @@ -23033,14 +23532,6 @@ msgid "missing file data for %s:%s - run hg verify" msgstr "faltando dados de arquivo para %s:%s - execute hg verify" -#, python-format -msgid " (%+d heads)" -msgstr " (%+d cabeças)" - -#, python-format -msgid "added %d changesets with %d changes to %d files%s\n" -msgstr "adicionadas %d revisões com %d mudanças em %d arquivos%s\n" - msgid "unexpected response from remote server:" msgstr "resposta inesperada do servidor remoto:" @@ -23170,27 +23661,18 @@ #, python-format msgid "" "local changed %s which remote deleted\n" -"use (c)hanged version or (d)elete?" +"use (c)hanged version or (d)elete?$$ &Changed $$ &Delete" msgstr "" "local alterou %s, que a remota removeu\n" -"use (c) a versão alterada, ou (d) apague?" - -msgid "&Changed" -msgstr "(&C) alterada" - -msgid "&Delete" -msgstr "(&D) apagar" +"use (c) a versão alterada, ou (d) apague?$$ (&C) alterada $$ (&D) apague" #, python-format msgid "" "remote changed %s which local deleted\n" -"use (c)hanged version or leave (d)eleted?" +"use (c)hanged version or leave (d)eleted?$$ &Changed $$ &Deleted" msgstr "" "remota mudou %s, apagada pela local\n" -"use (c) a versão alterada, ou (d) deixe apagada?" - -msgid "&Deleted" -msgstr "(&D) apagada" +"use (c) a versão alterada, ou (d) deixe apagada? (&C) alterada $$ (&D) deixe apagada" #, python-format msgid "update failed to remove %s: %s!\n" @@ -23260,7 +23742,7 @@ msgstr "Nota:" msgid "Tip:" -msgstr "Tip:" +msgstr "Dica:" msgid "Warning!" msgstr "Aviso!" @@ -23485,6 +23967,10 @@ msgid "%s not found in the transaction" msgstr "%s não encontrado na transação" +#, python-format +msgid "attempted to add linkrev -1 to %s" +msgstr "tentativa de adicionar linkrev -1 a %s" + msgid "consistency error in delta" msgstr "erro de consistência no delta" @@ -24647,45 +25133,46 @@ #, python-format msgid "" " subrepository sources for %s differ\n" -"use (l)ocal source (%s) or (r)emote source (%s)?" -msgstr "" -" origens do sub-repositório para %s diferem\n" -"usar fonte (l)ocal (%s) ou (r)emota (%s)?" - -msgid "&Remote" -msgstr "&Remoto" +"use (l)ocal source (%s) or (r)emote source (%s)?$$ &Local $$ &Remote" +msgstr "" +" as origens do sub-repositório %s diferem\n" +"usar origem (l)ocal (%s) ou (r)emota (%s)?$$ &Local $$ &Remota" #, python-format msgid "" " local changed subrepository %s which remote removed\n" -"use (c)hanged version or (d)elete?" +"use (c)hanged version or (d)elete?$$ &Changed $$ &Delete" msgstr "" " local mudou sub-repositório %s, que a remota removeu\n" -"use (c) a versão alterada, ou (d) apague?" +"use (c) a versão alterada, ou (d) apague?$$ (&C) alterada $$ (&D) apague" #, python-format msgid "" " remote changed subrepository %s which local removed\n" -"use (c)hanged version or (d)elete?" +"use (c)hanged version or (d)elete?$$ &Changed $$ &Delete" msgstr "" " remota mudou sub-repositório %s apagado pela local\n" -"use (c) a versão alterada ou (d) apague?" +"use (c) a versão alterada ou (d) apague?$$ (&C) alterada $$ (&D) apague" #, python-format msgid "" " subrepository sources for %s differ\n" "use (l)ocal source (%s) or (r)emote source (%s)?\n" +"$$ &Local $$ &Remote" msgstr "" " as origens do sub-repositório %s diferem\n" "usar origem (l)ocal (%s) ou (r)emota (%s)?\n" +"$$ &Local $$ &Remota" #, python-format msgid "" " subrepository sources for %s differ (in checked out version)\n" "use (l)ocal source (%s) or (r)emote source (%s)?\n" +"$$ &Local $$ &Remote" msgstr "" " as origens do sub-repositório %s diferem (na versão do diretório de trabalho)\n" "usar origem (l)ocal (%s) ou (r)emota (%s)?\n" +"$$ &Local $$ &Remota" msgid "default path for subrepository not found" msgstr "o caminho padrão para o sub-repositório não foi encontrado" @@ -25011,11 +25498,11 @@ " \"foo/bar\" se tornam \"foo\"." msgid "" -":tabindent: Any text. Returns the text, with every line except the\n" -" first starting with a tab character." +":tabindent: Any text. Returns the text, with every non-empty line\n" +" except the first starting with a tab character." msgstr "" ":tabindent: Qualquer texto. Insere um caractere de tabulação no\n" -" início de cada linha do texto, exceto da primeira." +" início de cada linha não vazia do texto, exceto a primeira." msgid "" ":urlescape: Any text. Escapes all \"special\" characters. For example,\n" @@ -25037,15 +25524,6 @@ ":emailuser: Qualquer texto. Devolve a parte do usuário de um endereço de " "e-mail." -msgid "fill expects one or two arguments" -msgstr "fill exige um ou dois argumentos" - -msgid "fill expects an integer width" -msgstr "fill espera um número inteiro" - -msgid "date expects one or two arguments" -msgstr "data exige um ou dois argumentos" - msgid ":author: String. The unmodified author of the changeset." msgstr ":author: String. O autor da revisão, sem modificações." @@ -25209,21 +25687,22 @@ msgid "filter %s expects one argument" msgstr "o filtro %s espera um argumento" +msgid "date expects one or two arguments" +msgstr "data espera um ou dois argumentos" + +msgid "fill expects one to four arguments" +msgstr "fill espera de um a quatro argumentos" + +msgid "fill expects an integer width" +msgstr "fill espera um número inteiro" + #. i18n: "get" is a keyword msgid "get() expects two arguments" -msgstr "get() exige dois argumentos" +msgstr "get() espera dois argumentos" #. i18n: "get" is a keyword msgid "get() expects a dict as first argument" -msgstr "get() exige um dicionário como primeiro argumento" - -#. i18n: "join" is a keyword -msgid "join expects one or two arguments" -msgstr "join exige um ou dois argumentos" - -#. i18n: "sub" is a keyword -msgid "sub expects three arguments" -msgstr "sub espera três argumentos" +msgstr "get() espera um dicionário como primeiro argumento" #. i18n: "if" is a keyword msgid "if expects two or three arguments" @@ -25233,16 +25712,31 @@ msgid "ifeq expects three or four arguments" msgstr "ifeq espera três ou quatro argumentos" +#. i18n: "join" is a keyword +msgid "join expects one or two arguments" +msgstr "join espera um ou dois argumentos" + #. i18n: "rstdoc" is a keyword msgid "rstdoc expects two arguments" -msgstr "rstdoc exige dois argumentos" +msgstr "rstdoc espera dois argumentos" + +msgid "strip expects one or two arguments" +msgstr "strip espera um ou dois argumentos" + +#. i18n: "sub" is a keyword +msgid "sub expects three arguments" +msgstr "sub espera três argumentos" msgid "unmatched quotes" msgstr "aspas não combinam" #, python-format -msgid "style not found: %s" -msgstr "estilo não encontrado: %s" +msgid "style '%s' not found" +msgstr "estilo '%s' não encontrado" + +#, python-format +msgid "available styles: %s" +msgstr "estilos disponíveis: %s" #, python-format msgid "%s: missing value" diff -r 004f965630d9 -r a58251c0568f mercurial/bookmarks.py --- a/mercurial/bookmarks.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/bookmarks.py Thu Aug 01 22:52:05 2013 -0500 @@ -170,6 +170,19 @@ deleted = True return deleted +def calculateupdate(ui, repo, checkout): + '''Return a tuple (targetrev, movemarkfrom) indicating the rev to + check out and where to move the active bookmark from, if needed.''' + movemarkfrom = None + if checkout is None: + curmark = repo._bookmarkcurrent + if iscurrent(repo): + movemarkfrom = repo['.'].node() + elif curmark: + ui.status(_("updating to active bookmark %s\n") % curmark) + checkout = curmark + return (checkout, movemarkfrom) + def update(repo, parents, node): deletefrom = parents marks = repo._bookmarks diff -r 004f965630d9 -r a58251c0568f mercurial/cmdutil.py --- a/mercurial/cmdutil.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/cmdutil.py Thu Aug 01 22:52:05 2013 -0500 @@ -1976,7 +1976,7 @@ # make backup if not in target manifest (modified, revert, remove, True, True), (added, revert, remove, True, False), - (removed, undelete, None, False, False), + (removed, undelete, None, True, False), (deleted, revert, remove, False, False), ) @@ -1986,7 +1986,8 @@ def handle(xlist, dobackup): xlist[0].append(abs) if (dobackup and not opts.get('no_backup') and - os.path.lexists(target)): + os.path.lexists(target) and + abs in ctx and repo[None][abs].cmp(ctx[abs])): bakname = "%s.orig" % rel ui.note(_('saving current version of %s as %s\n') % (rel, bakname)) @@ -2103,3 +2104,36 @@ # a list of (ui, repo) functions called by commands.summary summaryhooks = util.hooks() + +# A list of state files kept by multistep operations like graft. +# Since graft cannot be aborted, it is considered 'clearable' by update. +# note: bisect is intentionally excluded +# (state file, clearable, allowcommit, error, hint) +unfinishedstates = [ + ('graftstate', True, False, _('graft in progress'), + _("use 'hg graft --continue' or 'hg update' to abort")), + ('updatestate', True, False, _('last update was interrupted'), + _("use 'hg update' to get a consistent checkout")) + ] + +def checkunfinished(repo, commit=False): + '''Look for an unfinished multistep operation, like graft, and abort + if found. It's probably good to check this right before + bailifchanged(). + ''' + for f, clearable, allowcommit, msg, hint in unfinishedstates: + if commit and allowcommit: + continue + if repo.vfs.exists(f): + raise util.Abort(msg, hint=hint) + +def clearunfinished(repo): + '''Check for unfinished operations (as above), and clear the ones + that are clearable. + ''' + for f, clearable, allowcommit, msg, hint in unfinishedstates: + if not clearable and repo.vfs.exists(f): + raise util.Abort(msg, hint=hint) + for f, clearable, allowcommit, msg, hint in unfinishedstates: + if clearable and repo.vfs.exists(f): + util.unlink(repo.join(f)) diff -r 004f965630d9 -r a58251c0568f mercurial/commands.py --- a/mercurial/commands.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/commands.py Thu Aug 01 22:52:05 2013 -0500 @@ -428,6 +428,7 @@ if date: opts['date'] = util.parsedate(date) + cmdutil.checkunfinished(repo) cmdutil.bailifchanged(repo) node = scmutil.revsingle(repo, rev).node() @@ -651,6 +652,8 @@ elif extra or good + bad + skip + reset + extend + bool(command) > 1: raise util.Abort(_('incompatible arguments')) + cmdutil.checkunfinished(repo) + if reset: p = repo.join("bisect.state") if os.path.exists(p): @@ -1333,9 +1336,7 @@ # Save this for restoring it later oldcommitphase = ui.config('phases', 'new-commit') - if repo.vfs.exists('graftstate'): - raise util.Abort(_('cannot commit an interrupted graft operation'), - hint=_('use "hg graft -c" to continue graft')) + cmdutil.checkunfinished(repo, commit=True) branch = repo[None].branch() bheads = repo.branchheads(branch) @@ -2977,6 +2978,7 @@ raise raise util.Abort(_("no graft state found, can't continue")) else: + cmdutil.checkunfinished(repo) cmdutil.bailifchanged(repo) if not revs: raise util.Abort(_('no revisions specified')) @@ -3320,19 +3322,17 @@ ] + templateopts, _('[-ct] [-r STARTREV] [REV]...')) def heads(ui, repo, *branchrevs, **opts): - """show current repository heads or show branch heads - - With no arguments, show all repository branch heads. - - Repository "heads" are changesets with no child changesets. They are - where development generally takes place and are the usual targets - for update and merge operations. Branch heads are changesets that have - no child changeset on the same branch. - - If one or more REVs are given, only branch heads on the branches - associated with the specified changesets are shown. This means - that you can use :hg:`heads foo` to see the heads on a branch - named ``foo``. + """show branch heads + + With no arguments, show all open branch heads in the repository. + Branch heads are changesets that have no descendants on the + same branch. They are where development generally takes place and + are the usual targets for update and merge operations. + + If one or more REVs are given, only open branch heads on the + branches associated with the specified changesets are shown. This + means that you can use :hg:`heads .` to see the heads on the + currently checked-out branch. If -c/--closed is specified, also show branch heads marked closed (see :hg:`commit --close-branch`). @@ -3341,7 +3341,7 @@ STARTREV will be displayed. If -t/--topo is specified, named branch mechanics will be ignored and only - changesets without children will be shown. + topological heads (changesets with no children) will be shown. Returns 0 if matching heads are found, 1 if not. """ @@ -3658,6 +3658,8 @@ if sim and not update: raise util.Abort(_('cannot use --similarity with --bypass')) + if update: + cmdutil.checkunfinished(repo) if (opts.get('exact') or not opts.get('force')) and update: cmdutil.bailifchanged(repo) @@ -4518,7 +4520,7 @@ if modheads == 0: return if optupdate: - movemarkfrom = repo['.'].node() + checkout, movemarkfrom = bookmarks.calculateupdate(ui, repo, checkout) try: ret = hg.update(repo, checkout) except util.Abort, inst: @@ -5480,7 +5482,9 @@ t = ', '.join(t) cleanworkdir = False - if len(parents) > 1: + if repo.vfs.exists('updatestate'): + t += _(' (interrupted update)') + elif len(parents) > 1: t += _(' (merge)') elif branch != parents[0].branch(): t += _(' (new branch)') @@ -5822,15 +5826,10 @@ if rev is None or rev == '': rev = node + cmdutil.clearunfinished(repo) + # with no argument, we also move the current bookmark, if any - movemarkfrom = None - if rev is None: - curmark = repo._bookmarkcurrent - if bookmarks.iscurrent(repo): - movemarkfrom = repo['.'].node() - elif curmark: - ui.status(_("updating to active bookmark %s\n") % curmark) - rev = curmark + rev, movemarkfrom = bookmarks.calculateupdate(ui, repo, rev) # if we defined a bookmark, we have to remember the original bookmark name brev = rev diff -r 004f965630d9 -r a58251c0568f mercurial/fileset.py --- a/mercurial/fileset.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/fileset.py Thu Aug 01 22:52:05 2013 -0500 @@ -27,7 +27,7 @@ keywords = set(['and', 'or', 'not']) -globchars = ".*{}[]?/\\" +globchars = ".*{}[]?/\\_" def tokenize(program): pos, l = 0, len(program) diff -r 004f965630d9 -r a58251c0568f mercurial/hgweb/hgweb_mod.py --- a/mercurial/hgweb/hgweb_mod.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/hgweb/hgweb_mod.py Thu Aug 01 22:52:05 2013 -0500 @@ -176,6 +176,8 @@ '').lower() != '100-continue') or req.env.get('X-HgHttp2', '')): req.drain() + else: + req.headers.append(('Connection', 'Close')) req.respond(inst, protocol.HGTYPE, body='0\n%s\n' % inst.message) return '' diff -r 004f965630d9 -r a58251c0568f mercurial/hgweb/webcommands.py --- a/mercurial/hgweb/webcommands.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/hgweb/webcommands.py Thu Aug 01 22:52:05 2013 -0500 @@ -119,7 +119,7 @@ cl = web.repo.changelog for i in xrange(len(web.repo) - 1, 0, -100): l = [] - for j in cl.revs(max(0, i - 100), i + 1): + for j in cl.revs(max(0, i - 99), i): ctx = web.repo[j] l.append(ctx) l.reverse() @@ -200,38 +200,37 @@ return _search(web, req, tmpl) # XXX redirect to 404 page? def changelist(latestonly, **map): - l = [] # build a list in forward order for efficiency revs = [] - if start < end: - revs = web.repo.changelog.revs(start, end - 1) + if pos != -1: + revs = web.repo.changelog.revs(pos, 0) if latestonly: - for r in revs: - pass - revs = (r,) + revs = (revs.next(),) + curcount = 0 for i in revs: ctx = web.repo[i] n = ctx.node() showtags = webutil.showtag(web.repo, tmpl, 'changelogtag', n) files = webutil.listfilediffs(tmpl, ctx.files(), n, web.maxfiles) - l.append({"parity": parity.next(), - "author": ctx.user(), - "parent": webutil.parents(ctx, i - 1), - "child": webutil.children(ctx, i + 1), - "changelogtag": showtags, - "desc": ctx.description(), - "extra": ctx.extra(), - "date": ctx.date(), - "files": files, - "rev": i, - "node": hex(n), - "tags": webutil.nodetagsdict(web.repo, n), - "bookmarks": webutil.nodebookmarksdict(web.repo, n), - "inbranch": webutil.nodeinbranch(web.repo, ctx), - "branches": webutil.nodebranchdict(web.repo, ctx) - }) - for e in reversed(l): - yield e + curcount += 1 + if curcount > revcount: + break + yield {"parity": parity.next(), + "author": ctx.user(), + "parent": webutil.parents(ctx, i - 1), + "child": webutil.children(ctx, i + 1), + "changelogtag": showtags, + "desc": ctx.description(), + "extra": ctx.extra(), + "date": ctx.date(), + "files": files, + "rev": i, + "node": hex(n), + "tags": webutil.nodetagsdict(web.repo, n), + "bookmarks": webutil.nodebookmarksdict(web.repo, n), + "inbranch": webutil.nodeinbranch(web.repo, ctx), + "branches": webutil.nodebranchdict(web.repo, ctx) + } revcount = shortlog and web.maxshortchanges or web.maxchanges if 'revcount' in req.form: @@ -246,9 +245,7 @@ count = len(web.repo) pos = ctx.rev() - start = max(0, pos - revcount + 1) - end = pos + 1 - parity = paritygen(web.stripecount, offset=start - end) + parity = paritygen(web.stripecount) changenav = webutil.revnav(web.repo).gen(pos, revcount, count) @@ -878,17 +875,20 @@ count = len(web.repo) pos = rev - start = max(0, pos - revcount + 1) - end = min(count, start + revcount) - pos = end - 1 uprev = min(max(0, count - 1), rev + revcount) downrev = max(0, rev - revcount) changenav = webutil.revnav(web.repo).gen(pos, revcount, count) tree = [] - if start < end: - revs = list(web.repo.changelog.revs(end - 1, start)) + if pos != -1: + allrevs = web.repo.changelog.revs(pos, 0) + revs = [] + for i in allrevs: + revs.append(i) + if len(revs) >= revcount: + break + dag = graphmod.dagwalker(web.repo, revs) tree = list(graphmod.colored(dag, web.repo)) diff -r 004f965630d9 -r a58251c0568f mercurial/httpclient/__init__.py --- a/mercurial/httpclient/__init__.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/httpclient/__init__.py Thu Aug 01 22:52:05 2013 -0500 @@ -622,6 +622,8 @@ # TODO: find a way to block on ssl flushing its buffer # similar to selecting on a raw socket. continue + if e[0] == errno.EWOULDBLOCK or e[0] == errno.EAGAIN: + continue elif (e[0] not in (errno.ECONNRESET, errno.EPIPE) and not first): raise diff -r 004f965630d9 -r a58251c0568f mercurial/httpclient/socketutil.py --- a/mercurial/httpclient/socketutil.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/httpclient/socketutil.py Thu Aug 01 22:52:05 2013 -0500 @@ -106,7 +106,7 @@ else: raise x - _PROTOCOL_SSLv23 = 2 + _PROTOCOL_SSLv3 = 1 CERT_NONE = 0 CERT_OPTIONAL = 1 @@ -118,7 +118,7 @@ # pylint: disable=W0613,R0913 def wrap_socket(sock, keyfile=None, certfile=None, server_side=False, cert_reqs=CERT_NONE, - ssl_version=_PROTOCOL_SSLv23, ca_certs=None, + ssl_version=_PROTOCOL_SSLv3, ca_certs=None, do_handshake_on_connect=True, suppress_ragged_eofs=True): """Backport of ssl.wrap_socket from Python 2.6.""" diff -r 004f965630d9 -r a58251c0568f mercurial/localrepo.py --- a/mercurial/localrepo.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/localrepo.py Thu Aug 01 22:52:05 2013 -0500 @@ -1951,6 +1951,9 @@ self.ui.debug("checking for updated bookmarks\n") rb = remote.listkeys('bookmarks') + revnums = map(unfi.changelog.rev, revs or []) + ancestors = [ + a for a in unfi.changelog.ancestors(revnums, inclusive=True)] for k in rb.keys(): if k in unfi._bookmarks: nr, nl = rb[k], hex(self._bookmarks[k]) @@ -1958,6 +1961,8 @@ cr = unfi[nr] cl = unfi[nl] if bookmarks.validdest(unfi, cr, cl): + if ancestors and cl.rev() not in ancestors: + continue r = remote.pushkey('bookmarks', k, nr, nl) if r: self.ui.status(_("updating bookmark %s\n") % k) diff -r 004f965630d9 -r a58251c0568f mercurial/merge.py --- a/mercurial/merge.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/merge.py Thu Aug 01 22:52:05 2013 -0500 @@ -747,12 +747,17 @@ fp1, fp2, xp1, xp2 = fp2, nullid, xp2, '' if not partial: repo.hook('preupdate', throw=True, parent1=xp1, parent2=xp2) + # note that we're in the middle of an update + repo.vfs.write('updatestate', p2.hex()) stats = applyupdates(repo, actions, wc, p2, pa, overwrite) if not partial: repo.setparents(fp1, fp2) recordupdates(repo, actions, branchmerge) + # update completed, clear state + util.unlink(repo.join('updatestate')) + if not branchmerge: repo.dirstate.setbranch(p2.branch()) finally: diff -r 004f965630d9 -r a58251c0568f mercurial/parsers.c --- a/mercurial/parsers.c Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/parsers.c Thu Aug 01 22:52:05 2013 -0500 @@ -1311,6 +1311,9 @@ goto bail; } + if (PyList_Sort(revs) == -1) + goto bail; + for (i = 0; i < revcount; i++) { int n = (int)PyInt_AsLong(PyList_GET_ITEM(revs, i)); long b = 1l << i; @@ -1359,10 +1362,10 @@ if (nsp == sp) continue; seen[p] = nsp; + interesting[sp] -= 1; + if (interesting[sp] == 0 && interesting[nsp] > 0) + ninteresting -= 1; interesting[nsp] += 1; - interesting[sp] -= 1; - if (interesting[sp] == 0) - ninteresting -= 1; } } interesting[sv] -= 1; @@ -1385,8 +1388,7 @@ if (dict == NULL) goto bail; - j = ninteresting; - for (i = 0; i < revcount && j > 0; i++) { + for (i = 0; i < revcount; i++) { PyObject *key; if ((final & (1 << i)) == 0) @@ -1400,7 +1402,6 @@ Py_DECREF(Py_None); goto bail; } - j -= 1; } keys = PyDict_Keys(dict); diff -r 004f965630d9 -r a58251c0568f mercurial/patch.py --- a/mercurial/patch.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/patch.py Thu Aug 01 22:52:05 2013 -0500 @@ -176,7 +176,6 @@ # Not an email, restore parsed headers if any subject = '\n'.join(': '.join(h) for h in msg.items()) + '\n' - gitsendmail = 'git-send-email' in msg.get('X-Mailer', '') # should try to parse msg['Date'] date = None nodeid = None @@ -233,7 +232,7 @@ parents.append(line[9:].lstrip()) elif not line.startswith("# "): hgpatchheader = False - elif line == '---' and gitsendmail: + elif line == '---': ignoretext = True if not hgpatchheader and not ignoretext: cfp.write(line) diff -r 004f965630d9 -r a58251c0568f mercurial/posix.py --- a/mercurial/posix.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/posix.py Thu Aug 01 22:52:05 2013 -0500 @@ -154,10 +154,16 @@ # file already exists name = tempfile.mktemp(dir=path, prefix='hg-checklink-') try: - os.symlink(".", name) + fd = tempfile.NamedTemporaryFile(dir=path, prefix='hg-checklink-') + os.symlink(os.path.basename(fd.name), name) os.unlink(name) return True - except (OSError, AttributeError): + except AttributeError: + return False + except OSError, inst: + # sshfs might report failure while successfully creating the link + if inst[0] == errno.EIO and os.path.exists(name): + os.unlink(name) return False def checkosfilename(path): diff -r 004f965630d9 -r a58251c0568f mercurial/revlog.py --- a/mercurial/revlog.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/revlog.py Thu Aug 01 22:52:05 2013 -0500 @@ -751,10 +751,14 @@ def _partialmatch(self, id): try: - return self.index.partialmatch(id) + n = self.index.partialmatch(id) + if n and self.hasnode(n): + return n + return None except RevlogError: # parsers.c radix tree lookup gave multiple matches - raise LookupError(id, self.indexfile, _("ambiguous identifier")) + # fall through to slow path that filters hidden revisions + pass except (AttributeError, ValueError): # we are pure python, or key was too short to search radix tree pass @@ -768,7 +772,8 @@ l = len(id) // 2 # grab an even number of digits prefix = bin(id[:l * 2]) nl = [e[7] for e in self.index if e[7].startswith(prefix)] - nl = [n for n in nl if hex(n).startswith(id)] + nl = [n for n in nl if hex(n).startswith(id) and + self.hasnode(n)] if len(nl) > 0: if len(nl) == 1: self._pcache[id] = nl[0] diff -r 004f965630d9 -r a58251c0568f mercurial/scmutil.py --- a/mercurial/scmutil.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/scmutil.py Thu Aug 01 22:52:05 2013 -0500 @@ -556,7 +556,7 @@ return _rcpath def revsingle(repo, revspec, default='.'): - if not revspec: + if not revspec and revspec != 0: return repo[default] l = revrange(repo, [revspec]) diff -r 004f965630d9 -r a58251c0568f mercurial/sslutil.py --- a/mercurial/sslutil.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/sslutil.py Thu Aug 01 22:52:05 2013 -0500 @@ -17,7 +17,8 @@ def ssl_wrap_socket(sock, keyfile, certfile, cert_reqs=ssl.CERT_NONE, ca_certs=None): sslsocket = ssl.wrap_socket(sock, keyfile, certfile, - cert_reqs=cert_reqs, ca_certs=ca_certs) + cert_reqs=cert_reqs, ca_certs=ca_certs, + ssl_version=ssl.PROTOCOL_SSLv3) # check if wrap_socket failed silently because socket had been closed # - see http://bugs.python.org/issue13721 if not sslsocket.cipher(): diff -r 004f965630d9 -r a58251c0568f mercurial/templatefilters.py --- a/mercurial/templatefilters.py Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/templatefilters.py Thu Aug 01 22:52:05 2013 -0500 @@ -325,8 +325,8 @@ return dir def tabindent(text): - """:tabindent: Any text. Returns the text, with every line except the - first starting with a tab character. + """:tabindent: Any text. Returns the text, with every non-empty line + except the first starting with a tab character. """ return indent(text, '\t') diff -r 004f965630d9 -r a58251c0568f mercurial/templates/static/style-paper.css --- a/mercurial/templates/static/style-paper.css Fri Jul 12 11:14:42 2013 +0900 +++ b/mercurial/templates/static/style-paper.css Thu Aug 01 22:52:05 2013 -0500 @@ -250,6 +250,7 @@ color: #999; text-align: right; content: counters(lineno, "."); + float: left; } .sourcelines > span:target, tr:target td { diff -r 004f965630d9 -r a58251c0568f tests/test-ancestor.py --- a/tests/test-ancestor.py Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-ancestor.py Thu Aug 01 22:52:05 2013 -0500 @@ -1,4 +1,4 @@ -from mercurial import ancestor +from mercurial import ancestor, commands, hg, ui, util # graph is a dict of child->parent adjacency lists for this graph: # o 13 @@ -101,6 +101,36 @@ s = genlazyancestors([11, 13], stoprev=6, inclusive=True) printlazyancestors(s, [11, 13, 7, 9, 8, 3, 6, 4, 1, -1, 0]) + +# The C gca algorithm requires a real repo. These are textual descriptions of +# dags that have been known to be problematic. +dagtests = [ + '+2*2*2/*3/2', + '+3*3/*2*2/*4*4/*4/2*4/2*2', +] +def test_gca(): + u = ui.ui() + for i, dag in enumerate(dagtests): + repo = hg.repository(u, 'gca%d' % i, create=1) + cl = repo.changelog + if not util.safehasattr(cl.index, 'ancestors'): + # C version not available + return + + commands.debugbuilddag(u, repo, dag) + # Compare the results of the Python and C versions. This does not + # include choosing a winner when more than one gca exists -- we make + # sure both return exactly the same set of gcas. + for a in cl: + for b in cl: + cgcas = sorted(cl.index.ancestors(a, b)) + pygcas = sorted(ancestor.ancestors(cl.parentrevs, a, b)) + if cgcas != pygcas: + print "test_gca: for dag %s, gcas for %d, %d:" % (dag, a, b) + print " C returned: %s" % cgcas + print " Python returned: %s" % pygcas + if __name__ == '__main__': test_missingancestors() test_lazyancestors() + test_gca() diff -r 004f965630d9 -r a58251c0568f tests/test-bookmarks-pushpull.t --- a/tests/test-bookmarks-pushpull.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-bookmarks-pushpull.t Thu Aug 01 22:52:05 2013 -0500 @@ -422,7 +422,6 @@ remote: adding manifests remote: adding file changes remote: added 1 changesets with 1 changes to 1 files - updating bookmark @ failed! exporting bookmark add-foo $ cd .. diff -r 004f965630d9 -r a58251c0568f tests/test-bookmarks.t --- a/tests/test-bookmarks.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-bookmarks.t Thu Aug 01 22:52:05 2013 -0500 @@ -507,19 +507,37 @@ * Z 3:125c9a1d6df6 x y 2:db815d6d32e6 +pull --update works the same as pull && update + + $ hg bookmark -r3 Y + moving bookmark 'Y' forward from db815d6d32e6 + $ hg -R cloned-bookmarks-update update Y + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ hg -R cloned-bookmarks-update pull --update . + pulling from . + searching for changes + adding changesets + adding manifests + adding file changes + added 2 changesets with 2 changes to 2 files (+1 heads) + updating bookmark Y + updating bookmark Z + updating to active bookmark Y + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + test wrongly formated bookmark $ echo '' >> .hg/bookmarks $ hg bookmarks X2 1:925d80f479bb - Y 2:db815d6d32e6 + Y 3:125c9a1d6df6 * Z 3:125c9a1d6df6 x y 2:db815d6d32e6 $ echo "Ican'thasformatedlines" >> .hg/bookmarks $ hg bookmarks malformed line in .hg/bookmarks: "Ican'thasformatedlines" X2 1:925d80f479bb - Y 2:db815d6d32e6 + Y 3:125c9a1d6df6 * Z 3:125c9a1d6df6 x y 2:db815d6d32e6 diff -r 004f965630d9 -r a58251c0568f tests/test-check-code-hg.t --- a/tests/test-check-code-hg.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-check-code-hg.t Thu Aug 01 22:52:05 2013 -0500 @@ -26,6 +26,5 @@ New errors are not allowed. Warnings are strongly discouraged. - $ { hg manifest 2>/dev/null; ls "$TESTTMP"/*.py; } \ - > | xargs "$check_code" --warnings --per-file=0 \ - > || false + $ { hg manifest 2>/dev/null; ls "$TESTTMP"/*.py | sed 's-\\-/-g'; } | + > xargs "$check_code" --warnings --per-file=0 || false diff -r 004f965630d9 -r a58251c0568f tests/test-check-code.t --- a/tests/test-check-code.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-check-code.t Thu Aug 01 22:52:05 2013 -0500 @@ -22,6 +22,13 @@ > if any(): > x = all() > y = format(x) + > # next(generator) is new in 2.6 + > z = next(x) + > # but generator.next() is okay + > x.next() + > # and we can make our own next + > def next(stuff): + > pass > > # Do not complain about our own definition > def any(x): @@ -94,13 +101,16 @@ ./non-py24.py:4: > y = format(x) any/all/format not available in Python 2.4 - ./non-py24.py:11: + ./non-py24.py:6: + > z = next(x) + no next(foo) in Python 2.4 and 2.5, use foo.next() instead + ./non-py24.py:18: > try: no try/except/finally in Python 2.4 - ./non-py24.py:28: + ./non-py24.py:35: > try: no yield inside try/finally in Python 2.4 - ./non-py24.py:33: + ./non-py24.py:40: > try: no yield inside try/finally in Python 2.4 ./classstyle.py:4: @@ -187,8 +197,10 @@ > # this next line is okay > raise SomeException(arg1, arg2) > EOF - $ "$check_code" raise-format.py + $ "$check_code" not-existing.py raise-format.py + Skipping*not-existing.py* (glob) raise-format.py:1: > raise SomeException, message don't use old-style two-argument raise, use Exception(message) [1] + diff -r 004f965630d9 -r a58251c0568f tests/test-fileset.t --- a/tests/test-fileset.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-fileset.t Thu Aug 01 22:52:05 2013 -0500 @@ -42,6 +42,7 @@ b2 $ fileset 'a* - a1' a2 + $ fileset 'a_b' Test files status diff -r 004f965630d9 -r a58251c0568f tests/test-globalopts.t --- a/tests/test-globalopts.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-globalopts.t Thu Aug 01 22:52:05 2013 -0500 @@ -303,7 +303,7 @@ forget forget the specified files on the next commit graft copy changes from other branches onto the current branch grep search for a pattern in specified files and revisions - heads show current repository heads or show branch heads + heads show branch heads help show help for a given topic or a help overview identify identify the working copy or specified revision import import an ordered set of patches @@ -385,7 +385,7 @@ forget forget the specified files on the next commit graft copy changes from other branches onto the current branch grep search for a pattern in specified files and revisions - heads show current repository heads or show branch heads + heads show branch heads help show help for a given topic or a help overview identify identify the working copy or specified revision import import an ordered set of patches diff -r 004f965630d9 -r a58251c0568f tests/test-graft.t --- a/tests/test-graft.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-graft.t Thu Aug 01 22:52:05 2013 -0500 @@ -177,8 +177,8 @@ Commit while interrupted should fail: $ hg ci -m 'commit interrupted graft' - abort: cannot commit an interrupted graft operation - (use "hg graft -c" to continue graft) + abort: graft in progress + (use 'hg graft --continue' or 'hg update' to abort) [255] Abort the graft and try committing: diff -r 004f965630d9 -r a58251c0568f tests/test-help.t --- a/tests/test-help.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-help.t Thu Aug 01 22:52:05 2013 -0500 @@ -68,7 +68,7 @@ forget forget the specified files on the next commit graft copy changes from other branches onto the current branch grep search for a pattern in specified files and revisions - heads show current repository heads or show branch heads + heads show branch heads help show help for a given topic or a help overview identify identify the working copy or specified revision import import an ordered set of patches @@ -144,7 +144,7 @@ forget forget the specified files on the next commit graft copy changes from other branches onto the current branch grep search for a pattern in specified files and revisions - heads show current repository heads or show branch heads + heads show branch heads help show help for a given topic or a help overview identify identify the working copy or specified revision import import an ordered set of patches @@ -629,7 +629,7 @@ forget forget the specified files on the next commit graft copy changes from other branches onto the current branch grep search for a pattern in specified files and revisions - heads show current repository heads or show branch heads + heads show branch heads help show help for a given topic or a help overview identify identify the working copy or specified revision import import an ordered set of patches @@ -1276,7 +1276,7 @@ heads - show current repository heads or show branch heads + show branch heads diff -r 004f965630d9 -r a58251c0568f tests/test-hgweb-commands.t --- a/tests/test-hgweb-commands.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-hgweb-commands.t Thu Aug 01 22:52:05 2013 -0500 @@ -1324,14 +1324,11 @@ $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT \ > 'graph/e06180cbfb0?style=raw&revcount=3' | grep changeset - changeset: ab4f1438558b changeset: e06180cbfb0c changeset: b4e73ffab476 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT \ > 'graph/b4e73ffab47?style=raw&revcount=3' | grep changeset - changeset: ab4f1438558b - changeset: e06180cbfb0c changeset: b4e73ffab476 $ cat errors.log diff -r 004f965630d9 -r a58251c0568f tests/test-histedit-edit.t --- a/tests/test-histedit-edit.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-histedit-edit.t Thu Aug 01 22:52:05 2013 -0500 @@ -69,13 +69,9 @@ $ hg id -n 3+ $ hg up 0 - 0 files updated, 0 files merged, 3 files removed, 0 files unresolved - $ HGEDITOR='echo foobaz > ' hg histedit --continue - abort: 055a42cdd887 is not an ancestor of working directory - (update to 055a42cdd887 or descendant and run "hg histedit --continue" again) + abort: histedit in progress + (use 'hg histedit --continue' or 'hg histedit --abort') [255] - $ hg up 3 - 3 files updated, 0 files merged, 0 files removed, 0 files unresolved commit, then edit the revision $ hg ci -m 'wat' diff -r 004f965630d9 -r a58251c0568f tests/test-histedit-fold.t diff -r 004f965630d9 -r a58251c0568f tests/test-histedit-no-change.t --- a/tests/test-histedit-no-change.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-histedit-no-change.t Thu Aug 01 22:52:05 2013 -0500 @@ -169,13 +169,34 @@ o 0 cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b "a" -abort editing session +abort editing session, after first forcibly updating away + $ hg up 0 + abort: histedit in progress + (use 'hg histedit --continue' or 'hg histedit --abort') + [255] + $ mv .hg/histedit-state .hg/histedit-state-ignore + $ hg up 0 + 0 files updated, 0 files merged, 3 files removed, 0 files unresolved + $ mv .hg/histedit-state-ignore .hg/histedit-state + $ hg sum + parent: 0:cb9a9f314b8b + a + branch: default + commit: 1 modified, 1 unknown (new branch head) + update: 6 new changesets (update) + hist: 2 remaining (histedit --continue) + $ hg histedit --abort 2>&1 | fixbundle - 2 files updated, 0 files merged, 0 files removed, 0 files unresolved + [1] + +modified files should survive the abort when we've moved away already + $ hg st + M e + ? edit.sh $ graphlog "log after abort" % log after abort - @ 5 652413bf663ef2a641cab26574e46d5f5a64a55a "f" + o 5 652413bf663ef2a641cab26574e46d5f5a64a55a "f" | o 4 e860deea161a2f77de56603b340ebbb4536308ae "e" | @@ -185,7 +206,7 @@ | o 1 d2ae7f538514cd87c17547b0de4cea71fe1af9fb "b" | - o 0 cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b "a" + @ 0 cb9a9f314b8b07ba71012fcdbc544b5a4d82ff5b "a" $ cd .. diff -r 004f965630d9 -r a58251c0568f tests/test-histedit-obsolete.t --- a/tests/test-histedit-obsolete.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-histedit-obsolete.t Thu Aug 01 22:52:05 2013 -0500 @@ -441,4 +441,19 @@ | o 0:cb9a9f314b8b (public) a + $ hg co 18 + 0 files updated, 0 files merged, 2 files removed, 0 files unresolved + $ echo wat >> wat + $ hg add wat + $ hg ci -m 'add wat' + created new head + $ hg merge 19 + 2 files updated, 0 files merged, 0 files removed, 0 files unresolved + (branch merge, don't forget to commit) + $ hg ci -m 'merge' + $ echo not wat > wat + $ hg ci -m 'modify wat' + $ hg histedit 17 + abort: cannot edit history that contains merges + [255] $ cd .. diff -r 004f965630d9 -r a58251c0568f tests/test-import.t --- a/tests/test-import.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-import.t Thu Aug 01 22:52:05 2013 -0500 @@ -345,7 +345,6 @@ email patch next line - --- $ rm -r b diff -r 004f965630d9 -r a58251c0568f tests/test-issue660.t --- a/tests/test-issue660.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-issue660.t Thu Aug 01 22:52:05 2013 -0500 @@ -73,6 +73,15 @@ $ hg st +Issue3423: + + $ hg forget a + $ echo zed > a + $ hg revert a + $ hg st + ? a.orig + $ rm a.orig + addremove: $ rm -r a b diff -r 004f965630d9 -r a58251c0568f tests/test-largefiles.t --- a/tests/test-largefiles.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-largefiles.t Thu Aug 01 22:52:05 2013 -0500 @@ -738,6 +738,8 @@ large6 $ cat sub2/large7 large7 + $ hg log -qf sub2/large7 + 7:daea875e9014 $ cd .. $ hg clone a -r 3 c adding changesets diff -r 004f965630d9 -r a58251c0568f tests/test-log.t --- a/tests/test-log.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-log.t Thu Aug 01 22:52:05 2013 -0500 @@ -1223,6 +1223,9 @@ $ hg log --template='{rev}:{node}\n' --hidden 1:a765632148dc55d38c35c4f247c618701886cb2f 0:9f758d63dcde62d547ebfb08e1e7ee96535f2b05 + $ hg log -r a + abort: unknown revision 'a'! + [255] test that parent prevent a changeset to be hidden diff -r 004f965630d9 -r a58251c0568f tests/test-merge1.t --- a/tests/test-merge1.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-merge1.t Thu Aug 01 22:52:05 2013 -0500 @@ -23,6 +23,37 @@ $ hg update 0 0 files updated, 0 files merged, 1 files removed, 0 files unresolved + +Test interrupted updates by exploiting our non-handling of directory collisions + + $ mkdir b + $ hg up + abort: *: '$TESTTMP/t/b' (glob) + [255] + $ hg ci + abort: last update was interrupted + (use 'hg update' to get a consistent checkout) + [255] + $ hg sum + parent: 0:538afb845929 + commit #0 + branch: default + commit: (interrupted update) + update: 1 new changesets (update) + $ rmdir b + $ hg up + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ hg sum + parent: 1:b8bb4a988f25 tip + commit #1 + branch: default + commit: (clean) + update: (current) + +Prepare a basic merge + + $ hg up 0 + 0 files updated, 0 files merged, 1 files removed, 0 files unresolved $ echo This is file c1 > c $ hg add c $ hg commit -m "commit #2" diff -r 004f965630d9 -r a58251c0568f tests/test-rebase-interruptions.t --- a/tests/test-rebase-interruptions.t Fri Jul 12 11:14:42 2013 +0900 +++ b/tests/test-rebase-interruptions.t Thu Aug 01 22:52:05 2013 -0500 @@ -66,11 +66,11 @@ Force a commit on C during the interruption: - $ hg up -q -C 2 + $ hg up -q -C 2 --config 'extensions.rebase=!' $ echo 'Extra' > Extra $ hg add Extra - $ hg ci -m 'Extra' + $ hg ci -m 'Extra' --config 'extensions.rebase=!' Force this commit onto secret phase @@ -156,11 +156,11 @@ Force a commit on B' during the interruption: - $ hg up -q -C 5 + $ hg up -q -C 5 --config 'extensions.rebase=!' $ echo 'Extra' > Extra $ hg add Extra - $ hg ci -m 'Extra' + $ hg ci -m 'Extra' --config 'extensions.rebase=!' $ hg tglog @ 6: 'Extra' @@ -180,8 +180,8 @@ Abort the rebasing: $ hg rebase --abort - warning: new changesets detected on target branch, can't abort - [255] + warning: new changesets detected on target branch, can't strip + rebase aborted $ hg tglog @ 6: 'Extra' @@ -227,7 +227,7 @@ Change phase on B and B' - $ hg up -q -C 5 + $ hg up -q -C 5 --config 'extensions.rebase=!' $ hg phase --public 1 $ hg phase --public 5 $ hg phase --secret -f 2 @@ -248,9 +248,8 @@ Abort the rebasing: $ hg rebase --abort - abort: can't abort rebase due to immutable changesets 45396c49d53b - (see hg help phases for details) - [255] + warning: can't clean up immutable changesets 45396c49d53b + rebase aborted $ hg tglogp @ 5:public 'B'