-
Notifications
You must be signed in to change notification settings - Fork 20
how_to_use_with_github_desktop
guiでgithubとの連携が可能な Windows Application である GitHub Desktopで WSL上のプロジェクトを管理する方法です。
以下のような方が対象です。
- gitのコマンド使うの面倒な人
- 手軽にgithubを使いたい人
コマンド叩きたい人は how_to_use_with_github を見てください。
GitHub Desktop からダウンロードしてインストールする
インストールができたら、アカウントの設定等をしておきます。
事前準備
エクスプローラ上で
\\wsl$
(以下 \ は¥の半角で読み替えてください)
を叩くと Ubuntu のフォルダが見えるようになる。隠し共有であるので、エクスプローラのアドレスバーに直接叩く必要がある。
無反応の場合はWindows Updateで更新が必要な可能性がある。
対応可能バージョンは Windows 10バージョン1903 以降と思われる。
winver
コマンドで確認することができる。
WSLの隠し共有である \\wsl$
から、WSL内のディレクトリを共有フォルダとして参照できるので、リポジトリのクローン先をそこに設定する。
なお、UbuntuのシンボリックリンクはWindowsから参照するとリンクとして機能しないので、直接 \\wsl$\(Ubuntu-バージョン)\home\(user名)\etrobo\hrp3\sdk\workspace
を指定する。
WSL上のディレクトリ
/home/(user名)/etrobo/workspace
→
/home/(user名)/etrobo/hrp3/sdk/workspace
Windows上のディレクトリ(隠し共有)
\\wsl$\(Ubuntu-バージョン)\home\(user名)\etrobo\hrp3\sdk\workspace
まだgithubで管理されていない場合は、初期化します。
- 最初はコマンド叩くのが必須です。etrobo環境にて、自分が管理したいプロジェクトの階層に移動後
git init
- File メニュー → Add local repository...
choose... ボタンより、フォルダ選択のダイアログを表示
上部アドレスバーに \\wsl$
と打ち込むと、以降フォルダをたどれます。
-
最後に Add repository ボタンで確定します。
-
GitHub Desktop の左側に commit コメントを書くエリアと commit ボタンがあるので、初回コミットをします。
-
上部の Publish branch ボタンで github へ書き込まれます。
すでにgithubで管理されている場合は、そのプロジェクトを clone します。すでにコマンドでgithubへのpushが終わっている場合はこちらの方法です。2人目の共同作業者が行う作業もこちらです。
- File メニュー → Clone repository...
上の3つタブから適切なものを選びます
・github.com (自分のアカウントで参照できるリポジトリ)
・GitHub Enterprise (おそらく使わないです)
・URL (リポジトリのURLがわかっている場合)
クローンしたリポジトリの選択が終わってから、下部の Local Path の Choose... で、WSL上のフォルダを選択します(プロジェクトを保存したいフォルダの上位階層、この場合は workspace)。標準はWindowsのローカルディレクトリになっているので、必ずCloneする前に変更します。
最後に下部の Clone ボタンで確定します。
Repository メニュー → Repository Settings... →Ignored files
に除外するファイル等を列挙します。
# etrobo related files
app
asp
*.asp
currentapp
*.status
__race/
*.log
log.txt
*.md5sum
result.json
Windows上での管理になるので、アクセス権が絡むような実行ファイルは権限が崩れるかもしれません。 etrobo環境のプロジェクトのようなソースコードであれば、問題ないでしょう。
コマンドをたたかないと解決できない問題もありますので、ご注意ください。
Copyright (C) 2020-2024 ETロボコン実行委員会, Released under the MIT License.