Git - 変更を行う

はじめに

こんにちは、未来のプログラマーたち!今日は、Gitのエキサイティングな世界に飛び込み、プロジェクトで変更を行う方法を学びます。あなたの近所の親切なコンピュータサイエンスの先生として、私は明確な説明、豊富な例、そしてたまにジョークも交えて、この旅を案内します。では、仮想のヘルメットをかぶり、Gitのスキルを築いていきましょう!

Git - Perform Changes

Gitの基本を理解する

変更を行う前に、Gitとは何かを簡単に復習しましょう。Gitはあなたのコードのためのタイムマシンです。変更を追跡し、他の人と協力し、プロジェクトの以前のバージョンにさかのぼることもできます。すごいですね?

Gitのワークフロー

Gitでは、通常以下のワークフローをFollowします:

  1. ファイルに変更を加える
  2. 変更をステージングする
  3. 変更をコミットする
  4. リモートリポジトリに変更をプッシュする(リモートリポジトリで作業する場合)

これらの手順を分解して、それぞれどう行うかを見ていきましょう。

ファイルに変更を行う

Gitの旅の最初のステップは、実際にプロジェクトのファイルに変更を加えることです。これは新しいコードを追加すること、既存のコードを修正すること、ファイルを削除することなどが含まれます。簡単な例から始めましょう。

Imagine we have a file called hello.py with the following content:

print("Hello, World!")

Now, let's say we want to make it a bit more personal. We'll change it to:

name = "Alice"
print(f"Hello, {name}!")

Great! We've made our first change. But how does Git know about this change?

リポジトリのステータスを確認する

変更を確認するために、git statusコマンドを使用できます。これはGitに「新しい変更は何か?」と尋ねるようなものです。

git status

You might see something like this:

On branch main
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified:   hello.py

no changes added to commit (use "git add" and/or "git commit -a")

Git is telling us that we've modified hello.py, but we haven't staged these changes yet.

変更をステージングする

変更を行った後は、次のコミットに含めたい変更をGitに伝える必要があります。このプロセスをステージングといいます。

hello.pyの変更をステージングするために、git addコマンドを使用します:

git add hello.py

If we want to stage all changed files at once, we can use:

git add .

Pro tip: The dot (.) means "everything in the current directory."

After staging, if we run git status again, we'll see:

On branch main
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
modified:   hello.py

Great! Our changes are now staged and ready to be committed.

変更をコミットする

コミットは、プロジェクトの特定のポイントでのスナップショットを取るようなものです。これは「このバージョンのプロジェクトを覚えたい」と言うことです。

ステージングされた変更をコミットするために、git commitコマンドを使用します:

git commit -m "Made greeting more personal"

The -m flag allows us to add a commit message directly in the command line. Always try to write clear, descriptive commit messages. Your future self (and your teammates) will thank you!

コミット履歴を表示する

すべてのコミットを確認したい場合は、git logコマンドを使用します:

git log

This will show you a list of commits, starting with the most recent:

commit 1234567890abcdef1234567890abcdef12345678 (HEAD -> main)
Author: Your Name <[email protected]>
Date:   Mon Jun 12 10:00:00 2023 +0000

Made greeting more personal

commit abcdef1234567890abcdef1234567890abcdef12
Author: Your Name <[email protected]>
Date:   Sun Jun 11 09:00:00 2023 +0000

Initial commit

変更をプッシュする(リモートリポジトリの場合)

リモートリポジトリ(例えばGitHub)で作業する場合、変更を他の人と共有するためにgit pushを使用します:

git push origin main

This pushes your commits to the 'main' branch of the 'origin' remote repository.

よく使うGitコマンド

以下に、今までカバーしたGitコマンドの便利な表を示します:

コマンド 説明
git status リポジトリのステータスを確認
git add <file> 特定のファイルの変更をステージング
git add . すべての変更をステージング
git commit -m "message" ステージングされた変更をコミット
git log コミット履歴を表示
git push origin <branch> コミットをリモートリポジトリにプッシュ

結論

そして、みなさん!Gitで変更を行う基本的な方法を学びました。練習すれば完璧になります。実験を恐れず、間違えを恐れずに – それが学びの過程です!

私が教師としての年月を振り返ると、Gitの初心者からバージョンコントロールの達人に成長した生徒たちを見てきました。私の好きな瞬間の一つは、生徒が叫んだ「Gitはビデオゲームのセーブポイントのように、コードのためのものである!」でした。そして、それは完全に正しい!

それでは、変更を加え、頻繁にコミットし、あなたのコードが初回でコンパイルされることを祈ります(でも、コンパイルされない場合も、デバッグのためのものです)。

ハッピーコーディング、次のレッスンではさらにGitの魔法を探求します!

Credits: Image by storyset