我正在移动构建过程以使用mercurial并希望将工作目录恢复到最新修订的状态.早期的构建过程运行将修改一些文件并添加一些我不想提交的文件,因此我有本地更改和未添加到存储库的文件.
什么是丢弃所有这些并获得具有最新版本的干净工作目录的最简单方法?
目前我这样做:
hg revert --all
<build command here to delete the contents of the working directory, except the .hg folder.>
hg pull
hg update -r MY_BRANCH
Run Code Online (Sandbox Code Playgroud)
但似乎应该有一个更简单的方法.
我想做的相当于删除repo,进行新的克隆和更新.但是回购太大了,不够快.
ang*_*son 206
这些步骤应该可以缩短为:
hg pull
hg update -r MY_BRANCH -C
Run Code Online (Sandbox Code Playgroud)
该-C
标志告诉update命令在更新之前丢弃所有本地更改.
但是,这可能仍会在您的存储库中留下未跟踪的文件.听起来你想要摆脱那些,所以我会使用purge
扩展:
hg pull
hg update -r MY_BRANCH -C
hg purge
Run Code Online (Sandbox Code Playgroud)
在任何情况下,没有一个命令可以让Mercurial执行,它会执行您想要的所有操作,除非您将进程更改为您说不能执行的"完全克隆"方法.
zer*_*kms 112
hg up -C
Run Code Online (Sandbox Code Playgroud)
这将删除所有更改并更新到当前分支中的最新头.
您可以打开清除扩展程序,以便能够删除所有未版本控制的文件.
KCD*_*KCD 10
要在没有清除扩展名的情况下删除未跟踪的*nix,您可以使用
hg pull
hg update -r MY_BRANCH -C
hg status -un|xargs rm
Run Code Online (Sandbox Code Playgroud)
哪个使用
更新-r --rev REV修订版
更新-C - 清除未提交的更改(无备份)
status -u --unknown仅显示未知(未跟踪)的文件
status -n --no-status隐藏状态前缀
归档时间: |
|
查看次数: |
151042 次 |
最近记录: |