Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>This is a similar pattern to maintaining a local patch set to an upstream project you don't control. The easiest way to handle this is to have an intermediate branch that all changes get merged through, like this:</p> <pre><code>___________________________ master \__________________________ config-changes \_____________________ daily-work </code></pre> <p><code>master</code> contains everything that is to be shared. The only things committed in <code>config-changes</code> are changes you want to be able to revert easily when they are shared. <code>daily-work</code> is the branch you do all your work in. To set it up, do:</p> <pre><code># (no local config changes should be in master at this point) git checkout -b config-changes master # Make your config-related changes that you don't want to share git commit -am "Made local config changes" git checkout -b daily-work # Work and commit like normal </code></pre> <p>When you're ready to share your changes, do:</p> <pre><code>git rebase --onto master config-changes daily-work git checkout master git merge daily-work </code></pre> <p>That will revert all the changes made in <code>config-changes</code>, but otherwise make it look like you branched directly from <code>master</code>. Note that after you do this rebase, if you want to continue to work in <code>daily-work</code>, you need to rebase it back onto <code>config-changes</code>, but it's really better to create a new branch for each change.</p> <p>When you need to pull down new changes from <code>master</code>, do:</p> <pre><code>git checkout master git pull git checkout config-changes git merge master </code></pre> <p>The merge reapplies your local config changes onto the latest master. You're then free to create a new <code>daily-work</code> branch, or merge <code>config-changes</code> into the old one, as appropriate. Basically, you never merge directly from <code>master</code> into <code>daily-work</code>. You always go through <code>config-changes</code> first.</p> <p>It seems like a lot of work at first, but once you do it once or twice you'll see it's a lot easier than maintaining the changes manually.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload