git configに--listオプションを指定することで現在の設定を確認することができます。
Git はファイルを管理しているだけなので、空のディレクトリのディレクトリ構造を保存できない。 残しておきたいフォルダの中に .gitkeep というファイル名で空のファイルを作成してディレクトリを残す方法がある。
[http "http://example.com/"] proxy =
環境変数GIT_CURL_VERBOSEに1をセットするとGitコマンドのデバッグが出来るらしい。
環境変数「GIT_CURL_VERBOSE=1」を設定しておくと、通信内容(curl)のDEBUGを出すことができますという話。
git remote set-url origin {new url}
今後、自分の開発環境ではGitのデフォルト・ブランチ名をmasterからmainにしようと思います。
例えば、masterのままでいると、first commitでリモートのmainブランチに直プッシュをしたくてもリモートにmainブランチを作成してからプルリクエストを出してマージする手順が必要になります。
ローカルで変えたブランチをリモートへpush git push -u origin main
今回はそのうちでも「見る」ということに焦点を当てたコマンドをまとめてみようと思います。
git clone -b ブランチ名 https://リポジトリのアドレス
次の commit で反映される変更を表示 git diff --cached 直前の commit による変更を表示 git diff HEAD^ HEAD
git log --branches --not --remotes=origin
git fetch && git log ..origin/master Similarly, outgoing would be this: git fetch && git log origin/master..
取得したいディレクトリをsparse-checkoutに設定する
特定のファイルのみ取り消し git reset HEAD file_name
Shallow cloneしたリポジトリ内でgit fetch --unshallowを実行すると、そのリポジトリにフェッチされていない全ての履歴をフェッチすることができます。
$ git diff --cached ファイル名
# vimの場合 $ git config --global core.editor vim
使い方は簡単で、-mのオプションを付けずにコミットをするだけです。
全てのgitの機能が使えるわけではないのでうが、普段のgitの操作の大半はtigを使ったほうが断然便利です!
もっと便利に使いこなすためのキーバインドによる遷移
後半でSVN管理のプロジェクトをGit/GitLab管理のプロジェクトに移行する移行する手順を紹介します。
たったそれだけかといった感じですがいくつかハマった点もありますので、そちらは後ほど紹介します。
git-svnはgitコマンドでSubversionリポジトリにアクセスできるツールです。 git svn clone を実行するとリモートのSubversionリポジトリと同じ内容のGitリポジトリがローカルに作成されます。その後は git svn fetch を実行すると、Subversionリポジトリ上の新しいコミットが git svn clone で既に作成済みのローカルのGitリポジトリに反映されます。
Windows環境での移行です。(Windows10)