Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
181
Help us understand the problem. What is going on with this article?
@ucan-lab

Mac Git 初期設定

目的

Gitの初期設定を行います。
Mac GitHub SSH接続設定はこれ。

設定確認

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/*
$ xattr -cr ~/.ssh

必要に応じて実行してください。
パーミッションはディレクトリは700、ファイルは600である必要があります。
xattr コマンドでMacの拡張ファイル属性(extended attributes)、いわゆるアットマークが付いてるのを削除できます。

ssh config

$ vi ~/.ssh/config

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

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

プライベートなメールアドレスが表示されるのが嫌な場合は
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接続設定も合わせて行いましょう!

参考

181
Help us understand the problem. What is going on with this article?
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
ucan-lab
Backend Developer at ROLO. I love PHP and I'm focusing on Laravel, Docker, GraphQL.
yyphp
PHPerが毎週集まり、ざっくばらんに情報交換する雑談コミュニティ

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
181
Help us understand the problem. What is going on with this article?