20220225のGitに関する記事は4件です。

Git管理下のパス名は英語にしましょう

起こったこと VSCodeを使って開発している時に、GitのGUIからファイルをステージングしようとしました。 ↑の「+」ボタンを押して。 そしたら以下のようなエラーが出ました。 fatal: /path/to/src/App.tsx: '/path/to/src/App.tsx' is outside repository at '/path/to/repository' あれ?? 何もしてないのに壊れたぞ? 原因 ググると、同様のエラーメッセージが出る原因は様々あるみたいです。 僕の場合は、ステージングしようとしたファイルのパスに日本語が含まれていたことが原因でした。 解決方法 1. パスに日本語が含まれないように半角英数字に統一する 根本解決したい場合はこちらが望ましいです。 ただし、既存のレポジトリでこれをしようとするとややこしい場合があります。(名前を変更しようとしたら更にエラーが、など) 2. コマンドラインからステージングする ターミナルから git add すると今回のエラーは出ません。 まとめ 特にGitで管理する場合は、ディレクトリやファイルの名前は英語にしましょう。
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

WSL2に切り替えたけど、Gitが「Permission denied (publickey).」する時

現象 WSL2のUbuntuからGithubにSSH接続を試みるも。。。? $ ssh -T git@github.com git@github.com: Permission denied (publickey). Username/Password入力しても、 秘密鍵を作成して、githubに登録しても、 ~/.ssh/configに接続情報設定しても、 git@github.com: Permission denied (publickey). 対象 ?WSL2を使用せずにDockerを使用していたが、 WSL2に切り替えたユーザー 解決策 WSL2のUbuntuで? $ git config --global credential.helper "/mnt/c/Program\ Files/Git/mingw64/libexec/git-core/git-credential-manager.exe" 参考
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

GIT ブランチとは?

ブランチとは プロジェクトから分岐させることにより、プロジェクト本体に影響を与えずに開発を行える機能のこと。 ブランチの利点 プロジェクト本体の内容に影響を与えないため、不必要なエラーがなくなる。 また、ブランチごとに履歴を残すことによって、不具合などの問題が発生した場合に問題の切り分けや対応なども容易にできる。 参考文献
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む

Gitリポジトリの一部を指定してclone(ダウンロード)したい場合にdegitが便利

degitとは degitはGitリポジトリ(またはその一部)をローカル環境にダウンロードするためのCLIツールです。 git cloneでよくね? --depthを使用すれば最新のコミットだけを落とせますし、git clone --filter=blob:none --no-checkoutとgit sparse-checkoutでリポジトリの一部を指定して落とせます。 git clone --depth=1 git@github.com:user/repo.git git clone --filter=blob:none --no-checkout git@github.com:user/repo.git cd repo git sparse-checkout init git sparse-checkout add subdirectory ただ後述するように、degitではより短いコマンドで簡単にGitリポジトリの一部を指定してダウンロードできます。 インストール npmでインストールします。 npm install -g degit 使う 基本 GitHubだけでなくGitLab、BitBucket、Sourcehutにも対応しています。 GitHub GitHubからリポジトリのmaster(main)ブランチを現在の作業ディレクトリにダウンロードするには以下のようなコマンドを使用します。 degit user/repo また以下のコマンドはすべて同等です。 degit github:user/repo degit git@github.com:user/repo degit https://github.com/user/repo GitLab degit gitlab:user/repo degit git@gitlab.com:user/repo degit https://gitlab.com/user/repo BitBucket degit bitbucket:user/repo degit git@bitbucket.org:user/repo degit https://bitbucket.org/user/repo Sourcehut degit git.sr.ht:user/repo degit git@git.sr.ht:user/repo degit https://git.sr.ht/user/repo リポジトリの一部を指定する 第一引数の末尾にサブディレクトリを追加します。 degit user/repo/subdirectory タグ、ブランチ、コミットを指定する 省略した場合はデフォルトブランチ(基本的にはmasterまたはmain)になります。 degit user/repo#dev # branch degit user/repo#v1.2.3 # release tag degit user/repo#1234abcd # commit hash ダウンロード先を指定する 省略した場合は現在のディレクトリにダウンロードします。 degit user/repo my-new-project 使用例 このリポジトリのmainブランチのclient/android以下が欲しいとします。 以下のコマンドで保存場所をmy-folderに指定して落とすことができます。 degit derrickstolee/sparse-checkout-example/client/android my-folder cd my-folder
  • このエントリーをはてなブックマークに追加
  • Qiitaで続きを読む