[Xcode]この素晴らしい(クソ)コードは誰が書いたのか調べる方法
初の記事投稿になります。
初記事に何を書こうかなと思ってたんですが,
意外と見ない人も多いのかなと思いまして。
知っている人は知っている内容です。
はじめに
複数でチーム開発とかやっていると一つのファイルを
複数人で編集することって多いと思います。そんな中,
この素晴らしいコード誰が書いたんだろう?
このクソみたいなコード誰が描いたんだ?
っていう経験が少なからずあると思います。
こういうのを Xcode で調べる方法についてです。
コンフリクトの話は今回は置いておきます。
Xcode の Blame 機能
初期段階では気にならないとは思いますが,ある程度プロジェクトが
進んで行くと機能追加,改修やバグ修正などでこのコードよくわからんぞーとか
なんて素晴らしい書き方なんだ!とかあると思う。
バグ改修とかでわからない場合は書いた人に聞くのが一番の早道。
でも GitLab とか Redmine とかで誰が担当したのか
調べてもよくわからないときもあるかと思います。
だいたい Git で管理してるプロジェクトが多いと思います。
$ git blame filename
でもいいですが,視覚的に見た方がわかりやすいかなーって。
Xcode のツールバーの右側部分をいじるだけでわかってしまう訳です。
クリックしたら下記のような選択ができます。真ん中の Blame 機能が該当です。
上の Comparison 機能は文字どおり比較です。
今作業中のブランチと切り元との差分とかを見たりします。
わりとよく使う機能なので割愛します。便利ですよね。
下はログです。こちらでも Commit したログがしっかり見れますが,
コード編集者となるとまだ絞りきれないかもしれません。
Blame を選択してみるとコーディングエリアの右側に編集者名,
いつ Commit されたものか,Commit のコメントも見れます。
コメントアウトだけ変更して Commit したものですが,
別の日に 2 人で編集したんだとわかります。
マウスカーソルをボックス内に合わせると i ボタンが出てきて詳細も見れます。
14 個も一緒に Add して Commit しているようですが当然ながら良くないですね。
この場合はプロジェクトを新規作成して最初の Commit なのでいいのですが。
コメントアウトの追加だけしたところは見にくいですが;・・
しっかり見れますね。コメント内容が抽象的すぎたら困ってしまうかもですね。
今回は,コメントアウトを 2 行追加しただけならいい気もします。
通常業務,自分のアプリ作りでは次のことを心がけて作業しています。
心がけ
- Commit のコメントの最初にチケット番号などを書くようにする
- Commit のコメント内容は(当然ながら)見てわかるようにする
- Commit はできるだけ分けて修正ごとにするようにする
まぁ当然っちゃ当然ですね。
Redmine や GitLab の MR 内で議論していたらチケット番号はありがたい。
コメント内容がわかりやすければそりゃ嬉しい。
多くの修正が含まれている場合該当箇所を探す際に困ったり,
深刻なバグが見つかったときの修正の際に大幅なコードLOSTもありうる。
おわりに
今回はコード書いた人がわかる Xcode の Blame 機能について書きました。
素晴らしいコード書く人がいたら尊敬して真似しよう。
バグ修正などで困ったときにチーム内に書いた人がいたら質問しに行ってください。
この記事のために username 新しいの add してしまったのは内緒。
ご覧いただきありがとうございます。