Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
quarks (new) - Add a way to update quarks (git pull or delete folder and clone again) #1386
This seems pretty necessary, since there are really only a couple quarks that are versioned, and the rest are locked to head.
It seems really important to not blow away someone's local changes, if they did something like edit the quark directly (a little ill advised, but also really easy to do without thinking). In that case, delete&clone would be problematic - pull would be good, if we could warn in cases where there are merge conflicts....
you can select HEAD from the select/pop-up
it does not track a branch though, that would only track master.
but you are free to go into terminal and do anything you want to any
for releases and package management systems, dependencies and installs
I tried to keep to what other package systems like npm, bower, gems etc. do
so when Quarks first installs a package it expects either a specific tag or
scott: if you have changes (your checkout is dirty) then it will refuse to
miguel: thanks for those other bug reports ! I'm doing that tomorrow.
On Sat, Mar 28, 2015 at 8:45 PM Miguel Negrão firstname.lastname@example.org
btw. I think I should not label it as HEAD but rather "Latest" in the gui
to reduce the git jargon
On Sun, Mar 29, 2015 at 12:56 AM felix email@example.com wrote:
There are many sc users out there that don't know git, so it would be good to be able to do all the basic tasks from the gui or Quarks class interface.
The tags pop up menu was not immediately clear to me what the purpose of it was. It's a bit cryptic. Maybe it could have a tooltip or text before saying "choose version" ?.
Ok, let's say I'm using tags, even then how does the user do a pull from the GUI or Quarks class in order to get the new tags ?
Agreed, it should just work.
Tracking an experimental branch is not a basic task IMO.
Quarks authors should tag stable releases and not be publishing a moving target.
here's the code right now:
There are some things to improve here.
If there is no tagged release and the user install LATEST (currently labelled HEAD) then they will get the latest on master.
I will add "Check for Updates" that will call git.fetch() on each installed quark. That fetches new tags and gets the latest commit, and can show on the gui that there are updates available.
Then the user can choose to update to a newer version. Not forced or automatic.
In the sc community we often don't have such a formal release system as you know. You are using your own lib, you find a bug, you fix it and push, but I agree, it would be good to start tagging from time to time so that users can know that their piece was working with version x of quark y and so forth. Also is HEAD, going to the HEAD of the branch where you are currently ? refspecs allows to checkout other branches...
Sounds perfect !
Yep, and this lazyness can continue just fine as long as the authors commit to the master branch.
LATEST (aka HEAD) is for whatever branch you are on. Which for the naive user is going to be master.
You cannot actually checkout a different branch by using a refspec / sha hash. Its a single commit and does not know which of possibly several branches that its on.
refspecs should probably be retitled to Version.
I'm improving the display right now. should be much clearer.