【超初心者向け】GitHubの使い方
この記事の対象
・GitHubでファイルを管理したいけど、どうせならターミナルから操作したい
・共同開発に向けて少しづつGitHubに慣れていきたい
・GitHubで個人のファイルを管理したい(他の人と共同開発はしない)
・いろいろなサイトをみてやってみたけど何を言ってるのかわからない
・ターミナルは使えるけどgitとかわからない・・・
・ITスキルを身に付けようと孤軍奮闘している人
など、とにかく「GitHubをターミナル経由で(1人で)使いたい」という人向けです。ここでは、Gitの仕組みや詳しい説明はしていません!(追々説明できるようになりたい所存です)
共同開発やバージョン管理なんてワードもでてきません!
ここでは、私に課せられた最初のミッション「GitHubにファイルをプッシュする」をやり遂げるまでの軌跡をメモ程度に記しております。
ターミナルを使って、GitHubにファイルをpushするまでの一連の作業
⓪gitをインストールする
まずはgitをインストールします。こちらは、「git インストール」で検索するとそれぞれのOSに対応したインストール方法を説明してくださっているサイトがたくさん出てきますので、それらを参考にしてください。
①ターミナルでgitに触ってみる
git --version
と入力してみましょう。バージョンが表示されたら、gitはインストールされています。おめでとうございます。
②ssh公開鍵・秘密鍵を入手して、GitHubに「公開鍵」を入力
「GitHubでssh接続する手順~公開鍵・秘密鍵の生成から~」
https://qiita.com/shizuma/items/2b2f873a0034839e47ce
を参照してください。すごくわかりやすくまとめられています。さらに超初心者向けに補足を行うと、
・いかにも入力すべきみたいなターンがありますがマジで無視してEnterです
・「titleに公開鍵名」とありますが、公開鍵名は任意に入力していいです。「え、公開鍵名なんて設定してない!」と思った人へ一応。
・秘密鍵は絶対に入力してはいけません。
上記三点を注意して、公開鍵を登録しましょう。(他力本願ですみません)
③作業中フォルダを選択or作成
ターミナルで、作業用のフォルダを作ります。
以降このフォルダに共有したいファイルを入れて、GitHubに送る形になります。つまり、このフォルダがGitHubとの橋渡しをするフォルダになります!(初心者はここを見落としてしまい、二回目以降ファイルがpushできない・・・ってことが起こりがちなので注意です)
mkdir フォルダ名
でフォルダを作成し、
cd フォルダ名
でそのフォルダ内に移動(確認のためpwdと入力してみてもいいです!)して、次に進んでください。
④GitHubのリポジトリ画面からコマンドを入手
GitHubのリポジトリにはいると上の画像のようなものがあるはずです。ある人は、...or create a new のしたのecho "#以下をコピーしてターミナルにペースト。
もし上の画像が表示されていない人がいたら、以下のア・イに独自の情報を入力して、ターミナルで実行してみてください。
echo "# ア" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin git@github.com:イ.git
git push -u origin master
ア:リポジトリ名(#の後ろに半角スペースあります!)
イ:...上位の階層/リポジトリ名
⑤リポジトリで確認
ウェブでリポジトリを再読み込みしてみてください。commitにREADME.mdが追加されていたらOKです。
以後、pushしたいファイルがあれば、そのファイルを上記の作業を行ったフォルダに入れて、以下のコマンドを入力します。
git add ファイル名
git commit -m "メッセージ" (pushしたファイルの説明です。変更点などを短く記載します)
git push origin master
こうすれば、ファイルがpushされています。
あとがき
今回はただ単にGitHubにターミナルを使ってファイルをpushしたい!という目的だったので、共同開発を試みている人には向いていません・・・。
同じような状況の人の助けに少しでもなるといいな、と思いつくりました。今後は共同開発に向けたGitHubの使い方なども「超初心者向け」に超初心者目線で共有していきたいと思います。
では、良いエンジニアライフを。
参考:
・「GitHubでssh接続する手順~公開鍵・秘密鍵の生成から~」(2018/12/05)https://qiita.com/shizuma/items/2b2f873a0034839e47ce
・progate (Gitコース)