Git:撤消本地更改;混帐添加。 + 混帐室?

标签 git git-reset git-add git-rm

需要帮助找出 Github 的一些常见工作流程。我来自 VS TFS 背景,所以请原谅我。

撤消挂起的更改

假设我已经将一个 git 存储库克隆到我的本地文件系统。此时,项目的本地文件与远程存储库中的内容完全匹配。

然后我决定对代码进行一些更改,并更改几个文件的本地版本。在做了一些测试之后,我发现我想放弃我的本地更改并将本地文件恢复到它们在远程存储库中的状态。

如何撤消这些本地更改,将它们恢复到存储库中的当前版本?

提交所有更改

每当我在我的存储库克隆中修改本地文件的内容,或添加新文件,并想推送更改时,我发出“git add .”、“git commit”和我的评论,然后“git push”到我的主人。

但是,当我在本地删除存储库中跟踪的文件时,“git add”。不捕获 rm 更改。相反,我必须在“git commit”更新存储库之前“git rm [文件名]”。不过,我总是忘记这样做。

是否有一个 git 命令可以“git add”。和“git rm”我在本地删除的任何文件,一步?在修改了本地文件并删除了几个文件之后,我想在“git commit”之前发出一个命令来捕获我的所有更改。

最佳答案

How do I undo these local changes, restoring them to the current versions in the repository?`

git reset --hard

(这会将您的索引和工作目录重置为 HEAD)

Is there a git command that will git add . and git rm any files I've deleted locally, in one step?`

git add -u

(它不会添加新文件)

如果你想添加新文件,删除 rm 的文件,并对文件进行暂存修改:

git add -A

关于Git:撤消本地更改;混帐添加。 + 混帐室?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7770364/

相关文章:

python - git filter repo - 未找到 Python - 但已安装

git - 使用GGTS在Git上共享Grails项目,空文件夹

git - 我丢失了自述文件,因为我在本地执行了 'git push --force' 但我不知道如何取回它。自述文件是在远程创建的

git - 使用未提交的文件撤消 git reset --hard

git - 文件中特定行号以下的阶段更改

git - 如何让 git add -p 接受击键而不等我按 Enter 键?

Git 日志 : log of future revisions

Git 生产/暂存服务器工作流

git - 为什么 git reset commit + git push 会导致当前分支的提示落后于远程?

git - 如何在git中递归添加特定文件?