Git 将被忽略的目录移动到其他分支

Git 将被忽略的目录移动到其他分支,git,github,gradle,branch,Git,Github,Gradle,Branch,我目前正在做一个使用Gradle的项目。项目存储库位于GitHub上,有两个主要分支:master用于实际的源文件,而gh页面用于GitHub页面。他们彼此完全独立,有着不相关的历史 现在我想在GitHub pages站点上托管文档文件(即JavaDoc文件),因此我需要将生成的文档文件放在gh pages分支上。但是,在master分支上忽略了构建文档后文档所在的目录,因为我不想将其推送到主存储库分支-只推送到GitHib页面分支 因此,一旦我签出到gh页面,生成的文件就消失了(分别被文档分支

我目前正在做一个使用Gradle的项目。项目存储库位于GitHub上,有两个主要分支:
master
用于实际的源文件,而
gh页面
用于GitHub页面。他们彼此完全独立,有着不相关的历史

现在我想在GitHub pages站点上托管文档文件(即JavaDoc文件),因此我需要将生成的文档文件放在
gh pages
分支上。但是,在
master
分支上忽略了构建文档后文档所在的目录,因为我不想将其推送到主存储库分支-只推送到GitHib页面分支

因此,一旦我签出到
gh页面
,生成的文件就消失了(分别被文档分支中的文件覆盖)


是否有任何方法可以将被忽略的文档文件从
master
分支移动(合并、签出等)到GitHub pages分支,而无需在切换分支之前将其移出存储库?

听起来好像
git stash
可以做您想做的事情:

第1步:生成文档

步骤2:
git状态
显示您在
docs/…

步骤3:启动
git add docs/
,然后启动
git stash
,git将记录所有更改,但将工作环境恢复到上次提交时的状态

第4步:使用
git checkout gh pages切换到gh页面

第5步:您可以使用
git stash pop

步骤6:您可以提交这些更改


简而言之:
git stash
清除所有内容,这样您就可以切换分支,但它会记住更改,您可以在另一个分支上再次“合并”它们。你也可以创建多个隐藏,但很快就会搞砸,所以一定要使用
git stash pop
,它不仅会应用最新的更改,还会将它们从其隐藏索引中删除。

我不得不强制执行
git add
,因为在master上忽略了目录,但它仍然有效!谢谢!啊,是的,如果您已将
文档
添加到您的
.gitignore
中,这是有意义的。没问题!