- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
Git 在很多操作中都有 --force
标志,但是当我使用它们时,我觉得有点奇怪。就像忽略我的代码中的警告消息一样。
例如,我只是想取消暂存文件并执行了以下操作:
git rm --cached myfile.ext
git 报错:
the following file has staged content different from both the file and the HEAD
我真的不关心这个错误,它似乎不是问题 - 我只想保持我的代码不变,但取消暂存文件。 --force
标志简单地解决了这个问题。
我的问题是关于最佳实践的问题,因为我无法找到有关此问题的任何信息 - 应该在 git 命令中使用强制标志还是一种不好的实践?
更新
我发现了我的这个问题,并且有一些见解,我对任何感兴趣的人都有用。
force
标志类似于 git(或任何类似软件)中的 yes/no
对话框。就像在做一些可能会失败或损坏的事情时,我们通常会看到 yes/no
对话框。所以 git
等同于 yes
是 --force
这回答了我的问题,即 force
标志的使用只是一个正常的例程.
最佳答案
--force
并不意味着捕获机会尝试可能会出错的事情,而是在意识到可能的冲突的情况下强制采取行动。所以我同意使用 --force
不是一个坏习惯。
您经常想要的正是:覆盖一些 git 命令已就位的检查,以防止您做一些愚蠢的事情。如果您注意到警告并知道命令会成功,那么使用 force
并没有什么不好。参见 the docs (或命令行上的 git 帮助页面)查看每个命令覆盖的内容。
另一个用例是在从您不想或无法处理用户交互的脚本运行命令时避免确认提示。
关于GIT:应该使用武力吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19090483/
我是一名优秀的程序员,十分优秀!