僕の世界観を変えてみる

文系男子が趣味でプログラミングを勉強していくブログです。他にも日常で起きたどうでもいいことや愚痴を書いていきたいです。座右の銘は和を以て貴しとなすです。仲良くやろうよ。

趣味でプログラミングやってる者だけどGitの便利さを知ってしまった

f:id:htmllifehack:20200618002516j:plain
title

今まで食わず嫌いのようにGitを遠ざけていました。

と言うのも、使わなくても完結していたからです。

IT系の企業であればGitは必ず使用していますし、求人にも経験の欄にGitが記載されるくらい必須な技術と言えます。

なので僕も今更ですがGitを勉強してみました。

Gitとは

Gitとはプログラムのコードを記録する管理システムです。

僕の解釈で言いなおします。

自分のパソコンで書いたコードをGItと言うシステムを使用してGithubと言うオンライン上に保存することができます。

コードの書き直しをしたときはGithub上のデータを更新することもできますし、コピーを作ることもできます。

万が一、コードを消してしまった場合でもGithubから元のデータをダウンロードすることもできるんです。

しかも複数人で編集することも可能ですし、世界中の人に作ったプログラムを配布することもできるんです。

Gitがなんなのかがわかれば使うメリットに気付きますよね。

Gitの使い方

Gitを使うにはまずGithubのアカウントを作る必要があります。

github.co.jp

アカウントの作り方やGitの使い方はprogateが一番わかりやすいです。

下記のリンクはMacでの設定方法かもしれませんが、アカウントの作り方やGitの使い方は一緒なので参考にどうぞ。

prog-8.com

Gitの用語がわからない

Gitにはたくさんの専門用語が出てきます。

コミットするとかブランチしてプッシュするとか。

もう何がなんやら。

ですが、Gitの手順を踏んで行けば大体わかるはずです。

と言うわけで全体の流れを記載しておきます。

Gitの流れ

  1. Github上でコードを保管するフォルダを作成
  2. ローカルで作業するフォルダを作成
  3. ターミナルを開き2の場所へ移動する
  4. Gitの初期設定(name, email, リモートリポジトリの登録など)をする。
  5. Gitの初期化をする。(この時、Gitの隠しファイルが作成される)
  6. アップロードしたいファイルをGitの隠しファイルに追加する。
  7. 何を記載したコードなのかあとでわかるようにコメントをつける。
  8. 1で作成したGithubのフォルダにアップロードする。

こんな感じが大まかな流れです。

次に詳細を追っていきます。

1. Github上でコードを保管するフォルダを作成

Github上のコードを保管するフォルダのことをリモートリポジトリと呼びます。

リポジトリはGithubページ右上にある+マークを押すしてNew repositoryするか、トップページの左側にあるショッピングモールでよく見かけるトイレットペーパーを2段で設置できるやつのマークを押すと作成できます。

f:id:htmllifehack:20200614090639p:plain
リポジトリ
f:id:htmllifehack:20200614090658p:plain
リポジトリ

repository nameは好きなもので結構です。

リモートリポジトリにはpublicとprivateの2種類があり、パブリックはアップロードしたコードの内容がGithub上で公開され、プライベートは非公開になります。

好きなものを選択してcreateボタンを押しましょう。

何やらコードが書かれた画面が表示されると思いますが、この画面はあとで使うので閉じないでください。

2. ローカルで作業するフォルダを作成

例えばUsers/owner/Documents/workspace/js など好きな場所に作業フォルダを作成します。

書いたコードはここに保存していきます。

CUIで作成してもいいですし、GUIで作成してもいいです。

% mkdir workspace >> フォルダの作成
% touch sample.js >> 空のファイルを作成

3. ターミナルを開き2の場所へ移動する

Gitはターミナルからいじるので、ターミナルで2で作ったフォルダに移動してください。

移動の時はcdコマンドを使います。

change directoryの略です。

% cd workspace

4. Gitの初期設定(name, email, リモートリポジトリの登録など)をする。

ターミナルでGitを使う人の名前とメールアドレス を入力します。

% git config --global user.name eco

% git config --global user.email testmailaccount@example.com

誰がコメントしたのかわかるように名前を付けます。

5. Gitの初期化をする。(この時、Gitの隠しファイルが作成される)

さて、現在ターミナル上では作業フォルダ(2で作成したフォルダ)にいると思います。

そこで下記のコマンドを実行します。

% git init

initinitializeの略で初期化すると言う意味です。

git initを行うと.gitと言う隠しフォルダが作成されます。

これをローカルリポジトリと呼びます。

初期化したあとはリモートリポジトリの登録を行います。

1で作成したGithubの画面を再度開きます。

以下のような画面が表示されていると思うので赤枠のところのurlをコピーし、下のコマンドのURLと置き換えてください。

f:id:htmllifehack:20200616095613p:plain
git remote add

% git remote add origin https://github.com/***/***.git

6. アップロードしたいファイルをGitの隠しファイルに追加する。

例えば、get_asin.jsと言うJavaScriptファイルを作成しこれをGithubにアップロードしたいとします。

その時は

% git add get_asin.js

のように記述します。

この時点ではまだアップロードはされていません。

7. 何を記載したコードなのかあとでわかるようにコメントをつける。

次はコメントを付けます。

% git commit -m "初めてのGit"

こうすることで変更した内容が後々でわかるようにしておきます。

8. 1で作成したGithubのフォルダにアップロードする。

最後にアップロードです。

% git push origin master

pushでアップロードします。

originはリモートリポジトリの場所を表しています。

masterはデフォルトのブランチを表しています。

ブランチとは、枝です。

Githubにはブランチと呼ばれる分岐を作ることができます。

masterと言うメインのコードがあり、例えば試しに追加したいコードがあったとします。

これをメインのコードに書いて上書きするよりも、コピーを作ってそちらにコードを追加した方がもしうまいこといかなかったときのことを考えると良さそうです。

このコピーをブランチと呼びます。

あのときああしていれば、と言うパラレルワールドのようなものですね。

初回はpush時にIDとパスワードの入力を求められます。

Githubを作成したときの物を入力すれば大丈夫です。

何はともあれこれでGitの大まかな流れは終了です。

9. Github上のデータをダウンロードする

Githubは複数人でのコード管理を行うことができます。

例えば、他の人がリモートリポジトリにpushしたとします。

自分のローカルリポジトリは更新されていないのでpullを使ってリモートリポジトリと同じ状態にしてあげる必要があります。

そこで使うコマンドが

% git pull origin master

これで差分をダウンロードし自分のリポジトリを更新することができます。

clone と pull の違い

Gitには有名なcloneコマンドがあります。

よく公開されたライブラリを自分のPCにインストールするときに使うコマンドです。

% git clone https://github.com/***/***.git

ココの*はライブラリを公開している人のリモートリポジトリのURLです。

cloneの場合は差分の更新ではなく、リモートリポジトリを自分のPC内に丸ごと複製するコマンドです。

僕もGit初心者なので、複数人で管理することもないですし、まだブランチを作ったこともないので最初はcloneを使っていればいいと思います。

Gitの困った

remote: Invalid username or password

pushの時にusernameかpasswordが間違っていると警告が出ました。

最悪わからなかったらパスワードの変更です。

https://github.com/settings/security

ココからパスワードの変更が可能です。

I forgot my password から変更をしましょう。

あるいはリモートリポジトリの再登録を行います。

% git remote -v

このコマンドで現在登録されているリモートリポジトリの確認が取れます。

間違えていなくても再設定することでpushできたりします。

再設定は下記のコマンドで可能です。

% git remote set-url origin https://github.com/***/***.git

まとめ

gitを少しだけ体験して、とても便利な機能だなと感じました。

まだまだ使っていないコマンドもありますが徐々に勉強していこうと思います。

やる気はあるんだけど、体力が追いつかない。

運動でも始めようかなー