0
0

Gitを雑に理解する

Posted at

雑な認識なので正確でない内容を含みます

GitHubとは

Gitの内容をオンラインで公開/共有できるwebアプリ

Gitとは

ソースコードに対し「いつ」「誰が」「どの部分を」編集したか
いわゆるバージョン管理をするためのツール

利用者はエンジニアのみでなく、
文章を書く人や、会社によっては事務にも導入されているらしい

単語

リポジトリ

データを保存しているフォルダのようなもの
バージョン管理などの意味合いが含まれる

ローカルリポジトリ -> 手元のパソコンのリポジトリ
リモートリポジトリ -> GitHub上のリポジトリ

ブランチ

複数人で同じプロジェクトに関わる上で、全員が本体を編集すると
同じ箇所の編集であったり、間違えたときのバージョン巻き戻しなどが大変になる

なので、枝分かれさせた小さなバージョンを作り、それが問題なく動いたら本体に合流させる

マージ

ブランチを合流させる動作のこと

コマンド

sourcetreeなどgitをGUIで操作できるツールは色々あるので覚えなくてもいい

git init

リモートリポジトリが存在しないプロジェクトを一から立ち上げた場合
「ここをこのプロジェクトのローカルリポジトリとする」宣言

git clone

リモートリポジトリが存在するプロジェクトを文字通りclone(複製)して
ローカルリポジトリを作成するために使う

git add

変更した内容を認識(ステージ)させるためのコマンド
個人開発なら大体 -A オプションをつけて全部ステージさせても問題ない

git commit

変更して保存しただけではバージョンとして処理されない
commitすることで初めて一連の変更が新しいバージョンとして処理される

-m オプションでコミットメッセージを直接付与できる
コマンドプロンプトでコミットメッセージをつけなかった場合vimが立ち上がる
いつもの画面から変わる上、:qなどのコマンドを要求されるので初見詰みポイント

git push

ローカルでcommitした内容をリモートに共有する

git status

今のワーキングディレクトリの状態を確認
・どのブランチを編集しているか
・変更されたファイル
・ステージされているファイル
等の情報を確認できる

git branch

ローカルリポジトリに存在するブランチの一覧表示

git branch [new-branch]

新しいブランチの作成

git checkout [branch-name]

指定したブランチに切り替える
checkoutせずブランチをmainのまま編集には気を付けよう

git checkout -b [new-branch-name]
で新しいブランチを作成し、そのブランチに切り替えることができる

git merge [branch-name]

指定したブランチを現在のブランチにマージする

その他

git rebaseは基本的に使わない方がいいらしい

バージョンの巻き戻しはrestore

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