6
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

はじめてのGitとGitHub

Last updated at Posted at 2017-10-21

はじめてのGitとGitHub

GOAL

gitを理解した上で、gitを用いてソースコードをGitHubにアップ出来るようになる。

Section1

1. Gitとは何か、Gitで出来ること。

Gitはバージョン管理システム
ファイルのバージョンを管理出来る
あなたのパソコンこんな感じでファイル管理されてませんか。。?
スクリーンショット 2017-10-21 16.08.00.png
また複数人で編集すると、いつ誰が編集したかわからなくなってしまう。

バージョン管理することで、いつ誰がどのファイルを変更したのかが把握出来る。
また、元に戻すことも出来る。

2. Gitの仕組み

いつ誰が何を変更したのかが把握でき、メッセージをつけられる。
・変更履歴を順々に記録出来る。
・記録する際はメッセージをつけられる。
スクリーンショット 2017-10-21 16.12.09.png

流れ

コミット:自分のファイルの変更を記録する
push:pushして共有リポジトリに変更を登録
pull:変更されたファイルを取得(落としてくる)
スクリーンショット 2017-10-21 16.15.24.png

3. GitHubの仕組み

・gitリポジトリのホスティングサービス
・変更履歴をオンライン上で預かってくれるもの
・Gitで管理されているファイルを見やすくweb上で見れるツール
・コードを保管してくれる

特徴

・プルリクエスト
コードの修正の取り込みをリクエスト出来る
また、修正依頼やコードレビューなども出来る

Section2

1. Gitのインストール

※macにはデフォルトでGitが入っている

ターミナルを開いてGitが入っているかを確認する
確認コマンド
[~] git version
スクリーンショット 2017-10-21 16.56.49.png

:warning:私の場合なぜかエラー

[~] git version                                                       
Agreeing to the Xcode/iOS license requires admin privileges, please run “sudo xcodebuild -license” and then retry this command.

↑下記記事参考にして使えるように
https://4to.pics/article/post/83

[~] git version                                                                                                                                    
git version 2.13.5 (Apple Git-94)
スクリーンショット 2017-10-22 8.40.07.png

インストールは下記のリンクから
https://git-scm.com/downloads

2. GitHunの登録

3. Gitの初期設定

さっきGithubに登録したアカウントを登録する
・ユーザー名を登録

git config --global user.name *****

・メールアドレスを登録

git config --global user.email *****@gmail.com

Section3

1. GitとGitHubでバージョン管理する

①バージョン管理するファイルを作成
今回はデスクトップにファイルを作成
スクリーンショット 2017-10-22 9.10.13.png

作成したファイルの中に、テキストファイルを作成
中身はなんでもOK
スクリーンショット 2017-10-22 9.12.11.png
スクリーンショット 2017-10-22 9.12.54.png
このファイルをバージョン管理する!

②Gitリポジトリを作成
リポジトリとはファイルやディレクトリの状態、変更履歴を記録する場所。
作成コマンド

git init

上記のコマンドで何が行われているかというと。。
git initで.gitディレクトリが作成され、管理ファイルが作成され、そこで変更履歴が保存されている。
スクリーンショット 2017-10-22 9.07.16.png

実際に作成してみる

[~] pwd                                                                                                                                             8:53:47  ☁  master ☂ ✭
/Users/hatamiki
[~] cd Desktop                                                                                                                                      9:13:52  ☁  master ☂ ✭
[Desktop] cd intro_git                                                                                                                              9:14:06  ☁  master ☂ ✭
[intro_git] ls                                                                                                                                      9:14:21  ☁  master ☂ ✭
first.txt
[intro_git] git init                                                                                                                                9:14:28  ☁  master ☂ ✭
Initialized empty Git repository in /Users/hatamiki/Desktop/intro_git/.git/
[intro_git] ls -a                                                                                                                                   9:14:39  ☁  master ☂ ✭
.         ..        .git      first.txt
[intro_git] ls -a .git                                                                                                                              9:14:49  ☁  master ☂ ✭
.           ..          HEAD        branches    config      description hooks       info        objects     refs

2. Gitの基本的なワークフロー

①ファイルの変更をステージングエリアへ追加
ステージングエリアとはコミット前の控え室
②ローカルリポジトリにコミット
スクリーンショット 2017-10-22 15.49.58.png

[intro_git] git add first.txt  
//addでステージングエリアへ登録                                                                                                                    15:52:47  ☁  master ☂ ✭
[intro_git] git status first.txt 
//現在のステータス確認。ここで緑色になって入れば、ステージングエリア登録完了している                                                                                                                  15:53:01  ☁  master ☂ ✚
On branch master

Initial commit

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

	new file:   first.txt
[intro_git] git commit first.txt 
//コミットしてローカルリポジトリに追加                                                                                                                  15:54:56  ☁  master ☂ ✚
[master (root-commit) a2b2ff4] by haneda first commit
 1 file changed, 2 insertions(+)
 create mode 100644 first.txt
スクリーンショット 2017-10-22 15.58.23.png

③リモートリポジトリにpushして追加
コミットできたら、GitHubへpushしていく。

GitHubを開いて、右上のプラスボタンからNew repositoryでリポジトリを作成

repository nameをintro_git
状態はpublic
create repository
で作成!
リポジトリが作成されたら、下記のコマンド実行してpush

[intro_git] git remote add origin https://github.com/hanedamiki/intro_git.git                                                                       
[intro_git] git push -u origin master

:warning:私の場合だとなぜかアカウント入力してと言われる。。
下記のURL参考に解決!
https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/
http://nanase.hatenablog.jp/entry/2013/09/09/232529

3. 修正したファイルをローカルリポジトリに追加する

git add でファイルをステージングエリアへ追加
git commitでローカルリポジトリへ追加
スクリーンショット 2017-10-22 19.01.48.png

ステージングエリアは変更したファイルを選ぶエリア
ローカルエリアへの準備 控え室のようなもの

コミットする際にはメモ出来る
変更内容をメモする
git commit -v は修正された差分が記載される
スクリーンショット 2017-10-22 19.09.05.png

4. 色々な変更をコミット

新規作成、削除、複数ファイルのコミット

新しいファイルを作成
スクリーンショット 2017-10-23 11.01.55.png
git status で確認してみると赤色になって、ファイルが新しく作成されている表示になっている
スクリーンショット 2017-10-23 11.02.46.png

5. フィイルの変更履歴を確認

変更履歴を確認

git log
スクリーンショット 2017-10-23 11.34.20.png

オプション
一行で表示する

git log --oneline

ファイルの差分を表示する

git log -P first.txt

最新3件の変更を表示

git log -n 3

6. フィイルの変更差分を確認

ローカルとステージングの差分

git diff

ステージングと最新コミットの差分

git diff HEAD

commitするとHEADで差分見てもなくなる

6. バージョン管理したくないファイルの登録

どういったファイル?
・自動生成されるファイル
・パスワードが記載されているファイル

.gitignoreに記載していく

git rm --cached second.txt

バージョン管理に戻す

git reset HEAD second.txt
6
9
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
6
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?