diff --git a/src/levels/remote/fetch.js b/src/levels/remote/fetch.js index 257d066c..860b9bac 100644 --- a/src/levels/remote/fetch.js +++ b/src/levels/remote/fetch.js @@ -531,6 +531,79 @@ exports.level = { } } ] + }, + "ja": { + "childViews": [ + { + "type": "ModalAlert", + "options": { + "markdowns": [ + "## Git Fetch", + "", + "リモートGitを用いた作業は、本当にただ単なる他のリポジトリ_への_、または他のリポジトリ_からの_データの転送に集約されます。コミットを転送できる限り、Gitで管理されている全ての種類の更新が共有できます(例えば作業や、新しいファイル、新しいアイデア、ラブレターなどです)。", + "", + "このレベルでは、リモートリポジトリ_から_どうやってデータを取ってくる方法を学びます -- このコマンドは`git fetch`と名付けられています。", + "", + "リモートリポジトリの情報を私たちが更新するように、_リモート_ブランチも情報を更新することができることが分かるでしょう。これは前のレッスンでのリモートブランチの働きに結びつきます。" + ] + } + }, + { + "type": "GitDemonstrationView", + "options": { + "beforeMarkdowns": [ + "`git fetch`の説明に入る前に、その動作を見てみましょう。ここに、ローカルリポジトリにない二個のコミットを含んでいるリモートブランチがあります。" + ], + "afterMarkdowns": [ + "やりました!`C2`、`C3`コミットがローカルリポジトリにダウンロードされ、`o/master`リモートブランチに反映されました。" + ], + "command": "git fetch", + "beforeCommand": "git clone; git fakeTeamwork 2" + } + }, + { + "type": "ModalAlert", + "options": { + "markdowns": [ + "### fetchとはどのようなものか", + "", + "`git fetch`は、主に二つのステップだけで動作します。それは以下のようなものです:", + "", + "* リモートにあってローカルリポジトリにないコミットをダウンロードする", + "* リモートブランチの位置を更新する(例えば、`o/master`)", + "", + "`git fetch`は本質的には、_実際_のリモートリポジトリと同じように見えるような形でリモートリポジトリの_ローカル_の情報に同期します(ちょうど今のように)。", + "", + "あなたは前のレッスンでのことを覚えていると思いますが、リモートブランチはリモートリポジトリと最後に同期した時での状態を保持しているという話をしました。`git fetch`はそのリモートと同期する方法なのです!これでリモートブランチと`git fetch`の関係性は明らかになったでしょう?", + "", + "`git fetch`は、通常インターネットを通してリモートリポジトリと対話します(`http://`または`git://`プロトコル経由で)。", + "" + ] + } + }, + { + "type": "ModalAlert", + "options": { + "markdowns": [ + "### fetchがしてくれないもの", + "", + "`git fetch`は、しかしながら、_あなたの_ローカルの状態は変更しません。あなたの`master`ブランチや他のもの、今現在のあなたのファイルシステムが見せているものを更新しないのです。", + "", + "これは理解する上で重要なことです。なぜなら、多くの技術者は`git fetch`がリモートの状態をローカルの作業場に反映してくれると思っているからです。必要なデータはダウンロードされるかもしれませんが、ローカルのファイルを実際に変更するというようなことは_してくれない_のです。私たちは、この後のレッスンでもこのようなコマンドを学びます:D", + "", + "なので、この1日が終わる頃には、あなたは`git fetch`のダウンロードステップの動作が分かるようになるでしょう。" + ] + } + }, + { + "type": "ModalAlert", + "options": { + "markdowns": [ + "このレベルを終えるには、単に`git fetch`を実行し、全てのコミットをダウンロードしてください。" + ] + } + } + ] } } };