> From: "Jordan DE GEA" <jordan.de-gea@xxxxxxxxxxxxxxxx> >> This document attempts to help you configure a Triangular Workflow. >> +Here is an example of configuration: >> + >> +........................................ >> +------------ ----------- >> +| UPSTREAM | maintainer | ORIGIN | > > UPSTREAM and ORIGIN are two different types of description. Origin being a too generic Git name that is used multiply elsewhere. > > That said, trying to find a good name for that 'third place' is not easy. It's neither upstream, nor downstream (for Junio - the maintainer special case - git.git would be his downstream). The me/git repo is like a ferryman's landing across the other side of the river flow, a safe harbour if you will. > > Finding a suitable name has all the same issues as deciding the generic public name for the staging area / index. The ability to have a second perfect copy is very new - historically all the dictionary names relate to copies or forgeries (you could only have one master - DVCS breaks that mould). Perhaps (poorly) "MyFork", or "MyServer". There maybe a good French word we can use. > You’re right, finding a good name is not easy. Firstly, I wanted to use DOWNSTREAM and UPSTREAM. But git doesn’t make the difference between those words. Looking for the description of the third place, I wrote that it’s the remote used to push modifications. Assembling the main words push and remote, it creates PUSH_REMOTE which seems a good name. e.g. That’s clear to say "I push to the push_remote". As the option `branch.<branch>.pushRemote` exists, a little text has to be added in order to prevent confusion. By the way, in the documentation, confusions will be avoided by using `branch.<name>.pushRemote` and ‘push_remote`. Like PUSH_REMOTE, the remote where we fetch can be called FETCH_REMOTE. e.g. That’s clear to say "I fetch from fetch_remote". Do you agree? > >> +------------ ← ----------- >> + \ / >> + \ / >> + fetch↓\ /↑push >> + \ / >> + \ / >> + ------------- >> + | LOCAL | >> + ------------- >> +........................................ >> + >> +CREATE YOUR REPOSITORY >> +---------------------- >> +The first step is to create your own repository. To do that you can: >> + >> +- a. fork (e.g. GitHub) the main project (e.g git/git), or >> +- b. create an empty repository >> + >> +a. Fork the project >> +~~~~~~~~~~~~~~~~~~~ >> +Go to the repository of the project (e.g. git/git) you want >> +and fork it. > > As I understand it one issue is to clearly suggest that it is best to fork and then clone from your me/fork project such that the origin and it's fetch/push are set up the easiest way. > > If the user clones the main project before forking and then tries to add the me/fork there are more hoops to jump through to get all the fetch/push settings re-arranged (this does depend on the Github fork method, but at least the issue of which repo is cloned should be noted) Thank you, I will work on it. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html