Git単語

41件
ギット
1.3千文字の記事
  • 2
  • 0pt
掲示板へ

Gitとは、バージョン管理システムの1つである。

概要

旧来のバージョン管理システムは中央集権システムだった為、ネットワークの接続を要すること、中央システムに負荷が集中すること等のデメリットがあった。

また、同時に編集することが困難であった。

そこで、Gitは分散バージョン管理システムとして開発された。

仕組み

Gitでは、分散バージョン管理を採用しており、バージョン管理はそれぞれのコンピュータで行えるようになっている。

バージョン管理に関する情報は、.gitと呼ばれるフォルダに格納されている。

Gitは、ファイルに差分が発生した際にハッシュ値と呼ばれるランダムな英数字列が変わる暗号学的ハッシュを利用して、差分が発生した際にバージョン更新を行うことができる。

差分が発生したモノのうち、バージョン更新をしたいものを選択することを「ステージング(Staging)」という。また更新を行うことを「コミット(Commit)」という。

Gitは、更新ファイルハッシュ値を基に .git配下に保存する。Gitは差分を保存すると勘違いされることがあるが、差分ではなく全なファイル(スナップショット)を保存する。

また、Gitの最大の特徴として、開発の枝(ブランチ)を分岐させたり、結合(マージ)させたりすることが較的容易であることが挙げられる。そのため、各々の環境で同時に開発を行い、後でそれぞれの差分を結合させることができる。

なお、リモートへの同期も可である。
同期の際は、差が発生した箇所のみ通信すれば良いため、非常に高速に同期することができる。

これらのシステムにより、手元に全なコピーを持つことができ、オフラインでの作業も可となる。

Gitは、現在多くのアプリケーション開発に用いられている。
多くの人が普段利用しているWindows世界の多くのコンピュータで利用されているLinuxもGitを利用して開発されている。
ニコニコ運営ドワンゴも従来はApache Subversionと呼ばれる中央管理をしていたが、現在はGitも採用されている。

使い方

ローカルのレポジトリを初期化する

git init

ファイルをコミット準備状態にする(ステージング状態にする)

git add [filename]

コミットしてバージョンを上げる

git commit

リモートにあるレポジトリからコピーする

git clone [remote_repository] [local_directory]

リモートにあるレポジトリからコードを反映する

git pull

リモートにあるレポジトリにコードを反映する

git push

作業を分岐するためにブランチを作成する

git branch [branch_name]

ブランチを切り替える

git checkout [branch_name]

別ブランチにあるコードを現在のブランチのコードに反映する

git merge [branch_name]

関連動画

関連商品

関連項目

外部リンク

【スポンサーリンク】

  • 2
  • 0pt
記事編集 編集履歴を閲覧

ニコニ広告で宣伝された記事

ずんだもん (単) 記事と一緒に動画もおすすめ!
提供: 文雄
もっと見る

この記事の掲示板に最近描かれたお絵カキコ

お絵カキコがありません

この記事の掲示板に最近投稿されたピコカキコ

ピコカキコがありません

Git

4 ななしのよっしん
2019/02/12(火) 01:21:43 ID: Jlt3/i6Vqk
慣れますよ
👍
高評価
1
👎
低評価
0
5 ななしのよっしん
2020/05/29(金) 15:33:32 ID: 62TqxsAsJo
高機なのはわかるが、大規模プロジェクトには向かない
大規模プロジェクトに必ずいるはずの「単価の安い下っ端プログラマー」たち全員に使わせてる暇がない
👍
高評価
0
👎
低評価
0
6 ななしのよっしん
2020/05/29(金) 20:18:20 ID: BHFILT3d2D
>>5
ダウト
Linuxカーネルのレポジトリ管理システムGitで、ソースコードに触っている人は累計で2万1000人以上、ソースコードの規模は約2780万行とのこと(2020年1月時点)
2019年だけで4189人ほどがソースコードに触った
これが大規模じゃないならどういうプロジェクトが大規模なんだ?
👍
高評価
1
👎
低評価
0
7 ななしのよっしん
2020/05/29(金) 20:24:25 ID: Zi4gokcoPm
>>6
普通エンプラ案件の方が大規模だな
そもそも自分から参加してる人間と勉強もしない人間では教える労も違うしな
👍
高評価
0
👎
低評価
0
8 ななしのよっしん
2020/10/11(日) 02:16:59 ID: kCb2KdXYv+
>>7
普通案件のほうが大規模という説明はLinuxシステムは大規模でないという明になっていない
結局の所はそれは規模の大小ではなく、レベルが保できないならGitは向かないという話にしかなっていない(この点は大いに同意だが)
👍
高評価
0
👎
低評価
0
9 ななしのよっしん
2020/12/04(金) 04:29:33 ID: DTyIH0bWxL
エンプラってそんな何千何万人もソース触るの?
そもそもgitも使えない人間コードってまともに動くのか?
👍
高評価
0
👎
低評価
0
10 ななしのよっしん
2021/08/20(金) 20:55:21 ID: TJ5xQk2WhE
大規模案件で入れても末端PGには使いこなせないって話から単なる規模の話にすり変わってて笑う
👍
高評価
0
👎
低評価
0
11 ななしのよっしん
2022/02/04(金) 23:52:56 ID: rkSCP3Wr3s
学習コスト高いんだよ…
👍
高評価
0
👎
低評価
0
12 ななしのよっしん
2022/02/13(日) 09:29:41 ID: Y26zR9TwX1
クラサバじゃなくてデータベースクローンだと理解すれば大きく進む
👍
高評価
0
👎
低評価
0
13 ななしのよっしん
2022/08/13(土) 04:39:00 ID: WtizEeabMx
だいぶ前の話だけどgit checkoutはgit swichとgit restoreの2つの機に分かれたね
checkoutの方も相変わらず使えるけどこれから新しくgitに触れる人にはswitchやrestoreの方が取っつきやすいだろうな
👍
高評価
0
👎
低評価
0