|
|
|
The good news on this issue is work has already progressed to free up the patch format to allow us to implement personal builds for git using built-in git commands. However, as this work is part of larger personal build updates for Pulse 2.1, this feature will require 2.1.
Implemented in change 6113. The patch is created by git diff and applied with git apply. We also parse enough of the patch format to show which files were changed (and how) in the Pulse UI. Determining the diff that you want to apply is less obvious than with other SCMs. The approach taken is to pick a default, but also allow you to specify the commit range that we should pass to git diff if you like. So, by default, Pulse tries to figure out what remote branch you are tracking, and what changes you have committed in your local repository since the last pull. This is not going to work in lots of circumstances, but you can also specify what to diff as follows:
pulse personal : Create a patch for staged changes (git diff --cached) pulse personal :<commit> Create a patch for the differences between commit and HEAD (git diff <commit>) pulse personal :<commit>..<commit> Create a patch for the differences between two commits (git diff <commit>..<commit>) You can also specify files after any of the above forms to restrict the diff to those files. In the future we also plan to support submitting your own patch file, so you can run git diff directly if you need/prefer (of course you don't get the full personal workflow in that case, but you will get some -- such as choosing the revision to build against -- when you submit). The main caveat at the moment is that changes to the Pulse file for versioned projects will not take effect in the personal build. This requires more rework and/or more internal understanding of the git patch format. Any chance of this working for binary files?
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
Thanks for the request. We are also very interested in evolving our git plugin to cover further capabilities, and hope to work on it during the next few weeks in further 2.0 builds.