Yeah, this is how I used to do it. It's really fragile though when used in conjunction with Github Desktop on Windows (it doesn't, at least didn't, like multiple remotes). I guess that's the best option unless the package manager allows one to choose remotes.
On Sunday, October 2, 2016 at 10:50:29 AM UTC-7, Avik Sengupta wrote: > > I usually do this directly in git, and not via Pkg commands. I go into the > package directory, and add my fork as an additonal remote. So.. > > cd /home/chris/v0.5/Sundials > git remote add chris https://github.com/ChrisRackauckas/Sundials.jl.git > <https://www.google.com/url?q=https%3A%2F%2Fgithub.com%2FChrisRackauckas%2FSundials.jl.git&sa=D&sntz=1&usg=AFQjCNFQc3flEftrLIpqZWy6ZUJSp4A54Q> > git checkout -b cool-feature > julia #Develop cool feature, test from Julia > git push chris cool-feature > > I'll then create a pull request from Github's ui. > > On Sunday, 2 October 2016 18:01:28 UTC+1, Chris Rackauckas wrote: >> >> Does anyone have a good way to change repositories? A common example for >> me is, Sundials is in JuliaDiffEq, so I fork it to my Github account for an >> extended PR, but to work on it I need to remove my current Sundials install >> and clone from my own repository. However, METADATA does not like this at >> all: >> >> julia> Pkg.rm("Sundials") # Remove the JuliaDiffEq/Sundials version >> WARNING: unknown DataFrames commit 84523937, metadata may be ahead of >> package cache >> INFO: No packages to install, update or remove >> INFO: Package database updated >> >> julia> Pkg.clone("https://github.com/ChrisRackauckas/Sundials.jl.git >> <https://www.google.com/url?q=https%3A%2F%2Fgithub.com%2FChrisRackauckas%2FSundials.jl.git&sa=D&sntz=1&usg=AFQjCNFQc3flEftrLIpqZWy6ZUJSp4A54Q>") >> >> # Install from my Github >> INFO: Cloning Sundials from >> https://github.com/ChrisRackauckas/Sundials.jl.git >> ERROR: Sundials already exists >> in clone(::String, ::SubString{String}) at .\pkg\entry.jl:193 >> in clone(::String) at .\pkg\entry.jl:221 >> in >> (::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#clone,Tuple{String}})() >> at .\pkg\dir.jl:31 >> in >> cd(::Base.Pkg.Dir.##2#3{Array{Any,1},Base.Pkg.Entry.#clone,Tuple{String}}, >> ::String) at .\file.jl:58 >> in #cd#1(::Array{Any,1}, ::Function, ::Function, ::String, >> ::Vararg{Any,N}) at .\pkg\dir.jl:31 >> in clone(::String) at .\pkg\pkg.jl:151 >> >> In the past I would just delete METADATA and let it re-create itself, and >> that will fix it, but then you have to re-install packages which can be a >> mess. Since this is becoming much more common for me, I need a better way >> to handle this. Does anyone have a better workflow? >> >
