On 12/8/2013 1:22 PM, Bjørn Roald wrote:
On 12/08/2013 05:54 PM, John Maddock wrote: ... unless there's some way to convert local
modifications into a fork?
The fork on GitHub is just a clone of the repository, much like the one you have changes in. It is a so-called /bare/ repository, i.e.: there are no checked out files - just the .git folder content. Since you are the owner of this repository, you can push your feature/whatever branch changes to it.
I created a local branch of a particular Boost repository giving it a descriptive name. This was successful. I then tried creating a repository in GitHub under my own name. This was successful and a 'master' branch was created for it. The 'master' branch is empty except for a readme.md file which GitHub commits to it. I then tried pushing my local branch to my GitHub url/master remote just created but was not able to do this. I am using TortoiseGit on Windows. For whatever reason TortoiseGit refuses to recognize that I have a 'master' branch of my new GitHub repository. It says: "Don't know what will push because unknown branch 'myremote/master'" Obviously, being a git novice, I am missing something about git. I thought one could push any local repository to any remote repository as long as one had write permission to the remote repository.
git push <your-github-fork-url> feature/whatever
See https://help.github.com/articles/pushing-to-a-remote
You can also change the origin remote reference in you local repository for convenience:
git remote set-url origin <your-github-fork-url>
or, if you like, keep origin and make a new convenient remote reference
git remote add fork <your-github-fork-url>
With the latter you may push your feature/whatever branch to the "fork" remote rather than the default "origin" like this:
git push fork feature/whatever
The GitHub fork provide is a public place the maintainer can pull from. Any other public repository you have write access to and the maintainer could have pulled from may have done the same service - namely hosting a public accessible repository.