###はじめに
未来電子テクノロジーでインターンをしているやっきーです。
まだまだ勉強中のため、間違いがあればどんどん指摘してください。
#Git, GitHubとは
Gitは、ファイルのバージョンを管理するツールです。Gitを使うことにより、誰が、いつ、どのような変更を加えたかを簡単にわかるようになります。また、ファイルの状態を元に戻したいときも簡単にすることができます。
GitHubは、インターネット上でデータを共有するためのサービスです。Gitと連携してローカルにあるリポジトリを公開することや、GitHubにあるデータをローカル上で編集することができます。
#GitとGitHubでできること
ここでは、githubのアカウント登録とgitのインストールができている前提で進めていきます。
#用語
リポジトリ...ファイルなどを格納する場所
ローカルリポジトリ...インターネットに接続していないリポジトリ
リモートリポジトリ ...インターネット上にあるリポジトリ
クローン(clone)...リモートリポジトリからローカルリポジトにデータを取り入れること
プッシュ(push)...ローカルリポジトリからリモートリポジトリにデータを送ること
##ローカルリポジトリを作成する
以下のコマンドで、リポジトリを作成します。
$ cd Desktop #デスクトップに移動
$ mkdir sample #sampleというディレクトリを作成
$ cd sample #sampleディレクトリに移動
$ git init #ローカルリポジトリを作成
Initialized empty Git repository in /Users/<ユーザー名>/Desktop/sample/.git/
#このようなメッセージが出ればOK
ここまでで、ローカルリポジトリの作成ができました。
次に、リポジトリにファイルを追加していきましょう。
$ touch test.txt #ファイルを作成
$ touch test2.txt
$ touch test3.txt
$ git add test.txt #test.txtファイルをGitに追加する
$ git add . #ディレクトリ内の全てのファイルをGitに追加する
ここで、正しくGitに登録されているか確認してみましょう。
$ git status #Gitの状態を確認
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: test.txt
new file: test2.txt
new file: test3.txt
これで、ローカルリポジトリを作成できました。
##リモートリポジトリにpushする
まず、github上で新たにリポジトリを作成します。
トップページの左側にあるRepositoriesの"New"からリポジトリを作成します。
その後、リポジトリのURLが表示されるので、コピーします。
次に、ターミナルに以下のコマンドを入力します。
$ git remote add origin <コピーしたURL, httpsから始まるもの>
最後に、作成したファイルをpushして完了です。
$ git push origin master
##ローカルでファイルを更新・リモートにpush
では、コンピュータの中に入っているファイルを編集してリモート上にpushしてみましょう。
$ git add . #ファイルをリモートリポジトリに追加
$ git commit -m "テキストを追加" #変更内容を登録
すると、 2 files changed, 2 insertions(+), 1 deletion(-)
のように変更内容が表示されます。
変更内容をリモートリポジトリに反映させるために以下のコマンドを入力します。
$ git push origin master
githubで確認すると、変更が反映されているかと思います。
##リモートリポジトリの内容をローカルに反映させる
リモート上でファイルを編集、削除した場合、 git pull
で変更内容を反映させることができます。
##リモートからローカルにリポジトリを追加する
リモートにあるリポジトリをローカルにクローンします。
githubのリポジトリの画面を開き、"clone or download"を選択してURLをコピーします。
ターミナルを開き、以下のように入力します。
$ git clone <コピーしたURL>
すると、ローカル上にファイルが作成されているかと思います。
これで、ローカル上でも編集が可能になります。
#参考URL
git cloneで環境構築!リポジトリをクローンしよう | 侍エンジニア塾ブログ(Samurai Blog) - プログラミング入門者向けサイト
GitHub初心者はForkしない方のPull Requestから入門しよう | qnyp blog
【5分でわかる】GitHubとは?概要やメリットを簡単解説! | 侍エンジニア塾ブログ(Samurai Blog) - プログラミング入門者向けサイト