Quote from: JanetC on Fri 20/12/2013 14:50:45
It is not related to my AGS repository, which is heavily mucked about with to make mobile games. It is derived from the main AGS port at:
https://github.com/adventuregamestudio/ags
Is there a way that the porting engineer (Edward) could push his changes back there to a separate branch? I assume we want to use his changes if we can, to make the port native Mac compatible from now onward. I'm not an expert on Git. Is this a good idea? Would he need permissions to do this?
Oh, I see.
He should not push his changes directly in our main branch, because we need to check the code difference first to make sure that merging won't break our own version of the code.
Sharing code between repositories on GitHub is done using "pull requests". This is when a person has his own repository and he creates a request to merge one of his branches into one of the other people's branches (not necessarily matching ones).
If Edward used git to maintain changes history all the way, then it should not be a problem for him to create his personal GitHub repository, put the changes there, then make a pull request from his to ours.
I don't know how much has changed, maybe we will need to keep the code in a separate branch at first. We are preparing a 3.3.0 release now, and it will be not good to mess the code up. On other hand, if the changes are mostly in Mac-specific code (not the engine core), then things will be simplier.
In the worst case, if he did not maintain changes history but just has the code as-is, the steps may be:
1. Clone our ags repository to create his personal one.
2. Create a new branch (like "mac-port", etc), forking from the point at which he started his work back then.
3. Copy his new code over and make a one big commit.
Then, continue with pull request as usual.