Help us understand the problem. What is going on with this article?

Mac Git 初期設定

目的

Gitの初期設定を行います。

設定確認

git バージョン確認

$ git --version
git version 2.13.6 (Apple Git-96)

まず、MacにインストールされているGitのバージョンを確認しておきましょう。
Windowsと違ってMacはGit標準搭載されているので良きです。

万が一、Gitのバージョンが1系であればアップデートしておいた方が良いでしょう。

git 設定確認

* ローカルの設定
$ git config -l
* グローバルの設定
$ git config --global -l

設定ファイルの場所

  • Local: .git/config 各対象のリポジトリの.gitディレクトリ
  • Global: ~/.gitconfig

基本はLocalとGlobalの設定ファイルの場所だけ覚えておけばokです。
設定ファイルはコマンドから書き換えることを推奨します。
直接書き換えてしまってもokです。

Git初期設定手順(必須)

git ユーザー名、メールアドレスの設定

ユーザ名、メールアドレスは必ず設定しておきます。
公開リポジトリだとWebから見れてしまうので、本名は設定しない方が無難です。

$ git config --global user.name "ゆうきゃん"
$ git config --global user.email "ucan-lab@example.com"

ディレクトリ、ファイル設定

$ mkdir ~/.ssh
$ touch ~/.ssh/config
$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/*

パーミッションはディレクトリは700、ファイルは600である必要があります。

ssh config

$ vi ~/.ssh/config

Host *
  StrictHostKeyChecking no
  UserKnownHostsFile=/dev/null
  ServerAliveInterval 15
  ServerAliveCountMax 30
  AddKeysToAgent yes
  UseKeychain yes
  IdentitiesOnly yes

メールアドレスのプライバシー設定

https://github.com/settings/emails

プライベートなメールアドレスが表示されるのが嫌な場合は
Keep my email address private にチェックを入れて、
ID+ユーザー名@users.noreply.github.comuser.email に設定しましょう。

global .gitignore 設定(推奨)

~/.config/git/ignore

$ mkdir -p ~/.config/git

ディレクトリがない場合作成する。

.DS_Store

[Git] .gitignoreの仕様詳解

Git初期設定(お好み)

ユーザー名とメールアドレスの設定以外はお好みです。

git status 追跡されていないファイルはすべて表示

$ git config --global status.showUntrackedFiles all

追跡されていないファイルはすべて表示させたい。

git パーミッションの変更を無視する

$ git config --global core.filemode false

チーム開発時は他の人と合わせましょう。

git ファイル名の大文字・小文字の変更を検知する。

$ git config --global core.ignorecase false

ファイル名の大文字・小文字だけを変更することは希にあるので、この設定は割と重要かも。

git カラー設定

$ git config --global color.ui true
$ git config --global color.diff auto
$ git config --global color.status auto
$ git config --global color.branch auto

git 日本語ファイル名をエスケープせずに表示

$ git config --global core.quotepath false

git 濁点つきのディレクトリ・ファイルが分けて表示されてしまう UTF8-MAC 問題の解決方法

$ git config --global core.precomposeunicode true
  • git 1.7.12以降で使用可能
  • git 1.8.5以降はデフォルトでtrueとなっている

マージコンフリクトを見やすくする

$ git config --global merge.conflictStyle diff3

設定まとめ

git config --global status.showUntrackedFiles all
git config --global core.filemode false
git config --global core.ignorecase false
git config --global color.ui true
git config --global color.diff auto
git config --global color.status auto
git config --global color.branch auto
git config --global core.quotepath false
git config --global core.precomposeunicode true
git config --global merge.conflictStyle diff3

Git CLIツール

詳細は Git使うのに便利なCLIツール の記事に詳しくまとめられています!

次回

GitHub SSH接続設定も合わせて行いましょう!

参考

ucan-lab
Backend Developer at ROLO. I love PHP and I'm focusing on Laravel, Docker, GraphQL.
https://u-can.pro
miraito-inc
システムデザインを中心に置いた開発により高品質で使いやすいシステムを提供いたします。業務システム構築、アプリ開発、コンサルティングまで幅広く手がけています。
https://miraito-inc.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした