是否有一个 Git 命令(或一小段命令)可以安全可靠地执行以下操作?
- 摆脱任何本地更改。
- 如有必要,从原点获取给定的分支
- 结帐给定的分支?
目前我被困在:
git fetch -p
git stash
git stash drop
git checkout $branch
git pull
但这让我很困扰,因为我被要求输入密码两次(由fetch
和pull
)。一般来说,只要密码只需要一次,我就会对任何解决方案感到满意。
几点注意事项:
- 它是应用程序自制部署脚本的一部分(代码托管在 GitHub 上)。
- 分支是否已经从源获取应该没有区别(即,新分支的第一次部署理想情况下不应该需要任何额外的步骤)。
- 该脚本位于可以由多人访问的远程计算机上,因此不存储凭据并且必须输入用户/密码(但如果可能只输入一次)。
- 我不关心任何本地更改;我总是想要给定分支的原始副本(部署脚本的另一部分会产生本地更改)。
- 我无法每次都克隆或导出新的存储库;这需要太多时间。