git - how to auto export files when merge a branch? -
i'm working website using git repository 2 branches master-branch , dev-branch.
i work in dev-branch , when things go fine merge master-branch. , need copy whole dir deployment directory or upload server.
i know if there way automatically export/copy files/changes directory every time merged/commit master-branch?
i know there kind of nodejs plugin watches directory , auto upload files deployment server when files inside changed. didn't try them.
i appreciate if have better way upload them without running nodejs app, or using git itself.
thanks.
you set post-merge hook task you. however, hook run when git merge might not best solution general use.
i set small script me.
first, have build list of files modified. can done git diff:
git diff --name-only $fromrev..$torev > filelist where
$fromrevold revision (i.e. last revision created archive)$torevnew revision (i.e. current state want export)filelisttemporary file hold file names zip later
this list of files use git archive create archive modified files:
git archive --format zip --output /full/path/to/archive.zip $torev $(cat filelist) this instructs git create zip archive called archive.zip @ directory /full/path/to/. revision zipped $torev. in addition, not files zipped contained in filelist.
or, one-liner:
git archive --format zip --output /full/path/to/archive.zip $torev $(git diff --name-only $fromrev..$torev) you manually call script whenever think shall exported , feed in fromrev, torev , /full/path/to/archive.zip
Comments
Post a Comment