我有一个客户,要处理一堆杂乱的事情,我想把它们藏起来,以便保持原始状态,但是以后可以回到混乱状态。我想藏起来然后恢复的东西可能包括:
.gitignore
范围内的事物git add -N
)简而言之,我希望通过使用git clone
创建一个新客户端并在那里进行工作而获得相同的效果,但是全部都在同一客户端中。
编辑:在特定情况下,诸如git stash -a
之类的东西无法完成我想要的事情:
touch new_file
git add -N new_file
git stash -a
导致错误并使stash
完全不执行任何操作。
可以用git stash -a
存储所有已跟踪,未跟踪和忽略的文件。这是git stash
可用的最完整的选项。
如果需要更复杂的功能,或者需要其他功能,例如保留可执行位以外的权限,那么您就只能将文件复制到另一个目录或使用tar
。
您还可以使用git branch
创建具有相同历史记录的另一个分支,并使用git worktree
将其检出到其他位置,然后将文件复制过来。