git - 取消跟踪文件但不删除它
问题描述
如何取消跟踪文件但不从上游删除它?
当我尝试这样做时:git rm --cached "file"
然后它说它已删除。
然后我添加并提交并推送它。现在该文件已从上游删除。
这不是我想要的。我希望它仍然在上游,但不再跟踪我本地的更改。这可以做到吗?
解决方案
你要:
git update-index --skip-worktree <path-name>
这将忽略所有本地更改,但仍会跟踪其他遥控器中的文件。这还有一个额外的好处,即显示远程上的该文件是否发生更改,并正确管理它 - 显示与本地的冲突等。
不要使用--assume-unchanged
- 这没有这些保护措施,并且会在远程更改文件时覆盖您的本地更改而不发出警告,然后重新开始重新跟踪它。
有关差异的更多信息,请参阅此和链接的博客文章。
推荐阅读
- javascript - 设置超时功能奇怪地与包含清理的 useEffect 挂钩重叠?图像轮播
- javascript - 在 React 文档时钟示例中添加一个按钮来停止计时器
- python - Pandas 合并 2 个键,第二个键返回第一个原始正确的第二个 Nan
- c++ - 有什么方法可以让 split_regex 接受 const 字符串作为输入?
- javascript - 查询搜索中的 Elasticsearch Node.js 日期运算符
- git - 拉取请求显示实际未更改的已更改文件
- acumatica - 向 Acumatica 提交销售订单时出错
- regex - 正则表达式匹配除字符之外的任何内容(包括空字符串)
- android - react-native-image-picker+axios 在 Android 上上传失败
- javascript - 初始化一次后如何导出变量?