'hg grep'は履歴を検索してしまうし、'hg locate "set:grep('hogehoge')"'はマッチした行を表示してくれないので、この二つのコマンドの間の子を作って見ました。 https://bitbucket.org/troter/hg-grepfile 設定 [extensions] grepfile = [path to]/grepfile.py 使い方 こんな感じで管理下のファイルを検索できます。 % hg grepfile -n ctx.walk mercurial/cmdutil.py:1777: for abs in ctx.walk(m): mercurial/commands.py:283: for abs in ctx.walk(m): mercurial/commands.py:1085: for abs in ctx.walk(m): mercu
コードを書いているとプロジェクト内のコードを参考にしたかったり、一括で置換したかったりします。そんな時emacs内でgrepを使うのですが、プロジェクトがそれなりに大きくなると非常に遅くなります。gitのプロジェクトであれば、gitであればgit grepを使えば高速に検索できるのでそれを使えば良いと思い、やってみました。 letでgrep-find-commandを書き換える http://blog.kentarok.org/entry/20100219/1266577631 にletでgrep-find-commandを書き換えた上で、grep-find関数を呼び出すと出来るというふうに書いてあったので、やってみたのですが、なぜかうまくいきませんでした。うーん。 grep-apply-settingを使う emacsのgrep-commandを変更する - すぎゃーんメモ と同じように
昔作ったスクリプト*1の修正版です。前回からの変更点は以下の通り。 NYAOSのエイリアスへの簡易的な対応 hgのコマンド一覧取得にhg debugcompleteを使用するようにした それと、git用の補完スクリプトを書いて下さった方がいたので紹介。gitコマンドの補完、サブモジュールの削除nyaosスクリプト · GitHubから見ることが出来ます。 -- complete.lua Copyright (c) 2011 wantora -- MIT License (http://d.hatena.ne.jp/wantora/20101212/1292141801) local function clean_cmd(str) return str:gsub('%s+$', ''):gsub('^(%S+)%.[^/\\.]+$', '%1') end local completes_c
このエントリはMercurial Advent Calendar 2012の 1日目です。前回*1の反省を踏まえ、今回は軽いネタから、hgrcのtipsについて話したいと思います。 hgrcのマニュアルの日本語訳をwebから参照したい mercurialのマニュアルはほぼ100%日本語化されています。 次のURLからhgrcの日本語訳が参照できます。 http://mercurial-users.jp/manual/hgrc.5.html ちなみに、hgrcだけでは無くmercurialのマニュアルも参照できます。 http://mercurial-users.jp/manual/hg.1.html http://mercurial-users.jp/manual/hgignore.5.html リポジトリ固有の設定をしたい リポジトリ毎にhgrcの設定を変更したいことがあると思います。た
Mercurial で自分のローカルのリポジトリにコミットしてしまった変更を修正する方法です。 Histedit のインストール Histedit Extension を使いますので、インストールします。 $ hg clone https://bitbucket.org/durin42/histedit「~/.hgrc」に以下を記載します。hg_histedit.py へのパスを記載します。 [extensions] histedit = /path/to/histedit/hg_histedit.py チェンジセットの統合 では、以下のようなリポジトリを想定します。 $ hg glog --style compact -l 4 @ 2620[tip] 3a3f178dd767 2011-06-06 12:11 +0900 kenjis | add new file: user_guide
今回は Atlassian の開発者である Charles O’Farrell によるゲストブログです。チームが DVCS として Git を選択する理由について説明します。Charles はコーディングをほとんど DVCS 上で行い、また ClearCase から Git へユーザーを移行させる作業を行ってきました。 前回の記事では、分散バージョン管理システムとしてチームがなぜ Mercurial を選択するのかについて考えてみました。今回は、分散バージョン管理システム (DVCS) として なぜ Git が有力な選択肢であるのかについて考えてみましょう。 1970 年の黎明期から、ギークたちはどちらが善でどちらが悪かという血なまぐさい論争を長い間行ってきました。それが Vim と Emacs との間の戦いです。最近では、それとは別のツールセットについて、ギークたちは本来の仕事そっちのけ
このドメインは お名前.com から取得されました。 お名前.com は GMOインターネットグループ(株) が運営する国内シェアNo.1のドメイン登録サービスです。 ※表示価格は、全て税込です。 ※サービス品質維持のため、一時的に対象となる料金へ一定割合の「サービス維持調整費」を加算させていただきます。 ※1 「国内シェア」は、ICANN(インターネットのドメイン名などの資源を管理する非営利団体)の公表数値をもとに集計。gTLDが集計の対象。 日本のドメイン登録業者(レジストラ)(「ICANNがレジストラとして認定した企業」一覧(InterNIC提供)内に「Japan」の記載があるもの)を対象。 レジストラ「GMO Internet Group, Inc. d/b/a Onamae.com」のシェア値を集計。 2023年10月時点の調査。
Mercurialは、Merucurial拡張という拡張モジュールを使って、Merucrialの挙動をいろいろ拡張できるようになっています。 デフォルトのままだと使いにくいので、Mercurialを使う上で便利にしてくれる拡張を設定しておきましょう。 デフォルトでバンドルされているMercurial拡張は、Using Mercurial Extensionsにまとめられています。 今回はGit使いがMercurial使いに転職するときに、Gitで実現できたことをMercurialで実現するための、組み込み拡張、および、サードパーティ製の拡張について紹介します。 色づけしよう ブランチの確認、diff、パッチ等々、色づけされていないとつらいです。 というわけでGit同様に色づけしましょう。 Color Extensionはすでにバンドルされているので、.hgrcに次の記述を加えましょう。 こ
Textful Extension This extension is not distributed with Mercurial. Author: Yuya Nishihara Repository: http://bitbucket.org/yuja/hgext-textful/ Overview This extension tries to convert unreadable binary content to plain text when displaying, so that you can see decent diff of binary files. Currently supports the following conversions: textful.encoding: convert character encoding textful.msexcel: M
Mercurial よりも Git の方が興味のある公開リポジトリがあるのよね。 ってことで、Hg-Git Mercurial Plugin を使ってみた。 Hg-Git は dulwich という Python のユーティリティを使用しているようだけれど、 TortoiseHg には最初から組み込まれているから、準備は不要。 先ずは、Hg-Git のプラグインを上記のサイトの download a snapshot と書かれたところからプラグインのアーカイブをダウンロードし展開。 次に、Hg-Git を使いたい作業領域の .hg/hgrc をテキストエディタで開き、以下の記述を追加。私が使ったのは Windows でだけれど、ディレクトリの区切りは一応 / で。 [extensions] hgext.bookmarks = hggit = (Hg-Git を展開したディレクトリ)/hg-
分散バージョン管理システムの Mercurial で、$Id$ (や $Date$) を使いたいなあと思って調べたら、簡単に使えてたのでメモっときます。 まあ、以下の URL で十分事足ります(というかほぼ引用です。感謝)。 http://sakito.jp/moin/moin.cgi/Mercurial#head-1fa82b0ceb1e79590470cd83e8062bcf2ae656b4 $Id$ というのは、ソースファイルに以下のように $Id$ と書いておくと、 $Id$例えば、以下のように展開してくれる機能を言います。 $Id: test.txt,v 90f7ad75f95e 2010/01/25 00:22:38 khiker $$Id$ を展開する場合、$HOME/.hgrc に以下の内容を足します。 [extensions] hgext.keyword = [keywo
Gitは多機能だけど、なんかシンプルさが足りない。Mercurialを使ってる。 mercurialはGITのライバル Mercurialとは,Pythonで実装された,分散リポジトリ形式の構成管理ツールで,OpenJDK や Mozilla,OpenSolaris 等を始めとする多くのプロジェクトで採用されています。 Mercurialではじめる分散構成管理(藤原克則) 既にLinuxカーネルの原著作者であるLinus Torvaldsも同様の目的でGitの開発を開始していたが、MackallはLinux kernel Mailing List上でMercurialの優位性(データを差分の形式で保持することにより、リポジトリのサイズを節約している、等)を訴え、Torvaldsと論争を繰り広げたこともあった。 (wikipedia) SVNやgithubのようにブラウジングしたい。 SVN
Mercurial for Git users Git is a very popular DistributedSCM that works very similarly to Mercurial. Both are built upon such similar concepts that most repositories can be converted to and from Mercurial and Git without any significant data loss! There are, however, significant design and conceptual differences that may cause trouble when coming from Git to Mercurial. 1. High-level Comparison Mer
本節では hg initで新規作成された単一のリポジトリ (= ローカルリポジトリ)を元に、 Mercurial が構成変更をどのようなモデルで管理しているかを説明します。 内容的には分散リポジトリ型 SCM らしさはありませんが、 「マージ」の概念などは、 リポジトリ分散時の更新伝播には欠かせないものとなります。 初期状態作成 チェンジセット 複数ヘッド マージ 初期状態作成 本節では、 以下の手順で作成した Mercurial のローカルリポジトリを元に説明を行います。 この手順で作成されたリポジトリには、 初期状態として3つのファイル(A.txt, B.txt および C.txt)が含まれています。 以下、コマンド実行例における行番号位置を表す場合、 角括弧表記(e.g.: "[1]")を用います。 [ 1]: % hg init myrepo [ 2]: % cd myrepo [
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く