有没有办法在使用"git push remote_name"时排除某些目录。
例如,我在存储库中有以下文件夹/文件结构:
/applications/
/libs/
/themes/
/misc/
/index.php
/robots.txt
/sitemap.xml
当我在本地工作时,我会将我所做的所有更改提交到任何文件/文件夹,但是当我需要将所有内容"推送"到远程服务器存储库时,我想排除某些文件和文件夹,例如"/themes/"文件夹和robots.txt文件
总结:在本地,我"提交"了所有内容,但是当我需要执行"git push"时,我希望能够排除文件夹和文件。
我希望这是有道理的。
谢谢
不,你不能用 Git 做到这一点。在 Git 中,每个提交都被视为一个原子实体;您无法选择要推送的特定提交的部分。
如果你想分解你的仓库,这样有些东西只在本地跟踪,而一些东西被推送到服务器,你应该为每个部分使用单独的仓库,可能使用 Git 子模块链接在一起。
您应该保留一个单独的分支,该分支与您希望在远程存储库上拥有的分支相匹配。 例如,在主服务器上工作,切换到my-public-branch,从主节点上挑选/合并/变基,推送到远程,切换回主节点以进行更多工作。