はじめてのリポジトリ、一歩ずつ
リポジトリを作り、バージョンを保存し、履歴を見て、失敗を取り消す。すべての考え方を説明します。
Search for a command to run…
リポジトリを作り、バージョンを保存し、履歴を見て、失敗を取り消す。すべての考え方を説明します。
このガイドでは小さなプロジェクトをゼロから作ります。その過程で、zev のすべての土台になる4つの考え方を学びます: 作業フォルダー、ステージングエリア、コミット、そして履歴です。
まだ zev をインストールしていない場合は インストール から始めてください。
mkdir notescd noteszev initInitialized empty Zev repository in ./.zev/リポジトリとは、zev が履歴を管理しているフォルダーです。履歴はすべて隠しフォルダー .zev にあります。手で編集しないでください。削除すると普通のフォルダーに戻り、履歴は失われます。
名前とメールアドレスをプロジェクトごとに一度設定します。すべてのコミットに記録されます:
zev config set user.name "山田 花子"zev config set user.email "hanako@example.com"| 場所 | 何か | どうやってそこに入るか |
|---|---|---|
| 作業フォルダー | エディターで見ているファイル | あなたが編集する |
| ステージングエリア | 次のコミットのために選んだ変更 | zev add |
| 履歴 | 作ったすべてのコミット。ずっと保存される | zev commit |
偶然に履歴へ入るものはありません。何をステージするかを選び、それをコミットします。
ファイルを2つ作ります:
echo "牛乳を買う" > todo.txtecho "プロジェクトのアイデア" > ideas.txtzev statusOn branch mainUntracked files: (zev add <file> to start tracking; list in .zevignore to hide) ideas.txt todo.txtUntracked は、zev がファイルを見てはいるものの、まだ履歴を管理していないという意味です。両方をステージしてコミットします:
zev add .zev commit -m "メモを始める"表示される長い文字列はコミットの ID です。コミットの中身すべてから計算した指紋(ハッシュ)なので、他のコミットと混同されることはありません。最初の数文字、たとえば 5f7f5e22 を書けば十分です。
よいコミットメッセージは、何をなぜ変えたかを短く書きます。「修正」より「パスワードに空白があるとログインできない問題を修正」のほうが後で役立ちます。
echo "パンを買う" >> todo.txtecho "アリに電話" > calls.txtzev statuszev diffmodified: todo.txt@@ -1,1 +1,2 @@ 牛乳を買う+パンを買う+ は追加された行、- は削除された行です。@@ -1,1 +1,2 @@ の行はファイル内の場所を示します。最初は気にしなくて大丈夫です。
todo.txt だけをコミットし、calls.txt は後に残します:
zev add todo.txtzev diff --stagedzev commit -m "リストにパンを追加"zev diff --staged は、次のコミットに入る内容を正確に表示します。コミット前に確認する習慣をつけましょう。
zev logzev log --oneline一番新しいコミットが上です。一つのコミットとその変更を見るには:
zev show 5f7f5e22 # ID の先頭でzev show HEAD # 最新のコミットzev show HEAD~1 # その一つ前HEAD は「今いるコミット」のことです。HEAD~1 はその一つ前、HEAD~2 は二つ前です。
誰でも失敗します。よくある失敗からの抜け出し方です。
ステージしていない変更を捨てる(最後のコミットの状態に戻す):
zev restore todo.txt注意: 捨てた変更はコミットされていないので、元に戻せません。
ファイルのステージを取り消す(編集は残し、次のコミットから外す):
zev restore --staged todo.txt変更を一時的に退避する:
zev stashzev stash pop # 戻す誤って消したファイルを戻す(以前にコミットされていれば):
zev restore calls.txtzev rm ideas.txtzev commit -m "アイデアを削除"名前を変えるには、普通に名前を変えてから、古い名前と新しい名前の両方をステージします:
mv calls.txt phone.txtzev add calls.txt phone.txtzev commit -m "calls を phone に名前変更"ビルド結果、ログ、秘密情報は履歴に入れるべきではありません。プロジェクトの一番上のフォルダーにある .zevignore というファイルに書きます:
node_modules/build/*.log.env無視されたファイルは zev status に表示されず、zev add . もスキップします。.zevignore 自体はコミットして、全員が同じファイルを無視するようにしましょう。