1
0

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 1 year has passed since last update.

Webの勉強はじめてみた その17~Git編①~

Posted at

N予備校「プログラミング入門Webアプリ」を受講しています。
今回は第2章14,15節です。

git と GitHub

:::note git : バージョン管理を行うソフトウェア github : gitを利用したWebサービス :::

gitのインストール

``` sudo apt update sudo apt install git ``` apt(パッケージマネージャ)をアップデートしてgitをインストール

SSHでGitHubと通信

:::note パスワード認証 : ユーザー名とパスワードでの認証 公開鍵認証 : ユーザー名と公開鍵で認証 :::

今回は公開鍵認証。

秘密鍵と公開鍵の生成
ssh-keygen

.sshディレクトリに秘密鍵id_rsa、公開鍵id_rsa_pubが作られるので、公開鍵をcatしてgithubに登録する。

公開鍵と秘密鍵

:::note 秘密鍵(自分だけが持っている) 公開鍵(配布用の鍵、南京錠の錠前。秘密鍵でだけ開けられる錠前) :::

相手と通信する際に、相手は公開鍵を使って情報を暗号化(鍵を閉める)、
受け取る自分は秘密鍵を使って情報を復号(鍵を開ける)。
⇒秘密鍵がわからなくても公開鍵の鍵を閉めることはできる。

イメージはなんとなくわかった気がしてるだけかもしれない。

clone

clone : GitHubのリポジトリからローカルにデータをもってくる

内部的にはGitHub上のforkと同じ動きをしているらしい。

GitHubからSSH接続用のURLをコピーしてくる

git clone git@github.com:GitHubアカウント名/ファイル名.git

pull

GitHubから最新データの取得
git pull origin gh-pages

origin : cloneを行った際にその元となったリモートリポジトリはデフォルトでoriginという名前になる

gh-pagesはブランチ。
pullで最新のバージョン取得。

push

リモートからローカルと違い、ローカルからリモートの場合コミットに段階がある。

コミットした際のユーザー情報を登録

git config --global user.name "your name"
git config --global user.email xxxx@xx.xx
git config --global core.editor "vim"

--global : どのリポジトリでもこの情報を使う
--local : 特定のリポジトリだけでこの情報を使う

設定の確認

`git config -l` 登録したユーザー情報を確認できる。

ローカルにリポジトリ作成

git init

カレントディレクトリに.gitディレクトリが作られる。

git add filename

ワークツリーからインデックスに追加する(ステージング)
git add . でカレントディレクトリのすべてのファイルが対象となる。

ワークツリー : ローカルで作業しているディレクトリ
インデックス : リポジトリにコミットする前の段階

変更状況の確認

git status

コミット

git commit -m "コミット内容の説明"

-m オプションがない場合、vimの画面が開く。

github へのコミットは、githubにも新しくリポジトリを作る必要がある。

GitHub上でリポジトリを作成⇒SSHでのpushコマンドをコピーしてくる。

git remote add origin git@github.com:ユーザー名/ファイル名.git
git branch -M main
git push -u origin main

git remote add origin XXXXXXX
リモートリポジトリのoriginはこのGitHubのアドレスのリポジトリを指す。

git branch -M main
デフォルトのブランチをmainにする。

git push -u origin main
ローカルの変更をリモートに適用する。
-u は次回以降は省略した場合自動でこの設定でpushするというオプション

タグの設定

コミットした内容にタグをつける。 バージョンをつけることが多いらしい。 `git tag タグ名` タグを`push` `git push --tags origin main`

まとめ

数年前に学習したときはいまいちピンと来てなかった`git`というかバージョン管理の仕組みだったけど、以前の仕事でTFSを使っていたせいかだいぶ感覚的にもわかるようになってた。 `push`の工程が長く感じたけど、多分慣れたらそうでもなくなるんだと思われる。
1
0
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
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?