关于Git操作的重新开始
请用中文重新表达以下内容,只需给出一个选项:
文章的目标
- 作業のやり直しについて記載
我根据《Pro Git》创建了一篇文章。
为了方便以后对文章进行修订,我将它从原始文章中分离出来。
为了方便以后对文章进行修订,我将它从原始文章中分离出来。
The text at hand. (此篇文字)
-
- 行った変更を取り消すための基本的なツールについての説明
- 注意点:ここで扱う内容の中には「やり直しのやり直し」ができないものもある。
“重做” – 修改”
经常出现的需要重新开始的情境
-
- コミットを早まりすぎて追加すべきファイルを忘れてしまった
- コミットメッセージが変になってしまった
–关于修正的内容
-
- このコマンドは、ステージングエリアの内容をコミットに使用します。
- コミットの直後にこのコマンドを実行したような場合、スナップショットの内容はまったく同じでありコミットメッセージを変更することになります。
もう一度やり直したい場合には **--amend** オプションをつけてもう一度コミットする。
$ git commit --amend
- いったんコミットした後、何かのファイルをステージするのを忘れていたのに気づいた場合
$ git commit -m 'initial commit'
$ git add forgotten_file
$ git commit --amend
- 最終的に出来上がるのは一つのコミットです。2番目のコミットが、最初のコミットの結果を上書きするから。
2. 取消已经暂存的文件 “git reset <文件名>”
处理有关分期区域和工作目录更改的操作
如果打算更改两个文件并将它们分别作为不同的提交,但不小心输入了 git add *,那么会怎么样?
问题:「文件都被暂存了。怎样解除其中一个文件的暂存状态?」
Alternatively:
问题:「文件都被暂存了,如何解除其中一个文件的暂存状态?」
$ git add *
$ git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
renamed: README.md -> README
modified: CONTRIBUTING.md
git status 告诉我当前的状态。
写了 git reset HEAD 。
按照建议撤销 CONTRIBUTING.md 文件的暂存。
$ git reset HEAD CONTRIBUTING.md
Unstaged changes after reset:
M CONTRIBUTING.md
$ git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
renamed: README.md -> README
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working
directory)
modified: CONTRIBUTING.md
CONTRIBUTING.md文件已恢复到未暂存的修改状态。
3. 取消对文件的更改,使用命令 “git checkout –<文件名>”。
・可以撤消对文件的更改。
・可以将状态恢复到最近一次提交的状态,或者恢复到首次克隆或首次获取工作目录时的状态。
・git status 命令可以告诉你如何使用。
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working
directory)
modified: CONTRIBUTING.md
按照写着的方法去尝试一下
$ git checkout -- CONTRIBUTING.md
$ git status
On branch master
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
renamed: README.md -> README
“git checkout — [file]”是一个危险的命令。所有对该文件所做的更改都将被清除。除非确定该文件是不需要的,否则请不要使用该命令。
如果你想要的是”把改动加入文件,但又想暂时移到一边”,那么可以尝试查看”stash”或分支。一般来说,这更为推荐。
文献引用
- Pro Git ver.日本語訳
有关Git的链接
- Gitを理解するためにProGitを読んでみた。