GitHub
Shlomi Fish
shlomif at iglu.org.il
Sun May 31 09:25:47 GMT 2009
On Sunday 31 May 2009 00:00:01 Andy Armstrong wrote:
> Does anyone object if I move the repo for Test::Harness to GitHub? :)
I'm not really a T::H developer and so my vote may not count, but I would
prefer to keep it as a Subversion repository.
I'd like to take this opportunity to rant about how confusing and
idiosyncratic and obscure I find git to be. I don't understand why it does
what it do, why it doesn't work properly when it doesn't and what it does
behind the scenes that makes it so arcane and hard-to-understand.
For example, until recently a
"git push git at github.com:shlomif/mastering-perl.git" worked perfectly fine,
and only emitted the necessary information, but yesterday I got this verbiage:
{{{{{{{{{{{{{{{{{{{
$ git push git at github.com:shlomif/mastering-perl.git
warning: You did not specify any refspecs to push, and the current remote
warning: has not configured any push refspecs. The default action in this
warning: case is to push all matching refspecs, that is, all branches
warning: that exist both locally and remotely will be updated. This may
warning: not necessarily be what you want to happen.
warning:
warning: You can specify what action you want to take in this case, and
warning: avoid seeing this message again, by configuring 'push.default' to:
warning: 'nothing' : Do not push anything
warning: 'matching' : Push all matching branches (default)
warning: 'tracking' : Push the current branch to whatever it is tracking
warning: 'current' : Push the current branch
Everything up-to-date
}}}}}}}}}}}}}}}}}}}
What are refspecs and why should I care? Why doesn't a simple push operation
just works and does the right thing? And why did it broke all of a sudden?
This is just a tiny example. I also had many problems with "git checkout" and
"git diff" no longer showing the diff for files that were "git add"'ed and
other aspects.
Maybe I should read a good git tutorial or a document explaining its
architecture, but so far I found git hard-to-understand, poorly documented,
and counter-intuitive. I didn't have such problems with Subversion, which
always worked as I expected and was properly documented and intuitive.
Perhaps Mercurial would be better than git in this respect, but I have little
experience with it to testify. The Subversion developers seem to like it
better than git, and I think you can trust their judgement to some extent.
I'm sorry for this rant, but it was coming.
Regards,
Shlomi Fish
--
-----------------------------------------------------------------
Shlomi Fish http://www.shlomifish.org/
"Humanity" - Parody of Modern Life - http://xrl.us/bkeut
God gave us two eyes and ten fingers so we will type five times as much as we
read.
More information about the tapx-dev
mailing list