Git 記事エキスパート
Git か SVN か。Nuance Healthcare は Git のブランチ モデルを選択した基準

これは Nuance Healthcare の Matt Shelton からのゲスト投稿です。この投稿は、Subversion から Git に移行した彼のチームの話をまとめたシリーズの第 1 回目で、移行した理由や移行の過程で経験した事柄が語られています。Matt は Atlassian Summit 2015 でも、このテーマについて話をしています。このシリーズでは彼の持ち時間の 30 分では話せなかったすべてのみならず、その時の話とは違った側面についても取り上げます。

全文を読む
Maven の依存関係を Git への切り替え時に解決する

そう、Git への移行を進めている私たちが夢中になっているのが git-flow です。ここまで来たら、何もかもテストしてみましょう! 何といっても自慢のチームです。彼らは Confluence にある開発ワークフローのヒット リスト、つまりこれまでのチームの開発をもとにしたすべてのワークフローと、将来取り組む必要が生じる可能性があると考える悩ましいワークフローのすべてをかき集めました。そして、私たちのプロジェクトをミラーリングしたプロジェクト構成 (もちろんコードは一切なし、pom.xml 一本) によって、すべてのワークフローを試してみました。

全文を読む
トリガーを引く: SVN から Git に移行する

私たちは Git への移行を進めており、効率的な開発ワークフローの中で git-flow と Maven を併用する方法を考案しました。私たちの今のワークフローがどのようなものかをお話しする前に、以前はどんな状況であったかを知っておくことが重要です。

全文を読む
Git の 10 年間

10 年前のある日曜日、Linus Torvalds は新しい分散型バージョン管理システムのコードを書き始めて、そのわずか数日後には世界は Git という贈り物を手にすることになりました。

全文を読む
Git guilt に表れる責任とコードレビューの重要性

最近、私は Git を正しく理解する ツアーの第 2 レグの旅に少し出かけていました。このツアーは世界中から大勢の開発者が集まる、とても楽しい集会でした。ツアーの第 1 レグを行ってからの数ヶ月の間に、Git が参加者の間でどれほど多く採用されたを知って、実に信じられない思いでした。7 月に出席した際に「Git を使っている人」と尋ねると、参加者のほとんど全員が手を挙げました。

全文を読む
Git: サーバー サイド フックによる自動マージ (これで決まり!)

エンタープライズ DVCS ワークフローは定着しつつあり、パターンが統合されてきています。Git によって各チームは非常に柔軟に作業できるため、1 つの企業内でもチームによって異なった方法でコードを共有してコラボレーションしている場合があります。

全文を読む
Git フォークとアップストリーム: 仕組みと役に立つヒント

upstream のリポジトリに対して fork を常に更新した状態に保つ方法を書いた便利なガイドなら山ほどあり、探せばもっと多く見つかります (エンタープライズ環境で fork を使う理由とは何だろうと考えている場合は、こちらでその理由のいくつかをご確認ください)。このブログでは、フォークと upstream を相互に結びつける方法について、いくつかの側面から紹介します。基本、了解事項、役に立つヒントなどです。そこでまず、これはいいなと感じたり知りたくなったりするようなことを取り上げます。採用するかはあなた次第です。興味を持っていただけましたか? 続けてお読みください。

全文を読む
Git 2.1 の新機能

2 ヶ月半前の git 2.0.0 のリリースに引き続き、素晴らしい新機能が数多く含まれたマイナー バージョン git 2.1.0 がもうすぐ入手可能です。

全文を読む
コア コンセプト、ワークフロー、ヒント

Git 開発では、サブモジュールによって他のプロジェクトを自分のコードベースに取り込んで、その履歴は切り離したまま自分のプロジェクトの履歴と同期できるようになります。これはベンダー ライブラリや依存関係の問題を解決する便利な方法です。git に関してはいつもそうですが、このアプローチもかなりクセがあるためうまく使えるようになるには少しばかりの学習が必要です。サブモジュールに関する役に立つ詳細な説明は既に公開されているので、ここで繰り返すのは控えます。この記事では、この機能を最大限に活用するのに役立つ面白い情報をいくつか共有したいと思います。

全文を読む
Git チームのワークフロー: マージかリベースか

質問は簡単です。gitフィーチャー ブランチを利用しているソフトウェア チームにとって、完了済みの作業を開発のメインラインに取り込む最も優れた方法は何でしょうか。これはそれぞれ強い主張を持つ両陣営が何度も繰り返している議論の一つですが、落ち着いた話し合いが時として難しくなる場合があるものです (激しい議論が交わされた他の例については、インターネットをご覧ください)。

全文を読む
Git による巨大なリポジトリの対応方法

コードベースの発展過程を記録して開発者間の協同作業を効率化する際は、git こそ真打です。しかし、記録対象のリポジトリがとてつもなく巨大なものになった際に、いったい何が起こるのでしょうか?

全文を読む
Git Submodule の代替: Git Subtree

インターネットは Git サブモジュールを使うべきではないという記事で溢れ返っています。私の評価はそれほど厳しくないものの、概ね同意見です。前回の投稿で説明したように、若干の事例でサブモジュールが役立つ場合があるものの、欠点はいくつもあります。

全文を読む
git の拡張

Mercurial は (内面ではあるものの) 明確に定義された API を備えていて、Mercurial の機能を拡張する拡張機能を書くのに使用できますが、git の拡張モデルは小さくシンプルなプログラムを書くという UNIX 哲学に従いつつ同様の効果を達成しています。つまり、git の "拡張機能" はいくつかの簡単なルールに従って任意の言語によって作成できて、しかも git に内蔵されているかのようなコマンドを追加できるのです。

全文を読む
プルリクエストに習熟する: さまざまなフェッチ機能の紹介

最近では、プロジェクトの修正はフォークの作成と同じくらい簡単になりました。プロジェクトを完全にリモート コピーして、一瞬で作業用のフォークを作成できるように、変更するファイルを選択して編集を押し、修正をコミットすれば、プロジェクトを修正できます。

全文を読む
git とプロジェクトの依存関係

次の質問を考えてみてください。プロジェクトの依存関係を git でどう処理していますか。私たちのプロジェクトは互いに依存関係にある複数のリポジトリから構成されています。今はそうしたリポジトリを svn:externals で管理しています。これを git で処理する最適の方法は何でしょうか。git によって非常に大きなリポジトリを小さなコンポーネントに分割するにはどうすればよいでしょうか。これは最近行った Git を正しく理解する ツアーのヨーロッパ レグで、最もよく出された質問を例としていくつかあげたものです。

全文を読む
Git のワークフローでシンプルに

数多くのチームが既に git に移行しているだけでなく、さらに多くのチームが現在移行中です。個々の開発者を訓練して git の採用をサポートする優秀な人材を任命するだけでなく、物事が複雑になりすぎないように適切で簡単なコード コラボレーション手法を選ぶことが欠かせません。Git の場合は、非常に複雑なワークフローをあっという間に作り出すことが実際に可能です。私はそうしたワークフローをじかに見てきました。

全文を読む
最強の鎧: さまざまな障害からの復旧

高度なツールである git の哲学は、私が大切にしている考え方でもあります。それは開発者を賢明で責任感のある人として扱うことで、つまり git は多くのパワーを人に授けます。同時に、このパワーは災いの元凶にもなります。皆様はおそらく最強の鎧を身に付けているでしょうが、それでも自らを傷つけることがあります。

全文を読む
マージを信頼してブランチの簡素化をよく考えよう

製品界で注目を集める Jens SchumacherKen Olofsen が登場したアトラシアンの最近のウェビナーでは、git のワークフローに関するすばらしい概要が説明されました。ブランチング ワークフローは、最小限の簡単なものから、複雑なもの、強固なもの、防御重視なものまで、さまざまなタイプがあります。自分の組織に必要な複雑さとセーフガードのレベルはどの程度でしょうか? この投稿では、迅速性と堅牢性の間の妥協点について取り上げたうえで、併せて Git の活用の仕方を選択するためのガイドラインとアトラシアン内で習得した知識を紹介します。

全文を読む
チームが Git を使っていなくても Git を使う: git-svn を活用するコツ

アトラシアンに入社する前に取り組んでいたさまざまなプロジェクトでは、まだ Subversion (SVN) をバージョン管理システムとして使用していました。私は何年も前に Git に移行したので、できるだけ Git を使い続けたいと思っていました。

全文を読む
新しい Git 1.8.2 リリースについて知っておくべきこと

お気に入りのツールのリリース ノートの中に隠された (またはちらっと見えている) 宝物を探し回ること、それが私の喜びです。毎回ちょっとしたクリスマスみたいなものです。私の忠実な OSX オープン ソース ウィンドウ マネージャーの Slate や、RailsDjangoCoffeeScript、そしてもちろん Git など、その他のいろいろなアプリケーションの新しいバージョンがリリースされる際は、あの期待と好奇心でいっぱいの素晴らしい気持ちになるものです。

全文を読む
新しい Git 1.8.3 について知っておくべきこと

git をコマンド ラインで使っているにしても SourceTree のようなよく使われるツールを使用しているにしても、またコードを Bitbucket Cloud でホスティングしているのであっても、会社のファイアウォールの内側で Stash (現在の名称は Bitbucket Server) でホスティングしているのであっても、私のようなタイプの方々は、git の新しいリリースが発表されたときはいつだってお祭り騒ぎです。wink

全文を読む
Git 1.8.5 の新機能

重要なアップデートがいくつか予定されている git の次のメジャー リリースを待っている間に、最新のポイント リリース (マイナー アップデート) のリリース ノートを見てみましょう。そうです、1.8.5 が発表されました!

全文を読む
Git 1.9 の新機能

DayZポイント増加マラソンに夢中で手一杯なことはわかっていますが、私の話にお付き合いください。一聴に値するお話を用意しました。そう、最新の git のポイント リリース (1.9) が発表されました!

全文を読む
ついに登場。Git 2.0 には優れた機能が満載

待望の git のメジャー バージョン アップがリリースされました。変更履歴に目を通して、素晴らしい機能を見つけては興奮しています。いつも通り、以前の git のリリース内容をおさらいする方のために同様の紹介記事 (1.8.21.8.31.8.41.8.51.9) を投稿しておきましたので、是非ご覧ください。

全文を読む