是否有一个 Git 命令(或者一个简短的命令序列)可以安全地执行以下操作?
- 去掉所有的局部变化。
- 如果需要,从原始分支获取给定的分支
- 检查给定的分支?
目前我被困在:
git fetch -p
git stash
git stash drop
git checkout $branch
git pull
但是它困扰着我,因为我被要求密码两次(由 fetch
和 pull
)
一些注意事项:
- 它是自制的应用程序部署脚本的一部分(代码托管在 GitHub 上)。
- 如果分支已经从原来的地方获取了或者没有获取,那么应该没有什么区别(例如,一个新分支的第一次部署理想情况下不应该需要任何额外的步骤)。
- 这个脚本位于一个可以由多个人访问的远程计算机上,因此不存储凭据,并且必须输入用户/密码(如果可能的话,只输入一次)。
- 我不关心任何本地更改; 我总是希望获得给定分支的原始副本(部署脚本的进一步部分产生本地更改)。
- 我不能每次都克隆或导出一个新的存储库; 这需要花费太多的时间。