我对Git有些新意,所以我仍然坚持工作流程。基本上,我认为我将使用两个主分支机构。一个用于保存所有我的dev文件(Master),另一个用于保存服务器上生产所需的文件(Production)。所以结构看起来像这样。
DbContext
但是,并非所有文件都必须位于Production分支上。所以我有一些我想弄清楚的事情......第一个,我如何限制哪些文件被推送到生产分支?
Me - Commits - Master Branch - Production Branch
因此,例如,生产中不需要带*的项目。我如何排除它们?而且,我是否想要拉/克隆FROM master到生产,或者推送TO生产?
任何工作流程提示都会很棒!谢谢!
答案 0 :(得分:0)
签出分支时,该文件夹包含此分支的文件,仅包含它们。因此,只需签出您想要处理的分支,创建/编辑文件,添加它们,提交它们,它们就是这个分支的一部分(而不是另一个分支)。
然后你可以结帐另一个分支。文件夹的内容发生变化,这些其他文件“消失”,因为它们不属于此分支。创建/编辑其他文件,添加它们,提交它们,它们将成为该分支的一部分(而不是另一个)。
合并分支时,您可以选择要使用的文件。在这种情况下,只需选择您想要保留在主分支中的那些。
答案 1 :(得分:0)
您可以添加.gitignore
文件中的所有条目,如果您没有此文件,请转到您的git repo目录并运行此touch .gitignore
。
在此文件中添加要忽略的条目,此文件中的条目示例为
# compiled output
/dist
/tmp
# dependencies
/node_modules
# IDEs and editors
/.idea
.project
.classpath
.c9/
*.launch
.settings/
提交时将忽略所有这些文件和目录
答案 2 :(得分:0)
您可以删除相应的文件(仅在已添加的情况下)。 如果您不需要的文件已暂存,则可以执行以下命令:
git rm --cached test.py Install.md
取消他们,然后:
git add master.py presets.py other_scripts
git commit -m "Only needed files."
git push productionBranch
如果您认为永远不需要将这些文件推送到任何分支,则可以将其名称添加到.gitignore
:
presets.py
other_scripts