開発環境(Git, GitHub)をUSBに入れて持ち運ぶ

概要 USBで開発環境を一式移動させることができれば便利だなと思い、まずはGit、GitHubをUSBで持ち運べるようにしました。環境はWindowsを想定しています。 この記事では、以下の項目を達成します。 USBにインストールしたブラウザからGitHubのサイトのログイン状態を維持 GitからGitHubへプッシュやプルする時に必要な認証情報をUSBに保持 GitHub CLI(ghコマンド)を使用可能 Portable Gitのインストール まずはポータブル版のGitをダウンロードインストールします。 公式ホームページからPortable版をダウンロードする USBの直下にインストールする 正しくインストールされたか確認する。USB直下にある、git-bash.exeをダブルクリックし、そのシェルにgit --versionと入力し、バージョンが表示されればよい。 Gitの設定 次にGitの初期設定を行います。 /home/<username>ディレクトリを作成する。/home/<username/の部分は適宜読み替えてもらって大丈夫です 下のように、/etc/profileの末尾にHOME=/home/<username>を追記する。こうすることで~/.config/ディレクトリに設定ファイルを保存するソフトであっても、設定ファルごとUSBに入れて持ち運ぶことができます。 ~~~ 省略 ~~~ unset MAYBE_FIRST_START HOME=/home/<username>/ gitの初期設定を行う git config --global user.name "<name>":ユーザ名を設定する git config --global user.email "<email>":Eメールを設定する git config --global safe.directory '*':信頼するディレクトリを指定。USB内のディレクトリはデフォルトでは信頼されていないディレクトリとして扱われる。*とするとすべてのディレクトリを信用するとこになるので、適宜ディレクトリを指定するほうがよいかと思う 初期設定が適切に行われているか、確認する。~/.gitconfigファイルの中に先程設定した3項目が存在することを確認する。 $ cat .gitconfig [user] name = KashiuchiSotaro email = XXXXX@gmail.com [safe] directory = * Browserのインストール ブラウザをダウンロード、インストールします。ブラウザは主にGitHubのサイトを閲覧するために使用することを想定しています。そのため、GitHubへ毎回ログインしなくて良いように、USB内にcookieや認証情報が残っていてほしい。それらにデフォルトで対応しているブラウザはFireFoxしか確認できませんでした。(GoogleChrome, Operaも調べてみたのですが、デフォルトではセッション状態をパソコンをまたいで保持できませんでした。)そのため今回はFireFoxのポータブル版をインストールします。 PortableAppsからダウンロードする USB配下の好きなところにインストールする インストールしたFireFoxのブラウザを使用し、GitHubのアカウントにログインする GitHub CLIのインストール&コピー GitHub CLIの公式ホームページに行き、Windowsのコマンドプロンプトでwinget install --id GitHub.cliを実行する C:/ProgramFile/Github CLI/gh.exeをUSBの/usr/bin/ディレクトリ配下にコピーする GitHub CLIの設定 GitHub CLIの設定ファイルを作成する ...

2023/11/4 · KashiuchiSotaro

Gitで過去の日時にコミットを作成する

実施したいことと、結論 実施したいことは、記事のタイトルにあるように、Gitで過去の日時にコミットを作成することです。結論を言うと以下のように、日時を変更し、コミットを行うことで、簡単にコミット日時を変更することができます。 sudo date -s "YYYY/MM/DD HH/MM/SS" && git commit -m "messege" 使用例 gitにバージョン管理を移行 gitを使う前まではバージョンを管理するために、ディレクトリをまるまるコピーしディレクトリ名を日付にしたりしていた人は多いと思います。具体的には以下のディレクトリ構成などをさしています。 ./workspace/... ./backup/2023-10-09/... ./backup/2023-10-10/... ./backup/2023-10-11_ver1/... ./backup/2023-10-11_ver2/... このようなバージョンの管理から、gitを使用したバージョン管理に移行する方法を紹介します。完全に我流で、もっと正しいやり方があるかも知れませんが、ご了承ください。 結論を述べると以下のような手順でできます。 作業用ディレクトリを作成し、git initを実行 作業用ディレクトリに、バージョン管理に追加したいディレクトリやファイルをコピーする。バージョン管理したいディレクトリやファイルは日付が若い順から行う。 git addで先程コピーしてきたディレクトリやファイルをgitのインデックスに追加する sudo date -s "YYYY/MM/DD HH/MM/SS" && git commit -m "messege"で任意の日時を指定し、コミットを行う 2の作業に戻り、次に管理したいディレクトリやファイルを作業用ディレクトリにコピーする その他の用途 コミットを行うのを忘れており、何日も立ってしまった時 過去のコミットからブランチを作成し、そのブランチで、過去の日時にコミットしたい時 などなどまだまだたくさん応用ができると思います。 注意点 コミット間の前後が時系列順になっていないようなものも簡単に作れてしまうので、注意です。 操作を謝ると、以下の写真のように、OctoberからSeptemberに戻り、またOctoberに戻るようなコミットログになってしまいます。

2023/10/11 · KashiuchiSotaro

Zellijの便利な機能

経緯 NeoVimを使いはじめたので、Terminal Multiplexerも始めようと思いいろいろ試した結果Zellijが僕にとって使い勝手が良かった(Tmuxではないんか(笑)) Zellijを少し使い、便利な機能や設定を見つけたので紹介する Zellijの概要とインストール Zellijの概要やインストール方法は、以下の記事が非常に参考になった Rust製ターミナルマルチプレクサのZellijに入門してみるというサイトが非常に参考になる Zellijの公式サイト 設定ファイル ZellijはKDL形式のconfig.kdl設定ファイルに設定を記述する 設定ファイルの検索順序は以下の通り Zellij実行時にオプション(--config, --config-dir)として設定ファイル又はディレクトリを指定 ZELLIJ_CONFIG_DIRという環境変数 $HOME/.config/zellijディレクトリ 以下のディレクト(default location) Linux: /home/alice/.config/zellij Mac: /Users/Alice/Library/Application Support/org.Zellij-Contributors.Zellij /etc/zellijディレクト(system location) 基本的に$HOME/.config/zellijに設定を記述していけばよい Theme Theme(テーマ)の変更方法を紹介する 既存のThemeから選ぶ config.kdl {:.filename} {% highlight bash %} // Choose the theme that is specified in the themes section. theme “ThemeName” {% endhighlight %} Themeのサイトから好きなテーマを選ぶ config.kdlのthemeの値に選んだテーマのThemeNameを記入する。ThemeNameは空白を-、大文字を小文字に変更すれば良い。 自分でThemeをカスタマイズする config.kdl {:.filename} {% highlight bash %} // Choose the theme that is specified in the themes section. theme “ThemeName” ...

2023/09/28 · KashiuchiSotaro