推送到远程服务器的GIT排除文件夹/文件

时间:2012-05-25 15:49:08

标签: git git-push git-commit

使用“git push remote_name”时是否有办法排除某些目录。

例如,我在存储库中有这个文件夹/文件结构:

/applications/
/libs/
/themes/
/misc/
/index.php
/robots.txt
/sitemap.xml

当我在本地工作时,我将所做的所有更改提交给任何文件/文件夹,但是当我需要将所有内容“推送”到远程服务器存储库时,我想要排除某些文件和文件夹,例如“/ themes” /“folder and robots.txt file

摘要:本地我“提交”所有内容,但是当我需要执行“git push”时,我希望能够排除文件夹和文件。

我希望这是有道理的。

由于

2 个答案:

答案 0 :(得分:3)

不,你不能用Git做到这一点。在Git中,每个提交都被视为一个原子实体;你无法挑选和选择特定提交的部分内容。

如果要分解存储库,以便某些东西只在本地跟踪,而某些东西被推送到服务器,则应为每个部分使用单独的存储库,可能使用Git子模块链接在一起。

答案 1 :(得分:1)

您应该保留一个与您希望在远程存储库上匹配的分支。例如。在master上工作,切换到my-public-branch,从主人那里挑选/合并/ rebase,推送到远程,切换回master以进行更多工作。