20200630のGitに関する記事は8件です。

VSCodeのExtensionをシェルとGitで管理すると便利になったお話

Visual Studio Code(以下VSCode)はMicrosoftが開発しているソースコードエディタです。Extension(拡張機能)を追加することで様々なプログラミング言語に対応可能であり、合わせて使いやすさも向上させることも出来ます。本記事ではそんなVSCodeのExtensionをシェルとGitを用いて管理すると便利になったお話を取り上げます。

背景

VSCodeのExtensionはVSCodeを起動し、拡張機能からインストール可能です。しかし、PCを複数台所有している場合や買い替え時に手作業で入れ直すのは大変煩雑であり、また漏れも発生します。色々調べてみた所、Extensionのインストールはコマンドでもインストール可能なことが分かりました。そのコマンドは以下です。

VSCodeのExtensionをインストールするコマンド
code --install-extension EXTENSION_NAME

シェルファイル化で自動化する

上記のコマンドを記載したシェルファイルを作成し、Gitで管理すればPCの買い換えやリカバリー時にも早急に開発環境を復旧出来ます。Exstensionは自分のインストールしたい物を記載して下さい。その時に記載する名前は以下の図の赤丸部分に倣って記載して下さい。以下の図は拡張機能でPythonのExtension(MS社製)を検索した時の画面のスクリーンショットです。

vscode_python.png

シェルファイルの中身の例
#!/bin/bash

# Python用拡張機能
code --install-extension ms-python.python
code --install-extension tht13.python
code --install-extension kevinglasson.cornflakes-linter

Windowsへの対応

会社の開発環境はWSL @ Windows10です。WSL上でVSCodeは実行出来ますが、使い心地がいまいちである為、Windows上にVSCodeをインストールしています。Windowsの場合、シェルの実行にはbatファイルを用いるのが一般的ですが、文法がbashとは異なり、筆者はどうしても肌に合いません。そこでbatファイルも自動生成することにします。

Windows用batファイル作成用シェルファイル
#!/bin/bash

rm -f install_extensions.bat
# ユニコード対応化
echo "chcp 65001 && ^" > install_extensions.bat
# コメント部分, 空白行を除く, batの複数コマンド記述対応化
cat install_extensions.sh | grep -v '^#' | sed '/^$/d' | sed -e "s/\$/ \&\& \^/" >> install_extensions.bat
# Remote WSLを追加
echo "code --install-extension ms-vscode-remote.remote-wsl & ^" >> install_extensions.bat
echo "echo Finished! & ^" >> install_extensions.bat
# コマンドが終了しても画面が閉じないようにする
echo "pause" >> install_extensions.bat
# 改行コードをWindows用に
sed -i -e 's/$/\r/' install_extensions.bat >> install_extensions.bat

これらのシェルファイルを格納するGitリポジトリに.gitignoreを追加し、*.batと追加することでリポジトリに誤って追加されない様にします。

.gitignoreの例
*.bat

まとめ

VSCodeのExtensionのインストールを自動化し、管理を楽にするためのスクリプトファイルの作成方法について紹介しました。現状Linux/Unix系OS上で主に利用することを想定している為、Windowsをメインとしている方には少々不親切な内容かもしれません。。。実際に職場の開発環境(Windows10)上のWSL上でシェルを実行し、出来上がったbatファイルをWindows上で実行した所、Extensionのインストールが自動で行われ、あっと言う間に環境構築が出来ました。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

VS CodeのExtensionをシェルとGitで管理すると便利になったお話

Visual Studio Code(以下VSCode)はMicrosoftが開発しているソースコードエディタです。Extension(拡張機能)を追加することで様々なプログラミング言語に対応可能であり、合わせて使いやすさも向上させることも出来ます。本記事ではそんなVSCodeのExtensionをシェルとGitを用いて管理すると便利になったお話を取り上げます。

背景

VSCodeのExtensionはVSCodeを起動し、拡張機能からインストール可能です。しかし、PCを複数台所有している場合や買い替え時に手作業で入れ直すのは大変煩雑であり、また漏れも発生します。色々調べてみた所、Extensionのインストールはコマンドでもインストール可能なことが分かりました。そのコマンドは以下です。

VSCodeのExtensionをインストールするコマンド
code --install-extension EXTENSION_NAME

シェルファイル化で自動化する

上記のコマンドを記載したシェルファイルを作成し、Gitで管理すればPCの買い換えやリカバリー時にも早急に開発環境を復旧出来ます。Exstensionは自分のインストールしたい物を記載して下さい。その時に記載する名前は以下の図の赤丸部分に倣って記載して下さい。以下の図は拡張機能でPythonのExtension(MS社製)を検索した時の画面のスクリーンショットです。

vscode_python.png

シェルファイルの中身の例
#!/bin/bash

# Python用拡張機能
code --install-extension ms-python.python
code --install-extension tht13.python
code --install-extension kevinglasson.cornflakes-linter

Windowsへの対応

会社の開発マシーンはWindowsです。Windowsの場合、batファイルを用いるのが一般的ですが、文法がbashとは異なり、筆者はどうしても使い熟せません。そこでbatファイルも自動生成することにします。

Windows用batファイル作成用シェルファイル
#!/bin/bash

rm -f install_extensions.bat
# ユニコード対応化
echo "chcp 65001 && ^" > install_extensions.bat
# コメント部分, 空白行を除く, batの複数コマンド記述対応化
cat install_extensions.sh | grep -v '^#' | sed '/^$/d' | sed -e "s/\$/ \&\& \^/" >> install_extensions.bat
# Remote WSLを追加
echo "code --install-extension ms-vscode-remote.remote-wsl & ^" >> install_extensions.bat
echo "echo Finished! & ^" >> install_extensions.bat
# コマンドが終了しても画面が閉じないようにする
echo "pause" >> install_extensions.bat
# 改行コードをWindows用に
sed -i -e 's/$/\r/' install_extensions.bat >> install_extensions.bat

これらのシェルファイルを格納するGitリポジトリに.gitignoreを追加し、*.batと追加することでリポジトリに誤って追加されない様にします。

.gitignoreの例
*.bat

まとめ

VSCodeのExtensionのインストールを自動化し、管理を楽にするためのスクリプトファイルの作成方法について紹介しました。現状Linux/Unix系OS上で主に利用することを想定している為、Windowsをメインとしている方には少々不親切な内容かもしれません。。。実際に職場の開発環境(Windows10)上のWSL上でシェルを実行し、出来上がったbatファイルをWindows上で実行した所、Extensionのインストールが自動で行われ、あっと言う間に環境構築が出来ました。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

【git 】ブランチの確認方法(新規順・古い順)

ブランチの一覧表示

初心者は忘れがちだと思うので、ブランチを確認する方法を記載します。
ターミナル上で、

$ git branch

と入力すれば、作業ディレクトリのブランチの一覧が表示されます。(ABC順)

 aritcle
 *branch
  create_user
 develop

「*」マークがついているのが今いるブランチです。

新しい順・古い順

ブランチは、新しい順・古い順に並べることもできます。

git branch --sort=authordate #古い順
git branch --sort=-authordate #新しい順

新しい・古い順は個人的に便利だと思うので参考にしてみてください。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

MacにGitをインストールする

最終更新日

2020年6月30日

検証を行ったmacOSのバージョンは下記です。

  • macOS Catalina 10.15.5

インストールするもののバージョンは下記です。

  • Git 2.24.3

この記事が古くなった場合、下記の手順は最新のインストール手順とは異なっている可能性があります。

インストール方法は2つ

  1. App StoreからXcodeをインストールすれば、Gitが付属しています
  2. Homebrewを使う brew install git

お好きな方を選んでください。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

WindowsにGit Bashをインストールする

最終更新日

2020年6月30日

検証を行ったWindows 10のバージョンは下記です。

  • Windows 10 Home 64bit 2004 19041.329

インストールするもののバージョンは下記です。

  • Git 2.7.0 64bit

この記事が古くなった場合、下記の手順は最新のインストール手順とは異なっている可能性があります。

インストール

(1) https://gitforwindows.org/ にアクセスしてください。

(2) [Download]をクリックしてください。

スクリーンショット 2020-06-30 13.09.55.png

(3) ダウンロードしたGit-2.27.0-64-bit.exeをダブルクリックしてください。

(4) [はい]をクリックしてください。

スクリーンショット 2020-06-30 13.11.24.png

(5) [Next]をクリックしてください。

スクリーンショット 2020-06-30 13.11.46.png

(6) [Next]をクリックしてください。

スクリーンショット 2020-06-30 13.12.09.png

(7) [Next]をクリックしてください。

スクリーンショット 2020-06-30 13.12.58.png

(8) [Next]をクリックしてください。

スクリーンショット 2020-06-30 13.13.41.png

(9) Visual Studio Codeがインストール済みの場合は[Use Visual Studio Code as Git's default editor]、それ以外の場合は[Use Vim (the ubiquitous text editor) as Git's default editor]を選択して、[Next]をクリックしてください。

スクリーンショット 2020-06-30 13.16.03.png

(10) [Next]をクリックしてください。

スクリーンショット 2020-06-30 13.16.38.png

(11) [Next]をクリックしてください。

スクリーンショット 2020-06-30 13.17.00.png

(12) [Next]をクリックしてください。

スクリーンショット 2020-06-30 13.17.27.png

(13) [Next]をクリックしてください。

スクリーンショット 2020-06-30 13.17.43.png

(14) [Next]をクリックしてください。

スクリーンショット 2020-06-30 13.18.13.png

(15) [Next]をクリックしてください。

スクリーンショット 2020-06-30 13.18.35.png

(16) [Install]をクリックしてください。

スクリーンショット 2020-06-30 13.21.31.png

(17) チェックを全て外して[Next]をクリックしてください。
スクリーンショット 2020-06-30 13.19.42.png

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

[簡潔]誤ったブランチで作業していた場合の対処法

ブランチを変更する手順(未コミットの場合)

まず stash を実行。
このコマンドはコミットしていない変更内容を一時退避させるコマンドで、スタッシュという。

$ git stash

次に退避した変更内容を移動させるブランチに切り替えます。checkout を実行。

$ git checkout <切り替えたいブランチ名>

最後にstash pop を実行。このコマンドは直前に退避した変更内容をを取り出すコマンドです。

$ git stash pop

解決方法は以上です。
流れとしては、変更を一時退避し、ブランチを切り替え、一時退避していた変更を取り出す。
といった感じです。

参考にしてください!

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

[bashrc]作業ブランチにpushする時の入力は面倒だけど、pushするブランチは確認したい

最近、社内の人からgit pushの便利なコマンドを教えてもらいました。

 git push origin `git rev-parse --abbrev-ref HEAD`

これは現在のブランチのリモートへcommitをpushするコマンドです。
わざわざブランチ名を入力する手間が省けるので大変便利です。
私はgit puとaliasを設定して使っていました。

しかしある時、現在いるブランチを間違って認識していて、そのまま開発を進めてしまいったことがあり
間違ったブランチにpushしてしまうという過ちを犯してしまいました...(あぶない)

ということで、pushする前に確認してくれるシェルスクリプトを作成してみました。

作ったもの

  • コマンドを入力するとpushするブランチ(カレントブランチ)を出力
  • y or Yを入力すればpushされ、それ以外の入力はキャンセル

実際に調べながら作成したのでもっといい方法があったらアドバイスいただければと思います。

~/.bashrc
# git push & branch 確認
gitpu(){
    branch=`git rev-parse --abbrev-ref HEAD`

    if [ -z $branch ]; then
        return
    fi

    echo "push: ${branch}"
    read input

    # キャンセル
    if [ -z $input ]; then
        return
    fi

    if [ $input = 'y' ] || [ $input = 'Y' ]; then
        git push origin `git rev-parse --abbrev-ref HEAD`
    else
        return
    fi

}
Ariel:bash gatapon$ gitpu
push: gt.test             // current branchが出力される
y                         // `y` or `Y`を入力すればpushされる
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 287 bytes | 287.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To github.com:rinonkia/bash_test.git
   bd724d2..706b2d2  gt.test -> gt.test

これで快適な開発ライフを送っていきたいと思います。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

作業ブランチにpushする時の入力は面倒だけど、pushするブランチは確認したい

最近、社内の人からgit pushの便利なコマンドを教えてもらいました。

 git push origin `git rev-parse --abbrev-ref HEAD`

これは現在のブランチのリモートへcommitをpushするコマンドです。
わざわざブランチ名を入力する手間が省けるので大変便利です。
私はgit puとaliasを設定して使っていました。

しかしある時、現在いるブランチを間違って認識していて、そのまま開発を進めてしまいったことがあり
間違ったブランチにpushしてしまうという過ちを犯してしまいました...(あぶない)

ということで、pushする前に確認してくれるシェルスクリプトを作成してみました。

作ったもの

  • コマンドを入力するとpushするブランチ(カレントブランチ)を出力
  • y or Yを入力すればpushされ、それ以外の入力はキャンセル

実際に調べながら作成したのでもっといい方法があったらアドバイスいただければと思います。

~/.bashrc
# git push & branch 確認
gitpu(){
    branch=`git rev-parse --abbrev-ref HEAD`

    if [ -z $branch ]; then
        return
    fi

    echo "push: $branch"
    read input

    # キャンセル
    if [ -z $input ]; then
        return
    fi

    if [ $input = 'y' ] || [ $input = 'Y' ]; then
        git push origin `git rev-parse --abbrev-ref HEAD`
    else
        return
    fi

}
Ariel:bash gatapon$ gitpu
push: gt.test             // current branchが出力される
y                         // `y` or `Y`を入力すればpushされる
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 287 bytes | 287.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To github.com:rinonkia/bash_test.git
   bd724d2..706b2d2  gt.test -> gt.test

これで快適な開発ライフを送っていきたいと思います。

  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む