Skip to content

Commit

Permalink
Update ebooks
Browse files Browse the repository at this point in the history
  • Loading branch information
harupong committed Dec 9, 2013
1 parent cde0a0b commit bb3493d
Show file tree
Hide file tree
Showing 4 changed files with 5 additions and 5 deletions.
Binary file modified progit.ja.epub
Binary file not shown.
10 changes: 5 additions & 5 deletions progit.ja.html
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@ <h3>Windowsにインストール</h3>

<p>インストール後、コマンドライン版(後で役に立つSSHクライアントを含む)とスタンダードGUI版の両方を使う事ができます。</p>

<p>Windows利用時の注意点: この本で紹介されている複雑なコマンドを使えるので、GitはmsysGit shell(Unixスタイル)で使うようにしましょう。Windowsのシェル/コマンドラインコンソールを使わざるを得ない場合、空白を含むパラメーターを囲むための記号はダブルクオーテーション(シングルクォーテーションは使えない)を使用する必要があります。同様に、サーカムフレックス記号(<sup>)が行末に来る場合はダブルクオーテーションで囲まなければなりません。同記号はWindowsにおいて「次行に続く」を意味する記号だからです。</sup></p>
<p>Windows利用時の注意点: この本で紹介されている複雑なコマンドを使えるので、GitはmsysGit shell(Unixスタイル)で使うようにしましょう。Windowsのシェル/コマンドラインコンソールを使わざるを得ない場合、空白を含むパラメーターを囲むための記号はダブルクオーテーション(シングルクォーテーションは使えない)を使用する必要があります。同様に、サーカムフレックス記号(^)が行末に来る場合はダブルクオーテーションで囲まなければなりません。同記号はWindowsにおいて「次行に続く」を意味する記号だからです。</p>

<h2>最初のGitの構成</h2>

Expand Down Expand Up @@ -1554,7 +1554,7 @@ <h2>ブランチとは</h2>
$ git commit -m 'initial commit of my project'
</code></pre>

<p><code>git commit</code> を実行してコミットを作成すると、Git は各サブディレクトリ (この場合はプロジェクトのルートディレクトリのみ) のチェックサムを計算し、ツリーオブジェクトを Git リポジトリに格納します。それから、メタデータおよびルートオブジェクトツリーへのポインタを含むコミットオブジェクトを作成します。これで、必要に応じてこのスナップショットを再作成できるようになります。</p>
<p><code>git commit</code> を実行すると、プロジェクト内全ディレクトリのチェックサムが計算され、<code>tree</code> オブジェクトとして Git リポジトリに格納されます。続いて、メタデータおよびさきほどの <code>tree</code> オブジェクトへのポインタを含むコミットオブジェクトを作成します。これで、必要に応じてこのスナップショットを再作成できるようになります。</p>

<p>この時点で、Git リポジトリには 5 つのオブジェクトが含まれています。3 つのファイルそれぞれの中身をあらわす blob オブジェクト、ディレクトリの中身の一覧とどのファイルがどの blob に対応するかをあらわすツリーオブジェクト、そしてそのルートツリーおよびすべてのメタデータへのポインタを含むコミットオブジェクトです。Git リポジトリ内のデータを概念図であらわすと、図 3-1 のようになります。</p>

Expand Down Expand Up @@ -3588,7 +3588,7 @@ <h3>大規模な公開プロジェクト</h3>
1.6.2.rc1.20.g8c5b.dirty
</code></pre>

<p>このファイルを編集して、コミットメッセージには書けなかったような情報をメーリングリスト用に追加することもできます。<code>--</code> の行とパッチの開始位置 (<code>lib/simplegit.rb</code> の行) の間にメッセージを書くと、メールを受信した人はそれを読むことができますが、パッチからは除外されます。</p>
<p>このファイルを編集して、コミットメッセージには書けなかったような情報をメーリングリスト用に追加することもできます。<code>---</code> の行とパッチの開始位置 (<code>lib/simplegit.rb</code> の行) の間にメッセージを書くと、メールを受信した人はそれを読むことができますが、パッチからは除外されます。</p>

<p>これをメーリングリストに投稿するには、メールソフトにファイルの内容を貼り付けるか、あるいはコマンドラインのプログラムを使います。ファイルの内容をコピーして貼り付けると「かしこい」メールソフトが勝手に改行の位置を変えてしまうなどの問題が起こりがちです。ありがたいことに Git には、きちんとしたフォーマットのパッチを IMAP で送ることを支援するツールが用意されています。これを使うと便利です。ここでは、パッチを Gmail で送る方法を説明しましょう。というのも、たまたま私が使ってるメールソフトが Gmail だからです。さまざまなメールソフトでの詳細なメール送信方法が、Git ソースコードにある <code>Documentation/SubmittingPatches</code> の最後に載っています。</p>

Expand Down Expand Up @@ -6609,15 +6609,15 @@ <h3>Subversion</h3>

<p>SVN で使っている作者の一覧を取得するには、このようにします。</p>

<pre><code>$ svn log --xml | grep -P "^&lt;author" | sort -u | \
<pre><code>$ svn log ^/ --xml | grep -P "^&lt;author" | sort -u | \
perl -pe 's/&lt;author&gt;(.*?)&lt;\/author&gt;/$1 = /' &gt; users.txt
</code></pre>

<p>これは、まずログを XML フォーマットで出力します。その中から作者を捜して重複を省き、XML を除去します (ちょっと見ればわかりますが、これは <code>grep</code> や <code>sort</code>、そして <code>perl</code> といったコマンドが使える環境でないと動きません)。この出力を users.txt にリダイレクトし、そこに Git のユーザーデータを書き足していきます。</p>

<p>このファイルを <code>git svn</code> に渡せば、作者のデータをより正確にマッピングできるようになります。また、Subversion が通常インポートするメタデータを含めないよう <code>git svn</code> に指示することもできます。そのためには <code>--no-metadata</code> を <code>clone</code> コマンドあるいは <code>init</code> コマンドに渡します。そうすると、 <code>import</code> コマンドは次のようになります。</p>

<pre><code>$ git-svn clone http://my-project.googlecode.com/svn/ \
<pre><code>$ git svn clone http://my-project.googlecode.com/svn/ \
--authors-file=users.txt --no-metadata -s my_project
</code></pre>

Expand Down
Binary file modified progit.ja.mobi
Binary file not shown.
Binary file modified progit.ja.pdf
Binary file not shown.

0 comments on commit bb3493d

Please sign in to comment.