Gitを始めたばかりですか?初日からこの7つの良い習慣を身につけましょう

プログラマーがコーディングプロジェクトに取り組んでいる画像.

プロジェクトの履歴を追跡することからコードを統合することまで、Gitは現代のソフトウェア開発の基盤となっています。そのため、他の人と協力することを望む開発者にとって、Gitを正しく使うことを学ぶことは重要です。この記事では、良いGit習慣を身につけるためのいくつかのGit初心者向けのヒントを紹介します。

1. ユーザー名とユーザーのメールを設定する

Gitで最初に行うべきことの一つは、デフォルトのユーザー名とメールアドレスを設定することです。これにより、コミットを適切にタグ付けでき、他の人があなたのコードを参照し、将来的に連絡を取るのが容易になります。

ユーザー名とメールを設定するには、新しいターミナルセッションで次のコマンドを実行します:

git config--global user.name "YOUR NAME"  
git config--global user.email "YOUR EMAIL ADDRESS"

これらの変数は、個人のGit設定ファイルを通じて設定することもできます。そのためには、お気に入りのテキストエディタを使用して、ホームディレクトリにある.gitconfigファイルを開くか作成します:

ano ~/.gitconfig

設定ファイル内に次の行を貼り付けます:

[user]  
name= YOUR-NAME-HERE  
email= YOUR-EMAIL-HERE

設定ファイルを保存し、次のコマンドを実行してGitが正しく読み取っていることを確認します:

git config--list

2. 一般的な機能のエイリアスを作成する

Gitが複雑なプログラムであることは秘密ではありません。多くのサブコマンドやオプションがあるため、Gitは新しい開発者にとって圧倒されることがあります。これらのコマンドのエイリアスを作成することで、覚えやすくすることができます。

新しいエイリアスを作成するには、新しいターミナルセッションで次のコマンドを貼り付けます:

git config--global alias."KEY""SUBCOMMAND"

KEYプレースホルダーをサブコマンドのエイリアスに置き換えます。私の場合、「status」サブコマンドを「sta」というキーに設定します。

Gitのユーザー名とメールを設定するのと同様に、ホームディレクトリの.gitconfigファイルを使用して新しいエイリアスを設定することもできます。そのためには、次のコードブロックを.gitconfigファイル内に貼り付けます:

[alias]  
    sta = status  
    fet = fetch

.gitconfigファイルを保存し、新しいエイリアスが正しく機能していることを確認します。

3. .gitignoreを活用する

アクティブなコードベースには、バージョン管理で追跡したくないファイルが含まれていることがよくあります。これらは、残りのオブジェクトファイルやリポジトリのルートディレクトリにある一時的なメモなどです。時間が経つにつれて、これらの不要なファイルは蓄積し、PCのディスクスペースを占有する可能性があります。

これを解決する方法の一つは、Gitリポジトリ内に.gitignoreファイルを作成することです。これは、コミットを作成する際にGitに無視するファイルを指示するファイルです。.gitignoreファイルを作成するには、リポジトリ内で次のコマンドを実行します:

ano ~/YOUR-GIT-REPO/.gitignore

.gitignoreファイル内に除外したいファイルのパスを提供します。私の場合、リポジトリの「temp」ディレクトリ内にあるメモファイルを含めたくありません。

Gitignoreに含めるファイルパス

コードリポジトリに変更をコミットして、ファイルが正しく機能していることを確認します。

gitignoreのためのGitステータスサブコマンドの出力を示すターミナル.

余談ですが: Emacsユーザーですか?MagitポーセリンアプリでEmacsでGitを使用する方法を学びましょう。

4. 簡潔なコミットメッセージを書く

コミットメッセージは、すべてのGitプロジェクトの核心部分です。これにより、あなたが行った変更の詳細が提供され、リポジトリを長期的にナビゲートしやすくなります。ただし、正しく行わないと、コミットメッセージはフラストレーションの原因にもなります。

そのため、Gitを使用する際に身につけるべきもう一つの良い習慣は、コミットメッセージを簡潔にすることです。デフォルトでは、標準的な慣行はメッセージを1行に保ち、50文字未満にすることです。

コミットメッセージの例を示すターミナル.

とはいえ、特定のコミットについて詳しく説明したい場合もあります。その場合、メッセージの行の長さを72文字未満に保つようにしてください。これにより、コミットが小さなターミナルやメールでも読みやすくなります。

5. Gitブランチを活用する

Gitブランチは、同じリポジトリ内でコードベースの複数のバージョンを作成できる素晴らしいツールです。これにより、元のソースのクリーンなコピーを維持しながら新しいコードを開発できます。Gitに不慣れな人にとって、ブランチを作成することは、新しいコードをプログラムに統合するプロセスを効率化するために重要な習慣です。

新しいブランチを作成するには、Gitリポジトリに移動し、次のコマンドを実行します:

git checkout-b my-branch

git statusを実行して「my-branch」ブランチに移動したことを確認し、コードにいくつかの変更を加えます。私の場合、リポジトリ内のテキストファイルを編集します。

git commitを実行して変更を確定し、git checkout masterを実行してメインブランチに戻ります。

新しいブランチで変更したファイルを開いて、修正されたファイルがマスターブランチに表示されないことを確認します。

知っておくと良いこと: セルフホスティングに興味がありますか?今日の最高のセルフホスト可能なGithubの代替案をチェックしてください。

6. コードをマージする前にDiffを確認する

Git自体は、機能開発、テスト、およびコード統合を効率化する大きな利点を提供します。ただし、コードをマージする際には、必ずしも明確ではない場合があります。たとえば、機能ブランチからコードを導入すると、マスターブランチの既存の機能が壊れる可能性があります。

これを避けるために、コードをマージする前に2つのブランチ間の違いを確認する必要があります。Gitでは、diffコマンドを使用してこれを行うことができます。

git diff master..my-branch

Gitリポジトリ内の2つのブランチ間の違いを示すターミナル.

さらに、diffコマンドは同じブランチ内の2つのファイル間の違いを確認することもできます。これは、同じファイルの複数のコピーがあり、それらの間の重要な変更を迅速に確認したい場合に便利です。

それに加えて、ファイルからパッチを作成することもできます。これらは、他の人が自分の変更をGitリポジトリに適用するために使用できる機械可読のテキストの小さな部分です。

Gitのパッチファイルの内容を示すターミナル.

7. Git Pullの代わりにGit Fetchを使用する

コラボレーションに関して、Gitは他の開発者から作業を共有し取得するのを容易にするツールを提供します。たとえば、git pullコマンドは、ローカルシステムのリポジトリの更新を取得して適用することを可能にします。

とはいえ、git pullの欠点の一つは、上流の変更を自動的にローカルコピーに適用することです。これは、機能ブランチで複数の人と作業している場合や、プログラムの問題を追跡している場合に大きな問題です。

これを避けるために、採用すべき良い習慣は、git pullからgit fetchに切り替えることです。これにより、リポジトリの上流から最新の更新を取得するだけで、ローカルコピーにコードをマージすることはありません。

ローカルコードベースにマージせずに上流リポジトリの新しい変更を示すターミナル.

変更をマージするには、git mergeを実行し、統合したいブランチの名前を続けて実行します。

上流からローカルコピーにコードをマージするプロセスを示すターミナル.

これらのGit習慣を学ぶことは、ソフトウェア開発とコラボレーションに焦点を当てたソフトウェアの素晴らしい世界を探求するための第一歩に過ぎません。GithubとGitlabの違いをチェックして、Gitの知識をさらに広げる方法を学びましょう。

画像クレジット:Grok via x.ai。すべての変更とスクリーンショットはRamces Redによるものです。