e.g., /Users/ahsabkab/.ssh/id_rsa.pub
cache
ヘルパーを利用する方法git push
などでPATの入力を求められる前に以下のコマンドを叩く# キャッシュ保持期間の単位は秒
git config --global credential.helper 'cache --timeout=3600'
git push
などを叩く$ git init (管理したいプロジェクトの存在するディレクトリで行う)
これを実行すると .git という名前の新しいサブディレクトリが作られ、リポジトリに必要なすべてのファイル (Git リポジトリのスケルトン) がその中に格納されます。 この時点では、まだプロジェクト内のファイルは一切管理対象になっていません 。
空のディレクトリではなくすでに存在するファイルのバージョン管理を始めたい場合は、まずそのファイルを監視対象に追加してから最初のコミットをすることになります。この場合は、追加したいファイルについて git add コマンドを実行したあとで git commit コマンドを行います。
git管理を辞めたい(ローカルリポジトリを削除したい)ときは .git/ ディレクトリ毎削除すれば良い。
# リポジトリをクローンしたいディレクトリで行う
e.g., $ git clone https://github.com/username/project_name
以下コマンドの挙動
* まず project_name というディレクトリを作成
* その中で .git ディレクトリを初期化(git init
)
* リポジトリのすべてのデータを引き出し、最新バージョンの作業コピーをチェックアウトする
-a
オプションを付けるとgit add
を省略できる (追跡対象となっているファイルを自動的にステージしてコミットする)git reset
との違いは変更の履歴が残る点 (コミットするので)git revert -m 1 3865edf
e.g. 現在のディレクトリ内のすべてのファイルを復元する
$ git restore .
e.g. 特定のファイルを復元する
$ git restore --staged hello.c
git rm
を実行すると、ファイルの削除がステージされるファイル自体は作業ツリーに残しつつステージングエリアからの削除だけを行う (以下「Git - 変更内容のリポジトリへの記録」より抜粋)
つまり、ハードディスク上にはファイルを残しておきたいけれど、もう Git では追跡させたくないというような場合のことです。 これが特に便利なのは、.gitignore ファイルに書き足すのを忘れたために巨大なログファイルや大量の .a ファイルがステージされてしまったなどというときです。 そんな場合は --cached オプションを使用します。
$ git rm --cached README
ファイル名やディレクトリ名、そしてファイル glob パターンを git rm コマンドに渡すことができます。 つまり、このようなこともできるということです。$ git rm log/*.log
「*」の前にバックスラッシュ () があることに注意しましょう。 これが必要なのは、シェルによるファイル名の展開だけでなく Git が自前でファイル名の展開を行うからです。 このコマンドは、log/ ディレクトリにある拡張子 .log のファイルをすべて削除します。 あるいは、このような書き方もできます。$ git rm *~
このコマンドは、~ で終わるファイル名のファイルをすべて削除します。
git diff --cashed
と同義git push [remote-name] :[branch-name] でも可
リモートリポジトリからブランチを削除する
git log --oneline --decorate
% git log --oneline --decorate
fb3fcb0 (HEAD -> main, origin/main, origin/HEAD, testing1) Add a message to README.md
3babbc1 Initial commit
# HEAD -> main となっている = 現在の作業ブランチは main という意味
リモート追跡ブランチ一覧表示
ローカルブランチとリモートブランチの両方を表示
ブランチを削除
-r
と組み合わせるとリモートブランチ追跡ブランチを削除する
リモートリポジトリのブランチを削除
-b
オプションをつけるとブランチの作成と同時にチェックアウトできる (git checkout -b feature/add_registration
)e.g.
$ git checkout ceef55d
# 元のコミットやブランチ名を指定すれば現在の状態に戻る
$ git checkout [branch-name]
e.g. when you want to merge "test1" into "main"...
# main にチェックアウトして行う
# 統合したいブランチ名を引数に置く
$ git merge test1
git stash pop
で復元できるCrieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?
コメント