Lets say you have a system where you have an unmodified upstream source, and a 
set of patches to get that upstream source to run on your system.

As I understand it, there are two ways to deal with this in Git:

1. One branch is the upstream's release. This may be a full clone of the 
upstream git repository. A second branch is the local port.

In this model, after updating the upstream, you then checkout local, and merge 
upstream into it. Resolve conflicts from changes in the upstream, test the 
result, commit new patches to local, and then have a "working" system. Your 
"changeset" is the difference from the upstream to the latest in local. You 
have a full history of everything your changeset has ever done, but your total 
history is a bit messy.

2. You have a continually rebased set of patches. At any time, there is a 
straight line of changes from the last upstream release to the current local 
port.

In this model, there is no historical record/changeset to your changeset; each 
release of your local port changes winds up looking independent of all prior 
changes. However, your histories for each version's localization is easy to 
read.

Am I understanding these tradeoffs correctly? Is there a better way to keep 
track of how your changes for porting a program to a new system have changed 
over time?

---
Entertaining minecraft videos
http://YouTube.com/keybounce

-- 
You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to