0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Git ~とりあえず抑えておきたい操作~

Last updated at Posted at 2025-10-10

Gitでバージョン管理をしようと操作方法などを調べるわけですが奥が深く果てしないので、「個人的にこれだけは」に絞って残しておく。

ここでは以下のことができるようにメモを残す。
・Gitのセットアップ
・ローカルPC⇔Gitのデータやり取り(バージョン更新)
・ブランチ操作
・マージ
・マージ取り消し

※GitLabを使うので細かい点でGitHubと相違の可能性有り


Gitセットアップ

windowsを使う方は以下のサイトでコマンドラインからGit操作ができるようにする
以外の方は、SSH設定から。

SSHの設定を行う(↓過去の記事)

ここまでで、プロジェクトのクローン、変更後のpushやpullができるようになります
バーション管理が目的なので、コミット時のコメントは重要な要素になります。確実に残しましょう。


通常作業をやってみる

ここでいう通常作業とは、作業用にブランチを切ってから作業し良ければメインブランチにマージすることとします。

先に3つの用語だけ抑えておく

ローカルリポジトリ・・・自分のパソコンの作業用Git
リモートリポジトリ・・・チームで共有するサーバ上のGit(GitLabやGitHub)
ブランチ・・・木の枝をイメージ。「ブランチを切る」ことで、メインの流れから別の流れ(新機能や編集)を作り作業する。

ピンとこなくても、作業していく中で解像度上がっていきます


・リモートリポジトリにプロジェクトを作成

何かしらのグループ内でのプロジェクト作成ボタン
Screenshot from 2025-10-10 10-46-42.png

個人用で作成するときのプロジェクト作成ボタン
Screenshot from 2025-10-10 10-51-06.png

Create blank projectから作成へ進む
Screenshot from 2025-10-10 10-52-33.png

プロジェクト名を入力して作成する
Screenshot from 2025-10-10 11-02-03.png
プライベート公開、README作成だと上記のチェックになる


・クローン

クローンのやり方詳細は添付記事(SSHの設定)にあるので省略

git clone リンク

クローンができたら、ターミナル上の作業フォルダを対象フォルダに移動しとく
今回は「test」プロジェクト

# フォルダ移動
cd test 
# 中身確認
ls
"""出力
README.md
"""

・1回目の編集(新規作成) ~main.pyの作成~

何かしらでファイルを作成しプログラムを書く。
これを1回目の編集とします。
編集というよりまだ新規作成に近い気もします。

実際には、既存のプログラムをいれるだけなこともあると思います。

今回作成したプログラムの中身は「1回目の編集」と出力するものです。

touch main.py # ファイル作成
nano main.py # 編集
python3 main.py # 起動
"""出力
1回目の編集
"""

ls
"""出力
main.py  README.md
"""

・リモートリポジトリにPush

git add . # カレントディレクトリの全ての変更点をステージングエリアへ
git commit -m "1回目の編集-20250101-name"
git push origin main

現状把握のため、以下コマンドで都度状態確認をする癖をつけてもいいかも。

git status

GitLabを見ると以下のように更新されてます
Screenshot from 2025-10-10 11-23-59.png
main.pyは、さきほどのコミットコメントが反映されてます
READMEは、変更点を加えていないためコメントに変化はありません


・2回目以降の編集

ここからは紛れもなく編集フェーズです

編集する前に、リモートリポジトリをローカルリポジトリに反映させます。
(mainブランチを最新にする)

git pull origin main

ブランチを切る

# ブランチの作成と切り替えを同時に行うコマンド
git checkout -b test_branch
# 作業ブランチの確認
git branch
"""出力
  main
* test_branch
"""
# * = 作業ブランチ

test_branchで編集を行う
今回はmain.pyに出力を追加します

python3 main.py
"""出力
1回目の編集
2回目の編集 #追加
"""

test_branchをリモートリポジトリに反映させる

git add .
git commit -m "2回目の編集"
git push origin test_branch

GitLabでブランチを確認してみる
Screenshot from 2025-10-10 11-54-34.png
「main ↓」ボタンをクリックするとブランチを確認できる。クリックすることで、リモートリポジトリ上でブランチを切り替えられる。


・マージリクエストを送る

ブランチをpushすると下記画面のように「Create merge request」ボタン出現するのでこれを押す
Screenshot from 2025-10-10 13-44-28.png

もしくは、

左タブの「Merge requests」を選択し、
Screenshot from 2025-10-10 13-46-20.png

「New merge requests」を押す
Screenshot from 2025-10-10 13-47-20.png

ソースブランチとターゲットブランチを選択する。今回は「test_branch」を「main」にマージするので以下の様に設定。
「Compare branches and continue」でリクエスト内容の入力に進む。
Screenshot from 2025-10-10 13-51-05.png

それぞれ記入して「Create merge request」
Screenshot from 2025-10-10 15-26-23.png

承認者は左タブ「Merge requests」→「Merge」で承認する
Screenshot from 2025-10-10 15-29-49.png

ローカルリポジトリのtest_branch削除

git branch -d test_branch

マージを取り消す

マージしたあとに戻したくなっときは以下。

「History」
Screenshot from 2025-10-10 15-50-58.png

コミットやマージの履歴が閲覧できる。対象のマージを見つけ、右の「Copy commit SHA」でSHAをコピーする
Screenshot from 2025-10-10 15-53-04.png

ターミナルで以下を実行する

git revert -m 1 コピーしたSHA

このときターミナルでファイルが開く。コミットコメントを編集し保存して閉じる。

これでマージ前の状態に戻るので、良ければリモートリポジトリへPushする。

以降メモ

・ローカルのブランチ確認

git branch

・ブランチを切る

git branch ブランチ名

・作業ブランチの切り替え

git checkout ブランチ名

・ブランチを作成し切り替えまで行う

git checkout -b ブランチ名

・作業ブランチの作業状態確認

git status

・変更箇所の確認(add未実施_StagingAreaとの差)

git diff

・コミット履歴

git log

・過去のコミットに戻る

git checkout コミット名

※コミット名とは

git log の出力は以下のようになる
"""
commit 99e82b12d0aaa4f73143bfdf3027831ff0351fab
Author: name <email>
Date:   Tue Oct 7 14:27:09 2025 +0900

    test2

commit 5ccdb295d8cb9a5049335361468b34165af2d2e2
Author: name <email>
Date:   Tue Oct 7 14:15:52 2025 +0900

    test
"""

この時コミット名は以下2つ
99e82b12d0aaa4f73143bfdf3027831ff0351fab
5ccdb295d8cb9a5049335361468b34165af2d2e2

・最新コミットに戻る

git checkout ブランチ名

・リモートリポジトリのブランチ削除

git push --delete origin ブランチ名

・ローカルリポジトリのブランチ削除

git branch -D ブランチ名

・ブランチを指定してクローンする

git clone -b ブランチ名 アドレス

・過去のコミットに戻してそれを最新コミットとする

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?