1
6

初心者のためのGitとGitHub入門

Last updated at Posted at 2023-12-13

はじめに

今回はGitについて学習の備忘録として作成しました。

Gitとは

分散型バージョン管理システムの一つで、Linuxのソースコードを効果的に管理するために開発されたものです。
以下のものはとても詳しく説明してくれてますので、ぜひ読んでみましょう。
・さる先生のGit入門 〜バージョン管理を使いこなそう〜

Gitの良さ

  1. 変更履歴を順々に記録し、バージョンの差を確認できる
  2. 複数の並行するバージョンを扱うことができる
  3. どんなものも入れられる(Excelファイルや画像も可能)
  4. チームで共有できる

バージョンを管理することでいつ・誰が・何を変更したかがわかる+ファイルの最新の状態がわかる!

Git用語

リポジトリ:変更履歴を記録する場所
commit:個人リポジトリに変更履歴を記載
push:共有リポジトリに変更を共有

・個人での作業での流れ
自分のパソコンでファイルを変更しコミットで記録する→共有リポジトリに pushで登録する

pull:共有リポジトリの情報を同期

GitHub

Gitリポジトリのホスティングサービス(変更履歴をオンライン上で扱う)
ソーシャルコーディングの場

GitHubの良さ

  1. プルリクエストによるコラボレーション
  2. 他チームのソフトウェアが見れる

Gitリポジトリのホスティングサービス

代表的なものにBitbucketというものがある

GitHub Bitbucket
非公開リポジトリ 有料 無料
公開リポジトリ 無料 無料

Bitbucketは人数の制限がありチームで開発しようとすると有料になる
個人や2〜3人だと無料に

ローカルリポジトリの作成

コマンドでリポジトリの作成→.gitディレクトリが作成される

$ git init

基本的なフローワーク

  1. ファイルの変更をステージングエリアへ追加する
  2. ローカルリポジトリにコミットする
  3. リモートリポジトリにプッシュする

ステージングエリア

複数ファイルを変更したときに、コミットするファイルを選択するためにあるもの

・個別のファイル
$ git add [ファイル名]
・まとめて
$ git add.

リポジトリに変更を記録する

変更にメッセージをつけてリポジトリに記録するのがコミット
コミットすることで変更がリポジトリ内に時系列で記録される

$git commit

コミットは一つの作業ごとに実施する!

わかりやすいコミットメッセージ

他のメンバーが分かりやすいように書くことが大切

1行目:変更内容の要約
2行目:空行
3行目:変更した理由

色々なコミット

コミットは以下の理由で活用できる

  • 新規作成
  • ファイルの削除
  • 複数ファイルの変更

はじめに覚えるGitコマンド

コマンド 操作
git init リポジトリを新規に作る
git add foo ファイルfooをステージする
git commit-m "msg" メッセージ"msg"をつけてコミットする
git log コミット履歴を見る
git status 現在の状況を表示する
git deff コミットA コミットB

git statusコマンド

gitリポジトリの状況を確認する

$git status

git statusコマンドで現在の状況を確認しながら作業を進めていく

git logコマンド

リポジトリにコミットされたログを確認する

$git log

オプション

  • 一行で表示する
$git log --oneline
  • ファイルの差分を表示する
$git log -p index.html

git diffコマンド

ファイルの差分を確認するコマンド

$git diff

add,commitする前に確認しよう!

ステージとコミットの差分

$git deff HEAD

リモートリポジトリ(Git Hub)に登録

git remote addコマンド

ローカルリポジトリをリモートリポジトリに登録できる

$git remote add origin https://github.com/user/repo.git 

git pushコマンド

ローカルリポジトリの内容をリモートリポジトリへ送信する

$git push origin master

master以外のブランチへ送信

$git push origin feature

gitで管理しないファイル

git ignoreファイルに指定することでファイルをgitの管理から外す

以下のものはGitで管理しない

  • 自動生成されるファイル
  • パスワードが記載されるファイル

書き方

  1. #から始まる行はコメント
  2. 指定したファイルを削除 index.HTML
  3. ルートディレクトリを指定/root.html
  4. ディレクトリ以下を除外  dir/

コミットしてしまったファイルを管理から外す

git rmコマンド

コミットしたファイルをGitの管理から削除する

  • ファイルも一緒に削除する
$git rm[ファイル名]
  • ディレクトリも一緒に削除する
$git rm -r[ディレクトリ名]
  • ファイルは残すがGitの管理を外す
$git rm --cashed [ファイル名]

git ignoreに追記する

ブランチ:履歴の流れを分岐して記録していくためのもの。分岐したブランチは他のブランチの影響を受けないため、同じリポジトリ中で複数の変更を同時に進めていくことができる。
(マージ)することで、一つのブランチにまとめ直すこともできる
ワークツリー:現在作業中のディレクトリ

インデックス

  • コミットのステージング領域
  • git commitのコミット対象
  • git addは変更をインデックスに登録する

git commit:追加・変更したファイルをGitに登録するためのコマンド

Gitのリポジトリに変更内容を登録(保存)するためには、git commitを使用する必要がある

おわりに

Gitについてまとめてみました。
Gitは初心者のうちはイメージが付きにくいですが、使っていくうちに操作に慣れてくると思います。
間違った操作をしてしまっても、解決方法の解説がたくさんあるので落ち着いて取り組んでみてください!!

参考

・さる先生のGit入門 〜バージョン管理を使いこなそう〜

1
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
6