#はじめに
Gitを扱う上での知識を整理しておきたいと思います。
#参考情報
- Git/gitlabで共同作業をするための最小限の知識
https://doss.eidos.ic.i.u-tokyo.ac.jp/html/git.html - Git用語集
https://qiita.com/toshi_um/items/72c9d929a600323b2e77 - サルでもわかるGit入門
https://backlog.com/ja/git-tutorial/intro/01/ - 独習Git
https://www.amazon.co.jp/dp/4798144614
#特徴
##バージョン管理システムの特徴
- バージョニング(改版)
- オーディティング(監査)
- ブランチング(分岐)
##Gitの特徴
- 分散されたリポジトリ
- 素早いブランチ
- ステージングエリア
#GitLabのユーザ権限
- Guest
- Reporter
- Developer
- Master
- Owner
###権限範囲
Guest < Reporter < Developer < Master
詳しくは以下参照。
https://qiita.com/mats16/items/f11e2e25731c325eeda8
各項目を入力する。
項目 | 概要 |
---|---|
Project name | プロジェクト名 |
Project URL | 参加しているグループ、または個人ユーザーから選択する。 |
Project Slug | Project name を入力すると自動設定される。 任意に変更できるようだ。 |
Project description(optional) | プロジェクト詳細を書く。入力は任意。 |
Visible Level | Private : 一般公開しない。または権限を与えられたユーザのみ利用可能とする。 Public : 一般公開する。 |
Initialize repository with a README | プロジェクト作成時にREADMEを作成するかどうか。 別プロジェクトからインポートする場合はチェック不要。 |
Create Project | 各入力が完了したらプロジェクトを作成する。 |
##その他のプロジェクト作成方法
作成ページのタブで選択可能。
- 空のプロジェクト作成
- テンプレートからの作成
- 他プロジェクトからのインポート
- CI/CDのみ利用
メニュー | 概要 |
---|---|
Project overview | プロジェクトの概要、詳細、アクティビティなどを確認できる。 |
Issues | バグ、タスク、アイデアなどの共有を行う。 |
Merge Requests | 開発中のブランチを本流のブランチにマージしたいときに使う。 Github では Pull Requestに該当する。 |
CI/CD | メニュー:Pipelines, Jobs, Schedules, Charts ビルド、デプロイ等を行うパイプラインを組むことが出来る。 |
Operations | メニュー:Metrics, Enviroments, Error Tracing |
Packages | メニュー:Container Registry |
Wiki | Wiki機能。 |
Snippets | Snippetsの管理機能。 コードの切れ端(一部)を再利用できるように登録しておく。 public, internal, private のスコープ設定ができる。 |
Settings | 各種設定 |
#ローカルモジュールをGitに登録
ローカルのモジュールを全てまとめて登録する方法。
リポジトリはあらかじめWebGUIで登録してある前提。
git clone https://github.com/user/hoge.git
cd hoge
git add *
git commit -m "コメント"
git push -u origin master
項目 | 概要 |
---|---|
Title | タイトル |
Description | バグ等の詳細。 |
「This issue is confidential and should only be visible to team members with at least Reporter access.」 | 機密事項の場合にチェック。 |
Assignee | 担当者を選択する。 |
Milestone | |
Labels | |
Due date | 期限日。 |
Submit issue | 登録。 |
##Windows版Gitでの認証情報
- Windows資格情報で管理される。
- https://cpoint-lab.co.jp/article/201804/2137/
#ユーザー名設定&確認
$ git config --global user.name "Hoge"
$ git config --global user.name
Hoge
#メールアドレス設定&確認
$ git config --global user.email "hoge123@hoge.hoge"
$ git config --global user.email
hoge123@hoge.hoge
#clone方法
- 2つの方法(https経由、SSH経由)がある。
- 別の方法でcloneしなおすにはリモートリポジトリの変更処理が必要。面倒なのではじめからどちらかに統一しておいた方が良い。
- SSH経由の場合は、SSHキーの登録が必要
git clone <リポジトリURL>
###SSHのキー登録がない場合
以下の警告が出ることがある。
###cloneはHTTP、SSHのどちらがよいのか。
- 冒頭の参考サイトではSSH推奨。
- GitHubではHTTPS推奨(https://teratail.com/questions/21345)
- SSHが無難という意見もある(https://qiita.com/chroju/items/67da13c672efcd2bc787)
- 結論:実運用の際に利便性を考慮して決めればよい。(のだと思う)