我有我的本地Git仓库,我将我的团队作为中央仓库推送给Github。
然后我有一个远程暂存区域,它有整个裸仓库和后接收挂钩,可以将我的更改推送到网络上。为此,我使用'git push staging master'将站点放到暂存区域。
我的项目包含一个src/
目录,用于存储我的gulp文件和sass文件。然后我使用gulp编译并生成我的dist/
目录。
我显然不希望我的dist/
内容在Github回购中,因为这会导致疯狂的冲突并且不需要在那里,但我确实希望在我的远程网站中回购生产。我该怎么做呢?
我已经考虑过为每个遥控器设置单独的.gitignore
文件,但这没有任何意义,因为它几乎击败了Git,我也认为它甚至不是我的选择谷歌搜索了一下。
答案 0 :(得分:1)
虽然你的问题有点宽泛,但这是你可以开始的基线。
您希望始终忽略dist
目录,并在检出最新版本后使服务器(登台或prod)触发npm install
。
此外,如果您使用的是yarn或npm v5,请提交它生成的yarn.lock
或package-lock.json
文件。
然后,使用npm的gulp build
钩子触发你的post-install
。
您还可以使用husky,这是一个自动安装在.git
目录中的npm模块,允许您根据scripts
属性中的命令定义和版本git挂钩{1}}。
package.json