ソフトウェア開発に関しては、これまでほぼ一人で完結していた*1ので git の運用方法もかなり適当だったのですが(ただのコミットマシーン状態)、今回、同一プロジェクトに対して複数人でコミットしていく形になっているので、その状態だとやはりまずいなと言う気がしてきました。ググっていると「なるほど」と思う記事もたくさんあったので、それらの記事を元に自分のプロジェクトの「git の運用指針」を情報共有のために記載しておこうと思います。 前提 まず始めに、現在のプロジェクトの状況は下記のようになっています。 開発は 1 人のメインコミッタ(私)と数人のサポートコミッタ(アルバイト等)で行われる メインコミッタはフルタイム、サポートコミッタは週に数時間〜10時間程度の勤務形態 サポートコミッタに対しては、基本的に 1 機能(1 チケット)を 1 人で完結するように作業を配分するが、時間的な兼ね合いもあ
WebデザイナはGitを学ぶべきでしょうか。答えはイエスだと思います。やらなくてもいいかもしれませんが、やればアドバンテージになるでしょうし、やらないことが今後マイナスになっていくように思えます。 仕事に必要な道具は常に進化します。その変化の過程で「ツールは本質ではない」と、うそぶいたまま時代の波に乗り遅れた人たちを過去に少なからず見て来ました。ツール(道具)が本質でないのは当然です。でも、そのときどきに使うべきツールを使わなければ、良い仕事はできませんし、市場ニーズに応えられません。 そのことを個人的な体験談を混じえて書いてみたいと思います。 今から20年ほど前、学生時代にバイトをしていた出版社で呆れられました。人文系の書籍や雑誌を手がけてきた筋金入りの編集者だった上司は、こう言いました。 「キミは編集者の7つ道具も知らんのかね!」 1993年時点で雑誌や書籍の編集者が必ず持っているとさ
※この記事では「Webデザイナー」は、「ノンプログラマ」の意味で使っています。 psd、ai などの材料データの管理ではなく、サーバーにアップするファイルの管理の話です。 サルでもわかるといわれても、やっぱりわからない・・・ Web制作をやっている人は、少なからずバージョン管理システムの話を聞いたことがあると思います。 特にGit(ギット)っていうのは、内容まで知らなくても名前くらいは聞いたことがありますよね。 で、ネット上ではバージョン管理システムのメリットに関するブログ記事なんかもたくさんあって、変更履歴をたどれるとか、複数人で同じファイルを修正したりといった時のトラブルに対応できるとか、なんか便利そうだなーとは思っていたわけですが、ずーっと導入は見送ってきました。 その理由は・・・ 「Git入門」とか書いてある記事を読んでも導入方法が書いてあるだけで、実際に使うシチュエーションが思い
去年の夏にカナダから帰ってきてから、AtlassianのStashでGitな開発をしているのですが、 最近、アサインされたプロジェクトがSubversionでテンション下がったので、 git-svnでチェックアウトしてきて(Windowsマシンでgit svnを使ってみる | shinodogg.com) Stashに突っ込んだりしてるのですが、他の会社の人たちはどーしてるのかなー?って事で、 はじめてテックヒルズ(第5回テックヒルズ『Go to Git !』~さらばSVN~)に参加してみました。ハッシュタグは #techhils #java-jaのキャンセル待ちが繰り上がらなさそうだったって話もある。。 会場は六本木ヒルズの49階のアカデミーヒルズ。 19時ちょっと過ぎについたら、満員御礼的な感じで机がる席に座ることはできませんでした。 ■ GREE 大場さん ・バージョン管理システムの
2011年4月18日(火)に実施した、プライベートセミナー『アジャイル開発環境セミナー~一般ユーザが知っておきたいJIRAの概念と操作~』での資料です。
■ GitLabでGitHubっぽい開発環境を構築した かずひこに先を越されてしまったが、GitHubライクなソーシャルコーディング環境を実現するフリーソフトウェア「GitLab」の導入が楽になったらしいので、入れてみた。職場の開発環境用。もう、Pull Requestのない開発なんてありえないからなー。 インストールマニュアルはだいたいDebian系のLinuxディストリビューションをターゲットに書かれているので(というかUbuntu向けだろうけど)、愛用のDebian Squeezeにもわりとすんなり導入できた。かずひこと同様、既存のApacheからリバースプロキシとして動かすように設定(→レシピ)。 唯一、実行後にSidekiqがRedisまわりでエラーになるのだけど、ちゃんとトラブルシューティングのドキュメントがあって、そのとおりにやったら動いた。すばらしいじゃないですか……見習い
リポジトリとは? 更新履歴をためておく場所です。 gitでは、リポジトリには2種類あります。 「自分の作業用リポジトリ」と 「公開用リポジトリ」です。 今日は、 自分のPC内のフォルダ=自分の作業用リポジトリ github=公開用リポジトリ として話をします。 githubとは? gitで管理した更新履歴を置いておく場所。 完成したものを見せるんじゃなく、 開発途中の履歴を見せる。 普段見えない裏側のソースコードも見える。 履歴をちょこちょこ送れるので、開発してる!感が出せるのでエンジニアに人気。 人のソースコードに手を入れて送ったりもできるらしい。 別にプログラムじゃなくてもいろんな更新履歴を管理してよい。 でも交換日記とかを管理するのはやめましょう。 流れ 必要なものを用意しよう github for Windowsをインストールしよう コミットしてgithubにpublishしよう
KLab では、プロジェクト開発中に作った便利ツールなどを皆が気軽に社内で公開できる場としてBitBucketの無制限プラン($200/month)を契約しています。 今日は Github に比べていいなと思う点を紹介していきます。 1. アクセスコントロール Githubだと、書き込み権とadmin権が一緒になってしまっていましたが、BitBucketではadmin権とwrite権が分かれていたり、Team(GithubでいうOrganization)の Owner グループでなくてもリポジトリを作ることができます。 特にadmin権がなくてもリポジトリが作れるので、「皆に気軽にリポジトリを作って欲しい」を実現するために皆に Team の admin権を渡さなくていいのが利点です。 deploy key についても、同じ公開鍵を複数のリポジトリに登録できるのと、pushが禁止されているの
たったひとつの※1・・・とタイトルにつけたいところですが、自粛しました。 読む本の大半が SF な山本泰宇です。 「Git & GitHub & kintone でウルトラハッピー!」で紹介しましたが、サイボウズでは昨年 Git と GitHub Enterprise を導入し、それまでの Subversion 中心のシステムから移行しています。 開発システムはソースコード管理だけではなく、レビューシステム、ビルドシステム、BTS、ドキュメント、その他さまざまなツールやシステムを組み合わせて構成されます。長年 Subversion や CVS を中心にしてきた組織では、さまざまな仕組みがそれに依存しているので、Git に移行したくてもできない!とお悩みのところも多いのではないかと思います。 ここからが本題。システムの準備は少人数で進められます。前回紹介した Git, GitHub, kin
(追記) この記事は公開から時間が経っており、内容が古くなっています。 本稿では、すでにプライベートなWebサーバを運用している人向けにGitサーバの構築方法を説明します。ひと手間をかけるだけでGitサーバを構成できます。Webサーバがない人はGitHubでプライベートリポジトリを作った方が早くて安くて旨いかもしれません。 要件 以下の要件を考えてみます。 SSHでGitリポジトリにアクセスしたい。 HTTPSでGitリポジトリにアクセスしたい。 Webブラウザでリポジトリを閲覧したい。 Gitリポジトリには機密性の高い情報を格納する可能性がある。 具体的には、 git clone git@git.example.com:/something.git とか、 git clone https://myname@git.example.com/something.git とかしたいです。 Gi
こんばんわ、1年ぶりの投稿になります。せい(@shin1rosei)です。 キライな言葉は「面白法人なんだから面白いことしろよ」と言われることです。 自分は真面目一本で生きてきて大して面白い人間ではないので辛くなります。 このエントリはtech.kayac.com Advent Calendar 2012 12日目の記事になります. テーマは「私の中のマイイノベーション2012」ということで、 今年を色々振り返ってみってみて、かなり地味な内容になりますが、一番効果が高かったなーと感じる「チームでgitを使い始めたこと」をお話したいと思います。 使い始めるまで 今まで自分が関わっていたプロジェクトは(小学生と言われるの覚悟で)subersionを使うのが一般的で、 gitの恩恵にあやかりたいプログラマは"git-svn"を使っていました。 ただ、次のような問題点がありました。 project
8. コミットに入ってる情報 リビジョン (SHA-1 ハッシュ) 例: 23cdd334e6e251336ca7dd34e0f6e3ea08b5d0db Author (コミットを作成した人) 例: オープンソースプロジェクトにパッチを送った人 Committer (コミットを適用した人) 例: 受け取ったパッチを取り込んだ人 ファイルのスナップショット (tree) コミットで変更されたファイルを含むツリー(説明は省略) 1つ前のコミットのリビジョン 例: 4717e3cf182610e9e82940ac45abb0d422a76d77 9. コミットに入ってる情報 リビジョン (SHA-1 ハッシュ) 例: 23cdd334e6e251336ca7dd34e0f6e3ea08b5d0db Author (コミットを作成した人) 例: オープンソースプロジェクトにパッチを送った人 Co
履歴 恥を忍んで記事を公開させていただいたおかげで、いろいろフィードバックいただきました。フィードバックを取り込んで更新を行なっています。 2012/11/16: cherry-pickしやすいように、というくだりのところは論理通ってないので削除しました。 1 pull req. 1 commitの原則をやめました。言いたいことであった「試行錯誤の過程を入れないで」を丸パクリしました! > id:kazuho その他表記修正、クリアコードさんの記事に説明丸投げなど。 まえがき gitでトラブった!という話を何度か聞いたことがあります。なんでトラブッてるんだろう…と話を聞いたところ、同一のリモートブランチに対して複数人・複数環境から操作が行われているようです。極端な例を挙げると、masterブランチしか存在しておらず、コミットログをキレイにするためと称してgit pull –rebaseを常
動機 Subversionで困ってない ぶっちゃけSubversionで全然困っていませんでした。 コードレビューはちゃんとやっていたし、マージ・ブランチングも自作シェルスクリプトのおかげてスムーズにやれていました。 よく「Gitはマージが賢い、ブランチ作成が一瞬でできる」とかいわれますが、Subversionだってちゃんと使えばコンフリクトなんかめったに起きないし、ブランチ管理・マージだって全然めんどくさくない。 特にver1.7からはサーバもクライアントも大幅に高速化されたし、.svnディレクトリが.gitみたいに1個になったし、rebaseみたいなことだってできる。(sync merge & reintegrate) ただ、世の中が一斉にGitにシフトしている中でいつまでもSubversionを使っててよいのかという不安がありました。 また、月から金までSubversionにどっぷり
This Domain Has Expired, To Renew Please Contact Your Provider.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く