我在git版本控制下有项目。我的文件结构如下:
.git
build
server
models
controllers
views
site
css
js
img
.gitignore
在“服务器”和“网站”文件夹中包含未准备好生产的源代码。我使用grunt为生产准备js css(concat和min),它将准备好的文件放在'build'文件夹中生成,所以在grunt之后它会是这样的:
build
server
models
controllers
views
site
css // min
js // min
img // sprites
之后我将'git commit'和'git push'发送到远程生产服务器。但与我的构建文件夹git一起推送我的源代码('server'和'site'文件夹在build文件夹之外)。这是正确的,因为git版本化了应用程序文件夹下的所有文件。但我需要排除推送这些文件夹以推送到服务器。
我该怎么做?谢谢!
答案 0 :(得分:0)
我觉得你可以有一个可以释放的分支。所以假设你有一个分支production
,它有自己的.gitignore
文件,所以你只会推送你需要的东西。
我这样做的方式
mkdir project
cd project
git init
vi .gitigore
type something and save
git commit -a -m "first commit"
git checkout -b release
vi .gitignore
change content of file
git commit -a -m "update for release"
就是这样: - )