見出し画像

VS Codeを活用したい-gitをつかおう

会社・私用PCともにエディタはVS Codeを使っています。最初の頃はサクラエディタ派だったのですが、ある時「VS Codeは拡張機能が色々すごくて使いこなせるとめちゃめちゃ便利らしい」と聞いて、「なにそれやってみたい!」と思い、インストール。

・・・・しかし、ここまで本当にただのメモ帳としか使えておらず、かーーなり勿体ないことをしているので今日こそは何かやる。やるぞ。


とりあえず、2年前くらいにGitを触った記憶がうっすらあるので、こいつをやってみる。そしてやったことを書く。以上。


演習 - リポジトリをクローンしてブランチを作成する

この演習を続けるには、このモジュールの要件を確認する必要があります。Git と Visual Studio Code の両方をローカル環境にインストールする必要があります。

ふむなるほど。というわけで


画像1

デフォルトがVimっぽかったのでVS Codeを選択して進む。


画像2

よく分からんのでとりあえずデフォルトのまま進む。こういうのも見つけたし・・


画像3

どうやら"Checkout as-is, commit as-is"で進むべきらしい。ほーん。


画像4

よくわからんのでデフォルトで進む。


画像5

変えません!!!!


VS Codeでもそれっぽい表示。インストール完了っぽい。

画像6


そしてここにきてGitHubアカウントを会社メールアドレスでしか作ってなかったことに気づく。私用の欲しいよねやっぱ・・・

アカウント作ってfork→cloneのURLをコピーしてVS Codeへ、っと・・

ステップ 3 - フォークされたプロジェクトをローカル開発環境にクローンする (中略) 次に、[フォルダーの選択] ウィンドウが表示されます。 クローンされたリポジトリのファイルを格納するローカル ハード ドライブ上のフォルダーを選択します。

どこに保存すりゃいいの。どこでもいいのか。フォルダを作って選ぶ。


画像7

お、なんかローカルのを見れてるっぽい。進む。


記号の意味を忘れてしまい、次に何をすべきかわからない場合は、[表示] メニューの [ターミナル] を選択し、git status を実行することで、自分のブランチの現在の状態を把握できます。

画像8

やってみたけどこの画面なんかそれっぽくてテンション上がる。


演習 - 変更をステージしてコミットし、リモート リポジトリにプッシュする

[ステップ 4 - コミットを作成する]やったら怒られた。[Open Git Log]してみる。「git configしろや」とのことなのでやる。そういえば何もやってないよねそうだよね。

画像9

*** Please tell me who you are.
Run
 git config --global user.email "you@example.com"
 git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.

「git configしろや」とのことなのでやる。そういえば何もやってないよねそうだよね。

PS C:\Users\${MY_DIR}\_git> git config --global user.email "${MY_EMAIL}"
PS C:\Users\${MY_DIR}\_git> git config --global user.name "tomato"

そしてもう一回コミットして次のステップへ。

・・あれ。

前のユニットでは、ステータス バーの [変更の同期] (時計回りの 2 つの矢印) アイコンについて説明しました。 次の図のように、アイコンの右側には隣にゼロ (0) と示された下向きの矢印が表示されています。

Gitなにもおぼえてないマンここで発動。何が起きた。ていうかLearnのと表示違うね?

画像12

なんとなく()雲のマークをクリックしてみたらログインウインドウが現れた。

画像13

入力して進むとpushできないとのこと。

画像14

・・・・あ、git add→git commit→git pushでしたっけ(すっとぼけ

ここで、[変更の同期] アイコンを選択し、git pull、git push の順に実行します。

書いてある通りにやろうねって話ですね。了解。

PS C:\Users\${MY_DIR}\_git\mslearn-use-git-from-vs-code> git push --set-upstream origin update-response
Enumerating objects: 9, done.
Counting objects: 100% (9/9), done.
Delta compression using up to 4 threads
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 451 bytes | 150.00 KiB/s, done.
Total 5 (delta 3), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (3/3), completed with 3 local objects.
remote: error: GH007: Your push would publish a private email address.
remote: You can make your email public or disable this protection by visiting:
remote: http://github.com/settings/emails
To https://github.com/tomatodmajin/mslearn-use-git-from-vs-code.git
! [remote rejected] update-response -> update-response (push declined due to email privacy restrictions)
error: failed to push some refs to 'https://github.com/tomatodmajin/mslearn-use-git-from-vs-code.git'

メールアドレスのプライバシー制約??何事???

・・・アカウント作ったときに適当にいじった設定のせいか!

アカウント登録したときのじゃない、コミット用の別アドレスをgit configします。ついでにuser.nameを勘違いしていて表示名を登録していたのでこれも直そう。

PS C:\Users\${MY_DIR}\_git\mslearn-use-git-from-vs-code> git config --global user.email "${MY_EMAIL}"
PS C:\Users\${MY_DIR}\_git\mslearn-use-git-from-vs-code> git config --global user.name "tomatodmajin"

あと[Setting] > [Email] > [Block command line pushes that expose my email]はチェック外しで。。

紆余曲折を経てできたっぽい。

PS C:\Users\${MY_DIR}\_git\mslearn-use-git-from-vs-code> git push --set-upstream origin update-response
Enumerating objects: 9, done.
Counting objects: 100% (9/9), done.
Delta compression using up to 4 threads
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 451 bytes | 150.00 KiB/s, done.
Total 5 (delta 3), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (3/3), completed with 3 local objects.
remote:
remote: Create a pull request for 'update-response' on GitHub by visiting:
remote:      https://github.com/tomatodmajin/mslearn-use-git-from-vs-code/pull/new/update-response
remote:
To https://github.com/tomatodmajin/mslearn-use-git-from-vs-code.git
* [new branch]      update-response -> update-response
Branch 'update-response' set up to track remote branch 'update-response' from 'origin'.

画像16


予想以上にGit何もおぼえてないことがわかったwがんばります。。。

この記事が気に入ったらサポートをしてみませんか?