IRCloggy #git 2008-11-30

Logs Search ←Prev date Next date→ Channels Documentation

Provider of IRC logs since 2005.
WARNING: As Freenode became unjoinable and lost all warnings in topics, we cannot log channels on Freenode anymore.

2008-11-30

EmilMedve joined00:03
johnw joined00:11
gambler joined00:11
quoin- joined00:11
advany left00:12
corecode how do i start a new root?00:14
vmiklos git init, git add, git commit00:15
quoin left00:17
loincloth joined00:21
vbabiy left00:22
drizzd "git symbolic-ref <new-root>; git checkout new-root" I think00:22
bcessa ok, this is not working :/ thnx anyway , I'll keep looking for this one ;)00:22
see ya' soon00:22
bcessa left00:22
corecode drizzd: i don't have symbolic-ref00:24
Marmouset joined00:26
akitada joined00:27
drizzd corecode: you should. but what I said doesn't work anyways00:28
I'm trying to figure out why00:28
maybe that behavior was changed in newer git. in any case, you can create a new repo and pull from that00:30
charon left00:30
LiamH left00:31
radarek left00:37
corecode oh bah00:38
cehteh git commit-tree plumbing00:44
icwiener joined00:47
bobmcw joined00:47
markelikalderon joined00:50
vmiklos drizzd: why isn't it easier to init a new repo, add, commit then git fetch /path/to/new master:foo?00:56
symbolic-ref and other plumbing is for scripts00:57
argonel git status says "Not currently on any branch.", and git status says "* (no branch)" did i break something?00:58
RandalSchwartz what did you last use for "checkout"00:58
I'm betting "not a branch"00:59
argonel ahh, yes. this is the one where i tried to git checkout git-svn01:01
RandalSchwartz averts eyes at mention of svn01:02
argonel heh01:02
drizzd vmiklos: sure, you're right. I didn't immediately realize that's what you were suggesting to do.01:02
RandalSchwartz git-svn is like a flying car... which everyone wants, but fails miserably because it's not a very good car *or* airplane01:03
drizzd vmiklos: I'm still wondering why "git symbolic-ref <new-ref>" doesn't work any more, however.01:03
jackdempsey left01:05
argonel oh, i was hoping it would get better once i learned more01:05
vmiklos drizzd: if you really want to use plumbing directly, then you need:01:07
git symbolic-ref HEAD refs/heads/newbranch; rm .git/index; rm -rf *; copy your files in; git add; git commit01:08
(untested)01:08
name left01:10
jackdempsey joined01:11
gasbag left01:11
earcar left01:13
drizzd vmiklos: thanks01:19
akitada left01:20
litage left01:25
scsiraider left01:27
argonel git branch outputs color properly, but git status does not. any ideas?01:28
jackdempsey left01:28
hacim joined01:29
hacim i made a new tag, how do I 'push' that tag? I did git push, but it thinks everything is up to date01:29
dur --tags01:29
argonel ahh, pager01:30
hacim what I want to ask is... how do I delete a tag from the remote?01:31
I git tag -d <tag> locally, but to push that ?01:31
qrush joined01:33
hacim ah, I found it, i should just shutup now01:33
hacim left01:33
bobmcw git push --tags01:33
johnw left01:33
loinclot_ joined01:36
peeja joined01:38
peeja left01:39
cartucho joined01:42
lolage0 left01:50
mikeblack_ joined01:50
mikeblack_ http://deine-nackte-weihnachtsfrau.net/?id=266756101:51
earcar joined01:51
loincloth left01:52
davik joined01:52
mikeblack_ left01:56
kanru left01:56
kanru joined01:57
ashleyw joined01:59
protorom left02:03
Marmouset left02:04
cartucho Anyone here using git under cvs ?02:08
cehteh why would one do that :)02:09
drizzd I'm only using git over cvs02:12
ph^ left02:12
cartucho drizzd: sorry I meant over02:15
earcar left02:18
Millow left02:21
peeja joined02:30
Zimm left02:30
jeckel joined02:37
drobbins|awaydrobbins02:38
icwiener left02:42
ceej joined02:44
SRabbelier left02:44
synchris joined02:45
ceej left02:48
parasti left02:51
argonel i just found a bunch of merge conflicts that are clearly just deletions, should this really have to be resolved manually?02:52
offby1 rerere02:54
mndoci joined02:55
drobbinsdrobbins|away02:57
bobmcw left03:00
peeja left03:01
hobodave joined03:01
peeja joined03:02
argonel drizzd: thanks, patch and then rebase worked a lot better03:03
Tametomo joined03:05
Tametomo Hello03:05
rtomayko joined03:06
davik left03:07
markelikalderon left03:07
hobodave left03:11
dancor i have audio files that i sync to multiple computers. using rsync, if i rename one file it's kind of lame to have to transfer the whole file over the network again03:12
but using git is probably overkill03:12
any thought on this, or recommendation of something lighter-weight?03:12
cehteh rsync :)03:12
dancor cehteh: lol but it will retransefer the file on rename right03:13
i could just make a "distributed rename" script..03:14
cehteh -y, --fuzzy find similar file for basis if no dest file03:14
man rsync03:14
dancor oh, sorry thanks03:14
cehteh i never tried that, just remembered that such an option exists03:14
cbreak git should do the job, but if you want to push03:15
be aware of faq non-bare03:15
Gitbot cbreak: Pushing to non-bare repositories is discouraged. See http://git.or.cz/gitwiki/GitFaq#non-bare03:15
bwwww joined03:15
cehteh well and git isnt very well suited to hold big binary blobs03:16
Tametomo I've been trying to commit to a gitorious branch that was migrated recently from SVN. I'm the owner of the branch, but my commits haven't been going through to it.03:16
rtomayko left03:17
Tametomo So far, I've got an ssh key, I put the public version up there, I've set my name and email through git config, and I've even signed a commit that I've made.03:17
At the moment I think that maybe it could be my ssh key, as I can't determine any steps that could be going wrong. Any ideas?03:18
cbreak I would expect the big binary blobs in this case to not change03:18
(unless your player adds/changes meta)03:19
qrush left03:21
scsiraider joined03:22
drobbins|awaydrobbins03:22
qrush joined03:23
|kukks| left03:24
quoin joined03:26
charlenopires left03:32
niki joined03:32
unreal left03:36
unreal___ joined03:36
unreal___unreal03:38
synchris left03:38
quoin- left03:42
markelikalderon joined03:43
bobmcw joined03:50
qrush left03:52
bobmcw left03:56
qrush joined04:01
elmex left04:01
elmex joined04:02
Tametomo left04:03
dancor yeah rsync isn't really right either since i don't expect the files to change04:04
i'll figure something out04:04
qrush left04:07
drobbinsdrobbins|away04:10
madewokherd left04:10
Niamor left04:13
NiaGhost joined04:13
NiaGhostNiamor04:14
vbabiy joined04:15
drobbins|awaydrobbins04:18
qrush joined04:22
qrush left04:26
jmspeex left04:28
qrush joined04:28
jmspeex joined04:30
jeckel left04:31
litage joined04:33
mediogre joined04:39
mediogre left04:39
markelikalderon left04:40
Flathead joined04:44
gitfoo joined04:48
gitfoo hi04:48
if I work with other people on the same repository, I should never use git rebase master for my feature branches, right? I should do git pull . master instead, or is it ok ot rebase? in this case why?04:50
ciaran joined04:50
ciaran Hi, I'm trying to get a git-svn clone of a subdir of an svn repository, but also have a branch of that dir available. Could anyone help me with the correct syntax for the clone command for this task?04:51
I've tried: git svn clone --prefix=svn/ http://svn.textmate.org/trunk/Bundles/PHP.tmbundle --branches=http://svn.textmate.org/branches/*/Bundles/PHP.tmbundle # which appears to clone ok, but I'm not able to dcommit afterwards (i get a perl error from the git-svn script)04:51
Kangou left04:52
Kangou joined04:52
offby1 is it OK to use a * in the --branches argument?04:53
dunno that I've ever seen that done04:53
you might try spelling each of those branches out04:53
ciaran there is just one branch04:55
offby1 then spelling them out ought to be easy :)04:55
ciaran Pieter gave me that, not really sure where it came from but I noticed that a normal git-svn clone uses branches = branches/*:refs/remotes/*04:55
giving the full path was what I tried first, but IIRC the clone failed04:56
let me try again04:56
oh wait, now I see what he was doing04:56
yeah, I think the * will be necessary04:56
if I give the full path to the single branch, it will think that is the directory containing the list of branches04:57
madewokherd joined04:58
litage left05:02
Tamesolo joined05:02
Tamesolo Is there an easy way to cherry pick across separate branches?05:03
jas4711 left05:03
Tamesolo I don't want to pull from the mainline branch, but one of its other branches05:03
peeja left05:04
jas4711 joined05:04
Tamesolo Alright, a harder approach will work as well. Just trying to figure out how to do it05:04
offby1 ?05:05
Tamesolo Well, I'm trying to figure out the cherry pick command a little bit.05:06
I know a commit that I'd like to cherry pick, but it isn't completely clear to me how I'm supposed to get it. I tried the commit's sha1sum, but it didn't work.05:07
git cherry-pick b4b6187aaa21e702bac7c9562b449c5de50e546005:08
That's likely wrong05:08
muthu_ joined05:08
Tamesolo I'll talk with that branch master in a bit, but I also can't clone that branch. Apparently, it has a broken head at the moment.05:09
Don't know if that helps05:09
I'm curious if I can add it as a branch to my .git/config file. And if so, then how would I approach that locally?05:13
I probably need another remote as well, I'd think.05:14
offby1 what made you think that "git cherry-pick b4b6187aaa21e702bac7c9562b449c5de50e5460" didn't work?05:16
i.e., what did you see, and how did it differ from what you expected to see?05:17
Tamesolo One sec while I try it again. I'm testing something else at the moment.05:17
fatal: Could not find b4b6187aaa21e702bac7c9562b449c5de50e546005:18
That's what I see. However, that's the sha1 for the specific commit I'm looking for.05:18
offby1 oh.05:19
that would indeed not be what you wanted :)05:19
Tamesolo Like I said, I can't clone the branch as well because it says that there's a broken head.05:19
offby1 but it sounds to me like it _isn't_ the SHA1 of any commit in your repository. Are you certain that it is?05:19
i.e., what does "git show b4b6187aaa21e702bac7c9562b449c5de50e5460" say?05:19
if that craps out too, then either you're confused, or git is quite remarkably broken.05:20
no offense but my money is on the former option :)05:20
Tamesolo Yeah, I'm sure that it's me being confused. That's why I asked here.05:20
offby1 so ... tell me what makes you think that's the SHA1 you want.05:21
Tamesolo http://gitorious.org/projects/tmw/repos/eathena/commits/b4b6187aaa21e702bac7c9562b449c5de50e546005:21
offby1 well, that's a web page.05:22
I'm assuming you've attempted to clone the repository to which that page points.05:22
Tamesolo Yeah, but the git info is there.05:22
Yeah.05:22
Like I said, it's got a broken head.05:22
And since I'm the project head over a fork of it, I don't have access to their resources.05:23
However, both of us decided to move to git recently.05:23
offby1 lemme try "git clone git://gitorious.org/tmw/eathena.git"; see where that gets me05:23
Tamesolo Most of the reason is that we both do a lot of commits that could be beneficial to each project, but we don't have the same goals.05:24
drobbinsdrobbins|away05:24
Tamesolo They're developing their own server, while we're trying to better utilize a different server.05:24
offby1 have you tried "git show b4b6187aaa21e702bac7c9562b449c5de50e5460"? Works for me.05:24
ah, interesting.05:25
I typed "git branch" and got no output at all.05:25
Tamesolo fatal: bad object b4b6187aaa21e702bac7c9562b449c5de50e546005:25
That's what I get.05:25
offby1 oh, well, your repository may be screwed up. How'd you get your repository?05:25
Tamesolo I can't appear to clone theirs.05:25
offby1 I did the "git clone" command I entered above.05:25
Tamesolo Their project head helped me in getting a clone up, since we lost some of our information early on.05:26
offby1 *shrug*05:26
Do you remember exactly what you typed?05:26
If not, you might just try cloning again, using the command I used; it seemed to work.05:27
Tamesolo git clone git://gitorious.org/tmw/eathena.git git/tmwclient05:27
I have my clone that contains our project code in git/client05:27
drobbins|awaydrobbins05:29
offby1 are you saying you have two repositories?05:29
Tamesolo No. My repository is a clone of theirs that branched off about 9 months+ ago05:30
offby1 ah.05:30
Tamesolo We never shared repos before this.05:30
offby1 well, that object -- b4b6187aaa21e702bac7c9562b449c5de50e5460 -- is a very recent commit, so it's no surprise your repository doesn't have it. I assume you're trying to cherry-pick it?05:30
Tamesolo yeah05:31
offby1 can I clone your repository in git/client?05:31
Tamesolo I could do it manually without cherry picking, but I'd like to at least try to do it properly.05:31
offby1 sure.05:31
Tamesolo Also, if the other project head has some troubles cherry picking from us as well, I'd like to let him know how to do it as well, for being nice enough to help us out.05:32
http://gitorious.org/projects/tmw/repos/aethyra05:32
Actually, here, I'll change my nickname to what it really is. We were having a little fun with star wars humor a bit on my channel.05:33
TamesoloTametomo05:33
offby1 goes over my head :)05:34
Tametomo Han solo05:34
offby1 fatal: http://gitorious.org/projects/tmw/repository/aethyra/info/refs not found: did you run git update-server-info on the server?05:34
Tametomo hmm... I can try that.05:34
EmilMedve left05:35
Tametomo returned with nothing straight off the bat.05:35
offby1 :-(05:36
if it's small, you could zip up the .git dir and put it somewhere05:36
Tametomo Wait, did you try cloning it from git://gitorious.org/tmw/aethyra.git ?05:37
I can't clone their repo, and you apparently are having trouble cloning mine, I'm assuming.05:37
Meh, it's not too bad.05:38
offby1 I tried cloning http://gitorious.org/projects/tmw/repository/aethyra, which I assume is the HTTP version of the same thing.05:38
git://gitorious.org/tmw/aethyra.git is working gine.05:39
fine05:39
Tametomo Still had the same problem with pulling theirs.05:40
Well, after gziping my .git and deleting it temporarily.05:40
Maybe it'd help to have the clone name and the directory's name the same. I'm trying that now.05:41
Nope, same problem.05:42
offby1 I think I got it working.05:42
Hold on; I'll paste a transcript05:42
ashleyw left05:42
offby1 Tametomo: take a look at http://paste.lisp.org/display/7125005:45
the key is that I added the old repository -- eathena -- as a remote to the new one.05:45
xinming_ joined05:46
Tametomo Yeah, but I still can't clone it.05:46
Well, I'll try cloning it again.05:46
I'm going to try again.05:47
offby1 weird; worked fine for me.05:47
Tametomo Well, maybe I can delete my branch and clone it again.05:47
offby1 those are two strange statements to put together.05:48
did you mean "delete my _repository_ and clone it again" ?05:48
Tametomo yeah05:48
However, in order to do commits, I need to use the pull address, not the clone address.05:49
offby1 what on Earth does that mean?05:49
do you mean you can't push to http? If so, that's normal05:49
Tametomo sorry pull05:49
vbabiy left05:49
madewokherd left05:50
Tametomo no, I was right. Still getting used to this.05:50
I'm used to SVN, so this is going to take a little bit to get used to.05:50
offby1 :)05:50
Arafangion joined05:50
offby1 I came to git from SVN too.05:50
Tametomo [email@hidden.address]05:50
offby1 Ain't looked back since!05:50
that's a weird URL -- no / after the :.05:50
Tametomo That's what I need to use instead of git://gitorious.org/tmw/aethyra.git05:50
offby1 Not even sure if it's legal05:50
Arafangion offby1: I've come from Perforce. :)05:50
offby1 aaah05:51
Tametomo: yeah, "git@gitorious.org:tmw/aethyra.git" is for authorized people to push to, right?05:51
Tametomo Yup05:51
Bah! I tried pulling it to a completely different directory, and I still couldn't pull.05:52
Maybe I'll try the http address.05:52
rubydiamond joined05:52
Tametomo HTTP didn't work05:53
Well, I'll delete my local copy, and then try to reload them again.05:53
Their repo still won't pull for me :(05:54
offby1 at works I could put my repository up somewhere, let you download it05:55
xinming left05:55
offby1 s/works/worst/05:55
Tametomo Well, I don't see why it'd succeed for you, but fail for me. I'd expect consistency among different people.05:57
Initialized empty Git repository in /home/shogun/git/eathena/.git/05:58
remote: Counting objects: 18631, done.05:58
remote: Compressing objects: 100% (4404/4404), done.05:58
remote: Total 18631 (delta 14858), reused 17823 (delta 14146)05:58
Receiving objects: 100% (18631/18631), 5.42 MiB | 105 KiB/s, done.05:58
Resolving deltas: 100% (14858/14858), done.05:58
warning: remote HEAD refers to nonexistent ref, unable to checkout.05:58
There's what I get.05:58
offby1 golly05:58
what version of git are you using?05:58
Tametomo 1.5.6.305:59
offby1 I wonder if the repository is a little unusual, but still legit; perhaps my recent version of git deals with it better than yours05:59
jeckel joined05:59
Tametomo It's the most recent one in the Ubuntu repos.05:59
gitorious uses 1.5.4.405:59
In any case, I'll probably ditch Ubuntu again. It's an unstable environment for me at the moment, as I'm seeing errors in stable that I've never seen outside of their alphas.06:00
offby1 really?06:01
Tametomo Personally, I like Sabayon06:01
offby1 It's all I use and it seems pretty statble06:01
of course it interferes with my spelling :-|06:01
Arafangion offby1: It'll do more than that if you're not careful. ;)06:01
Tametomo Yeah, for me x-session-manager changes its waiting channel to 0 approximately every 6 hours.06:01
On doing that, I can't launch any new programs, and the ones that are open have some quirks.06:02
offby1 kwazee06:02
Tametomo Very frustrating for me when it happens and I'm in the middle of a code change.06:02
offby1 anyway, you might try checking out and building git itself; it's quite easy.06:02
That might get you going; that's the only difference I can think of between your setup and mine.06:02
Tametomo Sure I can finish it up if I have it open, but I don't dare close my text editor.06:03
Well, I might set up Sabayon again.06:03
I only switched back because the package versions in sabayon when I was using it a few weeks ago were rather dated.06:04
offby1 The stuff I really care about, I tend to build from source06:04
Tametomo Well, that's what I liked about Sabayon. It'd let me compile from source when I wanted to do something different than the defaults, and provide binaries otherwise.06:05
So it helped save on some time.06:06
I just got tired of most of my packages being fairly out of date.06:06
Arafangion Tametomo: All systems allow that, though some have a better setup by _default_.06:06
Tametomo Well, I'd do it through emerge.06:06
Since Sabayon is related to gentoo, it still keeps the gentoo niceties.06:07
Arafangion I prefer OpenBSD's ports to Gentoo's emerge, strangly.06:07
mndoci left06:09
Tametomo Well, I've learned that I still have a bit to learn about gentoo and emerge from that.06:09
I really don't like its default setup (Sabayon) and the first thing that I do is to clear out most of the packages. There's a lot of bloat by default, IMO.06:10
Still getting the same error with the most up to date version of git.06:21
Yeah, I know, impossible, but it's still occurring anyways.06:21
I personally hate errors like these.06:22
jeckel left06:23
offby1 you do? What are you, weird? The rest of us love 'em.06:23
:-|06:24
no clue.06:24
Tametomo Yeah, I thought as much. Well, I'll tinker with it a bit more and see if I can get it somehow.06:25
jeckel joined06:29
akitada joined06:41
Tametomo BTW, thanks for the help that I did get.06:41
Tametomo left06:41
ijcd joined06:47
Arafangion My goodness, p4's disk useage is sooo expensive compared to git.06:48
My git repo, with history (rather small as it is, as it's new), takes 2.3MB, including the .git, and including the perforce repo which it contains. (Don't ask). That perforce repo, on the other hand, contains the same git repo (but not the perforce repo), and within perforce, it's branched three times (with no history, and no edits).06:49
Yet that perforce repo is 1.9M! Yikes.06:49
(Which means that git, with full history, is taking up 0.4M)06:50
tstellar joined06:53
tstellar What merge strategy can I use if I want to merge two files, but manually resolve all the differences?06:54
Arafangion tstellar: Do the merge, then modify the commit.06:55
Arafangion is new to this, be warned.06:56
rtomayko joined06:56
rubydiamond left06:56
tstellar Arafangion: What do you mean by modify the commit?06:57
Arafangion Just that, make the merge, then make the changes you wanted, but --amend the merge commit.06:58
gitfoo left06:58
tstellar Arafangion: Will doing the original merge auto resolve some of the differences?07:01
Arafangion tstellar: Yes.07:02
tstellar: But you can still explicitly diff the originals via sha1's.07:02
offby1 you can also do "git merge --no-commit", which leaves the uncommitted file there for you to fiddle with07:04
tstellar I guess what I am looking for is a way to do a merge that does not auto resolve the differences.07:04
Arafangion tstellar: Who cares about the autoresolve, given that you can blow THOSE changes away.07:05
jm left07:08
bwwww left07:08
mahmoud2 joined07:10
tstellar Arafangion: After I blow away the autoresovle changes, won't I be back to where I was before the merge?07:13
ijcd_ joined07:14
Arafangion tstellar: Just give it a go.07:18
tstellar Arafangion: Ok, I'll try it and see what happens, thanks.07:19
tstellar left07:19
Arafangion wonders why some people can literally only do one task at a time.07:20
quoin- joined07:23
vbabiy joined07:29
mdeicaza left07:29
wiebersk joined07:30
ijcd left07:32
machrider joined07:33
machrider switching from svn to git, is there anything i should know other than the appropriate git svn init and fetch commands?07:36
i'd like to create a git repository that has all our history, but ideally no extra svn cruft (i'm not even sure if this is a valid concern)07:37
quoin left07:39
mugwump machrider: you might want to use --no-metadata07:50
I wrote an essay on it if you want, utsl.gen.nz/talks/git-svn/intro.html07:51
pygi left07:52
tstellar joined07:52
machrider mugwump: funny, that page doesn't mention --no-metadata07:52
mugwump that's a page on using git-svn07:53
Weaselweb joined07:53
mugwump I guess I didn't write about stripping the metadata, I guess most people prefer it to stay around to remind people that the commit was made in svn07:53
ben_h joined07:54
redii joined07:54
machrider i'm ok with harmless metadata, but i didn't know if the conversion would leave me with an "unusual" git repository07:54
wiebersk left07:54
mugwump you get a .git/svn directory in the one you run git-svn in07:55
but that doesn't get copied by git clone; so clones are "clean"07:55
machrider that's cool, then :)07:55
tstellar left07:58
ben_h left07:58
vbabiy left07:59
ben_h joined08:01
ben_h left08:03
ben_h joined08:04
machrider is ssh or git-daemon preferred for hosting?08:04
in my quick tests via ssh, i'm noticing permissions are going to be troublesome (with multiple users having commit access)08:05
ben_h left08:06
lordpil use gitosis08:07
ben_h joined08:09
redii Hello....I'm looking for recommendations/links for the best practical way to host a git repo on my macbook. I'm running a linux vm for it now which is a little convoluted to push from my mac to the vm so another user can get pull. Any ideas/links on current best practices?08:10
machrider lordpil: i'm supposed to clone gitosis's repository?08:11
they don't make stable releases?08:11
let me ask a better question: how does repo.or.cz or github.com host their repositories?08:12
i don't want to be bleeding edge, i want to be stable08:12
lordpil that's the idea08:12
manveru stable releases are sooo 200808:12
machrider checks his watch08:13
manveru machrider: they didn't push any changes since september, i'd consider it stable :)08:14
and there are even release tags08:14
but they are over a year ago08:15
machrider is gitosis what "everybody" uses?08:15
mugwump there's also gitorious and repo08:15
manveru or you can do it all by hand08:15
mugwump I think many people are lazy and just ue github :)08:15
manveru is lazy08:16
offby1 lazy++08:16
machrider is not lazy, and wants to get it right08:16
machrider (but doesn't want to use someone else's host)08:17
manveru you're no programmer, eh :)08:17
offby1 if only one other person will pull, just create an account for them and let them use git:// over ssh08:17
use git-shell if you don't trust them :)08:17
machrider multiple people will have read/write access08:17
offby1 ah.08:17
lordpil i never got gitosis working actually08:18
offby1 I _think_ git shell and SSH will still work in that setup too08:18
lordpil it's on my list08:18
machrider lordpil: hahahahahaha thank you08:18
lordpil but i'm still working convincing folks that clearcase is a dead end, so i'm not in a huge hurry08:18
xinming joined08:18
bobesponja left08:18
manveru just adds contributors to authorized_keys08:18
machrider i actually prefer the ssh solution, let me see what git shell is all about.08:18
lordpil machrider just come back when the guy who wrote it is here08:18
offby1 it's just an ultra-simple shell that only lets you run one or two git commands.08:19
manveru so your repo has a home and user08:19
and the git-shell acts as jail08:19
machrider oh, so everyone uses the same user account?08:19
offby1 ayup08:19
manveru yeah08:19
machrider can you still tell who committed what?08:19
manveru [email@hidden.address]08:19
offby1 and they all know the password, or have the same ~/.ssh/id_dsa08:19
manveru machrider: yeah08:20
offby1 machrider: I assume you can tell. That info comes in with the commit.08:20
machrider: sounds like you're used to Subversion08:20
lordpil if you're mischeivious you could forge your commit!08:20
machrider yes, i am.08:20
we're currently using svn, and we currently have user accounts on the system08:20
lordpil then Bob will get fired instead of you08:20
manveru if you're paranoid you can require people to sign them :)08:20
offby1 yeah, Subversion uses the user ID of the person logged in as the committer.08:20
machrider lordpil: freaky, bob is the other guy working on this.08:20
offby1 it's like he reads your mind.08:21
lordpil well i was debating between Bob and Muhammed. i got lucky08:21
machrider well, i'd like to keep security at a user-level08:21
rather than a shared secret08:21
is that possible?08:21
(i know it is, because github works that way)08:21
lordpil well then you know the answer is yes08:21
machrider question is how08:22
lordpil security isn't really my thing08:22
my root password is root08:22
akitada left08:26
akitada joined08:27
clairvy joined08:27
akitada left08:28
akitada joined08:29
mugwump ssh -v [email@hidden.address]08:29
sorry ww08:29
lordpil nat is the only thing that saves me08:29
mugwump :)08:30
redii macrider, i'm looking for that same answer (secure transport, no shared secrets)...googling now in parallel08:34
xinming_ left08:34
scientes joined08:37
akitada left08:37
offby1 just curious: what's wrong with making a new account, installing git-shell, and giving all your collaborators the password?08:37
akitada joined08:37
jeckel left08:37
offby1 I've never done it, but it wouldn't frighten me: I've read the source for git-shell, and it's so simple I genuinely believe it's safe08:37
loinclot_ left08:38
machrider i don't know, i just think of shared secrets as primitive08:38
if i fire someone, i have to change it and tell everyone08:38
etc.08:38
lordpil no you don't08:38
learn apathy.08:38
redii non-repudiation probably only thing i guess08:39
and temp access as machrider mentions08:39
giving temp access means have to have everyone change secrets08:40
tritz joined08:40
machrider i think, you could put everyone's public key into the git user's authorized_keys file08:40
then you would bypass the shared secret problem.08:40
(and you have the more minor problem of maintaining that file)08:40
wanders joined08:41
drizzd_ joined08:41
redii hmmm...true...thinking08:42
sgrimm left08:45
redii guess that's the easiest way...shared secret and ssh key authentication and git-shell shared authorization08:45
machrider i'm surprised there's no obviously good answer08:46
DrFrasierCrane joined08:46
redii yeah...this is seems a little too hackish at first...it's growing on me though...just smoke the key and he's gone...08:48
loincloth joined08:49
machrider i'm gonna play with gitosis and see what i think.08:49
redii yes, likewise08:49
clairvy__ joined08:49
redii bought the prag prog git book tonight...just for this recommendation...there hosting recommendation is gitosis essentially08:50
there -> their08:51
nite guys08:53
machrider later, good luck08:53
clairvy left08:56
ph^ joined08:58
machrider ok, gitosis implements basically the solution i just described08:59
a single git user with authorized_keys08:59
but the keys are managed via an administrative git repository08:59
which is pretty useful.08:59
drizzd left09:00
corecode ola09:00
anybody have an idea how i could create a new, empty branch in git?09:01
tritz corecode: http://book.git-scm.com/5_creating_new_empty_branches.html09:01
corecode i don't even have symbolic-ref09:03
mugwump suggests git-rm * instead of rm .git/index; git clean09:03
corecode oh now i have?09:03
mugwump that subcommand probably doesn't tab-complete09:03
corecode i tried yesterday night and i didn't have it :)09:03
mugwump it's plumbing09:03
corecode oh well, thanks09:03
mugwump it's been around since forever09:03
0.99.809:04
corecode now i need to rewrite the post-receive-email hook to send out separate mails for every change09:05
mugwump yeah, I've wanted that before too09:05
corecode not sure what to do with merges09:05
mixandgo joined09:06
mixandgo hello, how do I add a the http://github.com/technoweenie/restful-authentication/tree/master plugin to my rails project and the commit it to the git repo ? I need it to be committed with the project. I have tried a few times but it's ignored by git.09:07
mugwump corecode: start with git-log -1 -m --stat $commit09:13
corecode mugwump: i think i'll take andy parkins' script as a start09:13
it does wicked rev/merge compression09:13
mugwump ah yep... where's that ?09:13
corecode contrib/09:14
mugwump hmm, interesting09:15
might look at that myself too09:15
mugwump still wants one that is git-patch-id aware09:16
corecode what's a patch id?09:16
CodeOfficer left09:17
Arafangion corecode: See the man page.09:20
mugwump it's the sha1 of the diff output, essentially09:20
corecode oh09:20
that's not so good09:20
you won't see the same patch applied twice09:20
or applied to different branches09:20
mugwump I just don't want the same diffs twice09:21
you can still notify that the change happened, just say "same as commit BLAH"09:21
or even set the References: header so that the e-mail client threads changes on the same branch09:22
er09:22
I mean, the change as it gets cherry picked09:22
ijcd joined09:24
machrider ok, cloning my svn tree with --bare causes only the master to be preserved09:25
is there a way to clone all the branches?09:25
(without remote tracking references)09:25
mugwump you need to use all the --trunk --branches etc options09:25
you should be able to re-run git-svn init and git-svn fetch09:25
machrider i used the stdlayout one09:25
mugwump right09:25
does 'git-branch -a' show them?09:26
machrider no, just master09:26
i did a two step clone, as described here: http://www.ruby-forum.com/topic/15489209:26
the first one (done by git-svn) has all the branches09:26
mixandgo left09:26
machrider the second one only has master09:26
mugwump yeah. all the refs/remotes/* need to become refs/heads/*09:27
machrider i see09:27
mugwump I sometimes just go ln -s ../remotes .git/refs/heads/svn09:28
then you at least see all the git-svn heads as refs/heads/svn/*09:28
otherwise you can push them to the publishing repo with git push blah refs/remotes/*:refs/heads/svn/*09:28
machrider what if i just cp them, in the interim repository?09:29
before the 2nd clone09:29
mugwump yeah that works too09:29
or if you run 'git pack-refs' first you can search and replace on .git/packed-refs09:29
git's refs system is quite simple :)09:30
often described as commit post-it notes09:30
machrider yeah, it's very cool09:31
thanks mugwump, that helped09:31
mugwump no worries09:31
xyzzy_xyzzy4209:31
cilly joined09:32
quoin joined09:34
Ademan joined09:36
quoin- left09:37
ijcd_ left09:40
machrider is it normal for gitk to show "local uncommitted changes" when viewing a bare repository?09:40
aboodman joined09:42
prof_freud joined09:43
crazybyte left09:46
quoin- joined09:47
kanru left09:51
kanru joined09:51
kanru left09:52
chris2 joined09:53
drobbinsdrobbins|away09:54
corecode oh boy, this is not a simple change10:00
radarek joined10:02
bwalk joined10:03
Arafangion corecode: Hmm?10:03
corecode Arafangion: making the post-receive-email hook send separate mails for each change10:04
quoin left10:05
kanru joined10:06
kanru left10:08
kumbayo joined10:09
kanru joined10:11
protorom joined10:15
Arafangion corecode: As opposed to?10:16
corecode one per push10:16
Arafangion Ahh, well it's called once per push.10:17
corecode yah10:17
so i have to split up the revs10:17
Arafangion I've seen examples of how one does that, but can't remember were. Somewhere on hte internet.10:17
protorom_ joined10:18
aboodman I have a remote tracking branch setup using git-svn, and it has files in a different state than HEAD on svn, even though it thinks nothing is modified. Is there a way to force sync?10:19
protorom_ left10:20
Voker57 joined10:20
protorom_ joined10:20
protorom left10:20
ia left10:22
protorom_ left10:22
protorom joined10:22
ia joined10:23
machrider i want to grab a series of commits from one git repository and apply them to my working one10:24
what's the usual command for that?10:25
Voker57 git cherry-pick?10:25
protorom left10:25
machrider cherry-pick seems to need a commit that's in my current repo somewhere10:26
protorom2 joined10:26
protorom2 left10:27
protorom joined10:28
charon_ joined10:28
mahmoud2 left10:28
protorom_ joined10:29
charon_charon10:29
aspotashev joined10:34
bevans left10:34
cilly left10:35
naeu left10:40
melvinram joined10:41
melvinram I am trying to merge a branch into my master and I'm getting some errors... or at least I think they are errors http://pastie.org/32698510:42
Anyone know what I need to do here?10:42
davik joined10:42
melvinram left10:45
melvinram joined10:45
protorom_ left10:46
machrider melvinram: it looks like your working tree has changes that haven't been committed, so it won't merge10:46
melvinram machrider: yea i finally figured that out (with some help)... but now i've got a new problem/error10:59
http://pastie.org/32698510:59
jas4711 left11:03
jas4711 joined11:04
chris2 left11:07
not-xjjk joined11:09
protorom left11:13
protorom joined11:13
melvinram left11:15
bentob0x joined11:17
dwmw2_gone left11:20
xjjk left11:22
lucsky joined11:22
priidu joined11:25
hendry joined11:28
hendry i'm trying to git clone into my homedir. e.g. git clone https://ftp-master.debian.org/git/archvsync.git .11:30
fatal: destination directory '.' already exists.11:30
is there no way to force it?11:30
doener joined11:32
umc joined11:32
drizzd_ hendry: you misunderstand the meaning of the second argument to 'git-clone'11:34
it's supposed to be the target directory for the repository11:34
not the directory containing it11:34
if you just leave the second argument out you automatically get the new repo in 'archvsync'11:35
umc hello. can anyone please tell me the syntax for cloning a local repository ? couldn't figure it out via man git-clone. I have a repository in /path/to/repository/ and I'd like to make a clone of it in /path/to/clone/. I tried the command "git-clone -l --no-hardlinks /path/to/repository/" in folder /path/to/clone/ but didn't work11:35
Gitbot umc: the git-clone manpage can be found at http://git.or.cz/man/git-clone11:35
jast umc, how about just git clone /path/to/repository /path/to/clone? :)11:36
umc and in what folder must I run that command ?11:36
doesn't matter ?11:36
doener exactly11:36
but /path/to/clone may not exist yet11:36
s/may/must/11:36
git doesn't like overwriting stuff11:37
umc let's see11:37
but I still need the -l param... no ?11:37
doener no11:37
umc don't need --no-hardlinks also ?11:37
drizzd_ oddly enough, -l is kind of the opposite of --no-hardlinks11:38
so we don't know what you're trying to achieve11:38
doener if you use /path/to/repo for the source, -l is the default11:38
umc excelent. it worked11:38
thanks11:38
hendry drizzd_: i don't what it in 'archvsync'. I want it in $HOME (which already exists)11:39
doener btw, does anyone have a clue why the man page says "optimize the cloning process" for --no-hardlinks? By the name of it, I'd rather expect a "Waste some space" description11:39
drizzd_ hendry: it's not possible to clone into an existing directory, because that would potentially overwrite stuff11:40
in any case, I do not recommend making your home directory a git repository11:40
doener: yeah, that's weird11:40
doener hendry: in an existing directory you can do "git init" and fetch from the other repo. But as drizzd_ said, making $HOME a git repo is not quite what I would do11:41
hendry doener & drizzd_ ok, thanks for the advice11:41
drizzd_ hendry: in case you want to track your .config files, it's better to use symlinks11:42
or maybe hardlinks?11:43
doener symlinks11:43
git breaks hardlinks11:43
umc left11:43
doener although gitte had sent a patch to the list to make that configurable.11:43
Didn't follow the whole discussion, so no clue if it was accepted11:44
drizzd_ I see11:45
lvh joined11:54
lvh hi11:54
I'm trying to learn how to develop with git. I wanted to implement something completely new, so I made a new branch (mynewbranch), made the changes, checked out master, and merged mynewbranch once I was happy with it11:55
Can I delete the mynewbranch branch now?11:55
charon lvh: yes. the commits will always stay there, since they are now on 'master'.11:56
note that 'branch -d' actually does a safety check that ensures you only delete branches that are already part of the current (HEAD) branch11:57
lvh charon: right. But if I want to add more stuff to mynewbranch, I can re-merge later?11:57
name joined11:57
lvh charon: yeah, it warned me once and told me to use -D because I wanted to *get rid* of code11:57
charon yes, you can re-merge, though you should keep the 'mynewbranch' if you intend to add more stuff to it, since otherwise you'll have to manually figure out where the last merge was at11:58
lvh okay11:58
if mynewbranch had like 20 commits of incremental changes, I can still squash those even after merging to master, right?11:59
drizzd_ charon: once you merged you can "re-branch" from that. Why you would want to continue work on an outdated branch?12:00
charon drizzd_: i guess it depends. you're right, normally you can just re-branch. but for e.g. a subtree merge, you might want to continue work on the branch instead.12:02
d00dlez joined12:02
drizzd_ charon: true12:03
lvh: you can merge with the --squash option, but why would you want to do that?12:04
lvh drizzd_: suppose one of my commits is really, really stupid and the next one fixes it12:04
squashing them sounds like a good idea12:05
drizzd_ lvh: in that case, you should do that before merging12:05
bremner lvh: unless they have already been merged in somewhere12:05
lvh ls12:07
whoops12:07
nadim hi, make install complains about "You have installed git-* commands to new gitexecdir... Please remove old version commands in bindir now". is there a documented way to do that? and why isn't it automatic?12:09
Zimm joined12:09
Ratler_Ratler12:13
drizzd_ nadim: that's because you upgraded from a pre-1.6 version to a 1.6 version12:15
jast automatically removing things just isn't always the smart thing to do. to remove the old binaries, something like rm /usr/bin/git-* should work (your bindir might be different, of course).12:16
szimek joined12:18
xinming left12:18
clairvy__ left12:21
dsop hmm why does git svn clone -s path/to/repo give me some strange tag branches?12:24
jast perhaps because the repository has some strange tags?12:24
dsop I have tags like tags/3.3.5@410712:25
muthu_ left12:26
drizzd_ left12:27
Arafangion dsop: What's strange about that?12:27
dsop: I interpret that as 'tag 3.3.5, at revision 4107'12:27
Voker57 because people did commit to tags, maybe?12:28
corecode what's a good frequency to run git gc on a shared, push-only repo?12:28
drizzd joined12:30
Arafangion corecode: Whenever space is scarce.12:30
jast enable autogc to have it run automatically in sensible intervals12:31
(if your version of git is new enough to support autogc, that is... i can't quite remember when it was added though)12:32
1.5.6 at least has the setting for it (gc.auto), i don't know about older versions12:34
Arafangion left12:34
Zimm left12:34
corecode that's not documented anywhere12:36
oh wait.12:36
doener dsop: I guess the tag got deleted a recreated12:36
corecode my man pages are out of sync12:36
dsop doener: k.12:36
jast not necessarily; in svn you can commit to tags12:36
drizzd the docs take a while to build, that's why they are not installed unless you call install_doc explicitely12:37
jast after all tags are just a convention12:37
nadim drizzd, jast: I rmoved /usr/bin/git-* but make install still complains12:37
doener jast: yeah, but that's why you get svn tags as branches in git12:37
jast sure :)12:37
drizzd nadim: which git12:37
doener jast: IIRC, plain "not a real tag" stuff doesn't cause the @rev suffix12:37
nadim 1.6.0.412:37
I just pulled it12:37
jast right12:37
nadim so I guess the latest12:37
danten joined12:38
drizzd nadim: no I mean literally, `which git`, to tell if it's installed anywhere else (like $HOME/bin)12:38
nadim => /usr/bin/git12:38
drizzd umh, which git-ls-files then or something12:39
nadim I have no git-* commands at all12:40
doener which -a git12:40
that might be more interesting than just the first match12:40
nadim => /usr/bin/git12:40
same thing12:40
doener ok12:40
drizzd and you're installing in /usr/bin?12:42
the build system checks for the existence of git-add12:42
doener locate git-add12:43
nadim no locate in my system12:43
let me find it using domething else12:43
doener oh well, as you're installing to /usr/bin, it should be /usr/bin/git-add12:44
otherwise check_bindir should not complain AFAICT12:44
nadim this is weird, in bash, git-<tab-tab> should give me all the git-* commands12:44
drizzd nadim: and you're sure you're not installing in $HOME/bin?12:45
that's the default, after all12:45
nadim you're right12:46
they are installed there12:46
I think this is a mix between the git I unstalled through the distribution and the one I build myself12:46
hmm, better, the version I just build is git version 1.6.0.4.836.gd5cb12:47
drizzd I would uninstall the git package then and install your git in $HOME or /usr/local or wherever your distro recommends to install self-built stuff12:47
nadim I'm doing that right now :)12:48
ft joined12:50
tritz left12:54
davik left12:59
nadim this is even weirder! when I ran git --version in the git directory (the one I synched with the repository) I got git version 1.6.0.4.836.gd5cb. The version I had installed before was 1.6.0.4. after removing everything and doing a make install I get a version 1.6.0.213:00
make install says "GIT_VERSION = 1.6.0.2.GIT" but my repo is an older version13:01
Flathead left13:01
nadim haha! sudo make install installs 1.6.0.2 but make install installs the latest13:02
ok, good to know13:02
SmSpillaz hey guys, is it possible to have a separate branch, rebase origin that branch then merge it into your master branch?13:02
drizzd nadim: I think it's more likely that sudo causes you to install somewhere else than $HOME/bin and that's why you're seeing different installs13:05
SmSpillaz or more specifically, you are probably installing to /root/bin =)13:05
nadim drizzd: I believe that the sudo make 'install' choose another version, a stable one13:06
drizzd I don't see how that's possible13:06
SmSpillaz that wouldn't be right nadim13:06
nadim 'install' itself tell me what version it is installing13:06
I'd be happy to be wrong though13:06
drizzd sudo -c 'echo $HOME' returns my own home directory though13:06
adsworth joined13:07
nadim and there is no /root/bin in my system13:07
vbabiy joined13:08
drizzd is 'all::' like a shortcut for ".PHONY: all", "all:" ?13:09
szimek left13:11
dsop drizzd: no13:11
drizzd: all:: means that it is the standard target13:11
nadim can someone explain why the latest version says13:15
nadim@naquadim /devel/git $ make13:15
GIT_VERSION = 1.6.0.2.GIT13:15
drizzd dsop: no, the first rule is the default target. the double colon means that there can be more than one rule for that target (and all of them are executed)13:16
(section 4.13 Double-Colon Rules in make.info)13:18
dsop hmm okay, sorry for the info13:18
drizzd np13:19
SRabbelier joined13:19
drizzd make is a mystery to all of us ;-)13:20
nadim indeed13:24
dsop the real challange is autoconf :)13:24
nadim autohell13:24
OK guys, htere is something fishy in git install and I would very much appreciate help. Here is what I have done13:24
I removed all git traces13:25
(or so I believe)13:25
i downloaded and build version 1.6.0.4 from git web site13:25
I did a ./git-1.6.0.4/ clone git://git.kernel.org/pub/scm/git/git.git13:25
I did cd git and make. That tells me GIT_VERSION = 1.6.0.2.GIT!!!!13:26
can anyone please explain with the version git://git.kernel.org/pub/scm/git/git.git is not greater than 1.6.0.4?13:27
drizzd nadim: what does git describe tell you13:29
oh wait, you don't have that13:29
nadim yes I do13:30
drizzd hmm, seems DEF_VER=v1.6.0.2.GIT even in 1.6.0.413:30
nadim ./git describe => v1.6.0.4-836-gd5cbdba ./git --version => git version 1.6.0.2.GIT13:30
drizzd: that seems to be the problem13:31
The weird thing is that one of the build I've done gave, git --version => 1.6.0.4.836.gd5cb as it should13:33
drizzd well, just install it, and then run "make clean && make install" again13:33
nadim why should I install than clean and make again?13:33
drizzd because the build system requires git to figure out its version13:33
nadim all right13:34
ok, all good. It seems that I got to that at a certain point :(!13:35
chris2 joined13:35
nadim thanks all for the help13:35
FFighter joined13:39
FFighter hi13:39
I have a git repo on desktop and cloned it at my laptop. I changed a file on my laptop and commited (commit -a) then pushed, but the changes aren't carried to destkop. I'm using only one branch (master) as I'm using git only for syncing13:40
any ideas on what might be happening?13:40
I've read that pushing to a working repo is a bad idea... why?13:44
jast FFighter, see faq non-bare13:44
Gitbot FFighter: Pushing to non-bare repositories is discouraged. See http://git.or.cz/gitwiki/GitFaq#non-bare13:44
FFighter thanks13:47
so, configure a origin server on desktop that points to laptop and pull from there?13:49
ash_ joined13:49
bremner FFighter: 3 repos in total, one bare, two with work-trees13:51
FFighter: is the simplest13:52
FFighter but if I would not want a bare-one13:52
wsuff http://git.or.cz/gitwiki/GitFaq#push-is-reverse-of-fetch13:52
might work as well13:52
wsuff has been thinking of how to deal w/ this as well just hasn't yet13:52
bremner FFighter: no, you never edit files on the desktop?13:52
FFighter only peer-to-peer13:53
can I set desktop to point origin to laptop ?13:53
(originally laptop was cloned from desktop)13:53
bremner,13:53
drizzd pull-only with two repos would work too13:53
FFighter bremner, I do13:54
drizzd, yeah, that's what I want to do - set origin of desktop to point to laptopo13:54
so I could pull in the desktop and get updates from laptop13:54
and vice-versa13:54
bremner FFighter: that is what the second non-bare repo is for13:54
FFighter without a intermediate server13:54
bremner FFighter: you can do it that way, it just seems more painful than necessary13:55
FFighter thanks13:55
bremner FFighter: i.e. ssh desktop to pull from laptop, laptop needs global IP etc...13:55
markelikalderon joined13:55
FFighter ah, yeah13:55
but it is mainly LAN13:55
but I'll keep this in mind13:56
thanks13:56
wsuff need to try this myself too13:56
too early to think straight but sounds like sound advise13:56
bremner FFighter: OK, good luck. Remember unless your desktop is a C64, disk space is cheap13:56
wsuff bremner: why is it easier w/ 3 repos? perhaps i missed the logic. Rather do it right the first time before I get stuck =)14:00
bremner wsuff: you just push/pull to server repo from either working repo. In principle pull only works fine, but only for "always internet accessible" repos14:02
wsuff so working repo on MachineA MachineB ... w/ master repo on ServerG14:03
so push all changes to ServerG and can pull from it on any other machines as well14:03
bremner wsuff: right, where ServerG == MachineA is ok14:03
wsuff just a seperate repo14:04
bremner wsuff: correct14:04
wsuff i got it now =)14:04
using mostly git svn atm since work = SVN and I can't change that14:04
markelikalderon left14:04
wsuff so the central server model i can deal w/14:04
tclineks left14:05
bremner wsuff: there are lots of models, this is the one that works for me (6 months of experience only)14:05
wsuff bremner: less than that here i guess for 2 machines like FFighter was talking about docs usually jush push/pull between them etc but beyond 2 I don't know if I want to track that14:06
Gitzilla joined14:06
bremner wsuff: I think if there are two machines for two distinct developers, the situation is different14:07
wsuff sure but how many developers u know with only 2 machines =)14:07
also centeral server G makes it easier if I need to open any of the projects to other people later14:08
markelikalderon joined14:08
advany joined14:19
LotR joined14:22
Voker57 left14:22
Voker57 joined14:23
Weasel[DK] joined14:23
tritz joined14:26
bdiego joined14:28
hendry left14:31
jm joined14:32
tritz left14:33
patrick85 joined14:34
icwiener joined14:34
patrick85 left14:41
marcelo_ joined14:47
marcelo_ how do I export files a specific rev from a git repo14:47
?14:47
Voker57 git show rev:file14:48
cbreak or git-archive14:48
marcelo_ thanks14:48
cbreak or git checkout14:48
marcelo_ git checkout?14:49
cbreak depending on what you want14:49
marcelo_ I want to export files from a specific rev - copy the files from a specific point in time in the git repo - the output would be a tree of files (non-versioned)14:49
Run How can I refer to an upstream branch?14:49
Voker57 git archive then14:49
Run something with origin ...14:49
marcelo_ Run. origin ?14:49
something like git merge origin/master14:50
Run ok14:50
marcelo_ I think14:50
check .git/config14:50
masak joined14:52
jast it depends, of course, since you can have several upstreams14:54
litage joined14:55
quoin- left14:58
up_the_irons left14:58
jelmer joined14:58
up_the_irons joined14:59
marcelo_ left14:59
bdiego left15:01
wsuff left15:02
wsuff joined15:02
pygi joined15:04
naeu joined15:06
bdiego joined15:08
tvw joined15:12
gko joined15:12
gko Hi15:13
tomw joined15:13
tomw left15:16
tomw joined15:16
IRSeekBot left15:17
tomw I'm trying to use submodules with git15:18
doing mkdir test; git init; git submodule add ../dm-more (where ../dm-more is a repository)15:18
and I get this error message: remote (origin) does not have a url defined in .git/config15:19
what does it mean?15:19
madewokherd joined15:24
kukks joined15:26
jast tomw, submodule add needs two parameters: repository URL and target subdir15:27
if you only give one it assumes that it already knows the URL, perhaps15:27
tomw ok so you can't use a local git repository for submodule?15:28
jast of course you can15:28
but it must be outside the superproject15:29
tomw ok I'll try it15:29
gko Are there GitHub users here?15:30
tomw ok it's working using relative path like ../dm-core didn't work...15:31
gko left15:31
jast oh, right, makes sense15:32
again, impatience seems to be the order of the day...15:33
brett_h joined15:35
LiamH joined15:37
charon left15:38
parasti joined15:38
tomw thanks15:42
ben_h left15:44
bdiego left15:44
danten left15:44
aspotashev left15:44
akitada left15:44
scientes left15:44
|chalky| left15:44
ToxicFrog left15:44
yann left15:44
xyzzy42 left15:44
nothingHappens left15:44
jefferai left15:44
psilo2 left15:44
mikearr left15:44
gebi left15:44
aCiD2 left15:44
w00t left15:44
djinni left15:44
ke4qqq left15:44
imarcusthis left15:44
sverrej left15:45
xyzzy42 joined15:45
psilo2 joined15:45
gebi joined15:45
ivanz joined15:45
imarcusthis joined15:45
w00t joined15:45
kmap joined15:45
cartucho left15:46
ivanz What is the recommended practice for when one has to maintain a patched version of a piece of source code against each new release? I was thinking master == latest + tags for each new release + branch per each merge against a release15:47
does that sound about alright?15:47
nadim joined15:47
tvw left15:48
mike_m ivanz: i would maintain a set of patches against the upstream release, not a merged release15:49
djinni joined15:49
akitada joined15:49
ddollar joined15:49
ivanz mike_m: I was thinking about that but then I won't be able to look back into what has changed very well15:50
if I keep rebasing a patchset15:50
(what has changed in the patchset)15:50
CodeOfficer joined15:50
ivanz but yeah since noone shouted "wrong wrong wrong" I will do what I said and see how it works :)15:50
Hobbes joined15:51
bdiego joined15:51
gasbag joined15:54
sgrimm joined15:55
EmilMedve joined15:55
tomw left15:55
kelvie joined15:57
tomw joined15:57
nothingHappens joined15:57
yann joined15:58
jefferai joined15:59
ToxicFrog joined15:59
mikearr joined16:00
chris2 left16:01
aCiD2 joined16:01
danten joined16:02
chalky joined16:02
scientes_ joined16:07
MisterN joined16:10
solar_Ant joined16:12
solar_Ant hi all16:12
I have added *~ to .gitignore to avoid tracking temporary files16:12
but now when I do git add *16:12
all the files are remaining untracked16:13
shd solar_Ant: did you commit?16:13
solar_Ant though git reports that only a filw with ~ is being untracked16:13
git commit shows that there is nothing to commit16:13
nibbo joined16:13
solar_Ant shd: cause the other files are not getting into the commit list16:13
gambler left16:14
MisterN hi. what can gitbot do?16:14
shd solar_Ant: The following paths are ignored by one of your .gitignore files:16:15
gambler joined16:15
shd a~16:15
b~16:15
Use -f if you really want to add them.16:15
fatal: no files added16:15
solar_Ant: git warns about this16:15
solar_Ant: the problem is: '*' expands in the shell, git is explicitly commanded to add 'foo~' files16:16
solar_Ant: git wants to obey users instructions directly16:16
ivanz odd gitk and git diff display different results :|16:16
shd solar_Ant: instead, if you do 'git add .' you will only get non-~ files16:16
ivanz gitk only sees 1 file changed in the last revision16:16
MisterN ivanz: try git diff HEAD16:16
solar_Ant shd: thank you :)16:16
tomw left16:17
MisterN Gitbot: help16:17
Gitbot MisterN: Try '?' instead of help.16:17
MisterN: CyBot configuration directory.16:17
MisterN Gitbot: ?16:17
Gitbot MisterN: Type '<plugin name>?' to get brief help and a command list, where <plugin name> is one of: gitfaq, gitman, gitweb, irc, plugin, test, user. Also try '<plugin name> <command name>?'.16:17
shd solar_Ant: so the question is: to obey or not to obey the user. here git trusts the user to know what the user wants to do, because there are _rare_ cases when gitignore conflicts with practice16:17
solar_Ant shd: yeah seems like git was wondering why I would ask it to ignore a file and use a glob to add it16:17
ivanz MisterN: I am on a branch - a merge of another branch with master branch.16:17
solar_Ant that was very informative! Thank you shd16:17
ivanz MisterN: git diff master is what I do16:17
there are at least 10 files that were modified during the merge and 1 that I fixed conflicts in16:18
nibbo Is it a bad idea to manage websites (php/xhtml/css) by having a origin non-bare repo in the hosted dir with the hook mentioned here: http://git.or.cz/gitwiki/GitFaq#head-b96f48bc9c925074be9f95c0fce69bcece5f6e73 I was thinking about any security issues with the .git dir...16:18
vbabiy left16:19
dmlloyd left16:21
dmlloyd joined16:21
tomw joined16:22
nibbo or is that even the Right (tm) way to do it?16:22
MisterN left16:22
naeu left16:23
threeve joined16:26
naeu joined16:27
jackdempsey joined16:28
charon joined16:33
scientes_ left16:34
zumbrunn__zumbrunn16:35
muthu_ joined16:37
not-xjjk nibbo: block access to .git via .htaccess?16:41
cartucho joined16:41
marvil07 joined16:42
nibbo not-xjjk: ok, is that enough though?16:42
not-xjjk nibbo: why do you think it'd not be? all git specific files are in .git16:42
ke4qqq joined16:43
nibbo ok. Nice! :)16:43
not-xjjk if you have other files you don't want accessible via the web, you need to handle those via some kind of deployment script/hook16:43
nibbo Thanks for responding :)16:43
not-xjjk nibbo: be glad not using svn/cvs, they dump .svn and CVS directories everywhere16:43
though you can block those with an .htaccess/Apache deny directive too16:43
cartucho_ joined16:45
phytovor joined16:45
cartucho left16:47
protorom left16:48
gasbag left16:48
muthu joined16:48
muthu_ left16:49
phytovor Why it can't clone git repo to USB stick? http://gist.github.com/3047616:49
Weiss phytovor: permissions?16:50
doener that would fail earlier I think16:50
out of space?16:51
not-xjjkxjjk16:52
doxtor joined16:52
Voker57 try `touch /media/disk/test/.git/HEAD`16:52
ke4qqq left16:53
mt` joined16:54
doxtor Voker57: destination dir already exists16:54
Voker57 hmm, HEAD is a dir?16:54
weird16:54
doxtor it's not16:54
git writes that after I touch it16:55
loinclot_ joined16:58
doener doxtor: echo 123 > /media/disk/bla16:59
doxtor doener: works17:00
doener hm, df /media/disk17:00
ivanz left17:01
FFighter left17:01
loincloth left17:02
mw-home_ joined17:02
doxtor doener: http://gist.github.com/3048017:03
jas4711 left17:03
doener hm, almost 400MB, should be enough I guess17:03
doxtor git status after git init on the USB storage says fatal: Not a git repository. I think it has something to do with the filesystem17:04
jas4711 joined17:04
doener does "git init" also complain?17:04
doxtor doener: no17:04
doener and which fs is that? fat32 I guess?17:04
imarcusthis probably can't create .git ?17:04
does it make _git instead?17:04
doxtor it's fat3217:04
it makes .git17:04
doener doxtor: ls .git17:05
doxtor: does that show HEAD or head?17:05
doxtor head17:05
doener running gnome by chance?17:05
doxtor kde17:05
doener maybe that does the same... "mount" output please17:06
there are some mount options that control how filename case is handled for fat3217:06
doxtor hm, I did use default kde mount17:06
doener I know that that fucked up my gf's ipod once, took quite a while till I had that one figured out...17:07
doxtor I don't know where to look for output, it was in gui17:07
doener just run "mount" in a terminal17:07
ke4qqq joined17:07
doener the quotes were meant to indicate that I meant the "mount" command. ;-)17:07
doxtor doener: http://gist.github.com/3048217:08
phytovor left17:08
doener yep, there it is: shortname=lower17:08
doxtor thanks, looks like that's it then17:08
will mount manually17:08
doener mount -o remount,shortname=mixed /media/disk17:09
IIRC that should do17:09
not sure if /media/disk works there, or if it needs the dev17:09
doxtor now it has both: shortname=lower,shortname=mixed last one prevails?17:10
still produces "head"17:11
doener after a new "git init"?17:11
...in a directory that doesn't have .git yet/anymore17:11
adsworth left17:11
doener does "cat /proc/mounts | grep disk" also list both shortname versions?17:11
if so, I've just been mistaken and it needs a true remount17:12
well, "true"... umount/mount... you know what I mean ;-)17:12
d00dlez_ joined17:13
advany left17:14
advany joined17:14
litage left17:15
DrNick left17:16
DrNick joined17:16
doxtor doener: I did "true" remount and it worked. I used -o uid=1000,gid=1000,umask=007,shortnames=mixed17:16
thanks17:17
doener you're welcome17:17
thannoy joined17:18
jeckel joined17:21
d00dlez_ left17:21
rtomayko left17:21
mw-home_ does python 2.6 have ordered dicts?17:22
ebzzry_ joined17:29
mediogre joined17:30
offby1 Let Me Google That For You™17:30
d00dlez left17:31
da-x joined17:31
ebzzry__ joined17:32
mw-home_ sorry, wrong room17:32
ebzzry left17:32
offby1 :)17:32
RichiH offby1: heh17:32
offby1 anyway: I don't think so.17:32
mw-home_ left17:32
da-x hey there. is there a way in the command line to determine whether a commit is a parent of another commit?17:33
muthu left17:33
ebzzry_ left17:34
da-x hmmm, maybe git-rev-list [commit-b] | grep [commit-a]17:37
it's a bit heavy, though17:37
nud joined17:38
doener git rev-list -1 a ^b --> if that's empty, then a is an ancestor of b17:38
pygi left17:39
dwmw2 joined17:39
dwmw2 left17:39
corecode gitweb produces some nasty urls17:42
is there a way to use nicer urls with gitweb?17:42
jezdez left17:43
jast write a patch (or use cgit)17:45
what's it you dislike about gitweb, anyway? the fact that it uses query strings?17:45
d0k joined17:46
corecode yes, i'd like to generate links to changesets in mails17:46
jast and what's the problem with query strings there?17:47
corecode they're a bit bulky17:47
jast personally i don't think it matter if the url is foo.git?a=2189347237289037128973 or foo.git/a/23897240923874239743892417:47
well, you can't well get rid of the SHA1 hashes without making the URLs non-unique17:48
corecode no, sure not17:48
jast otoh you can use branch names instead of sha1 names in many places if you generate the URLs17:48
corecode no, then they wouldn't be permanent17:48
jast depends17:48
for example, unless you are in the habit of changing tags (which you shouldn't), you don't need to refer to a tag's sha1 name17:49
corecode yah, for a tag17:50
for commits that doesn't work17:50
jast well, you can use abbreviated sha1 ids17:50
depends on how paranoid you are about future clashes17:50
blizz how would i revert a whole range of revisions? they're all linear, inside a single branch17:51
jast revert as in stuff you've already published?17:52
blizz yes17:52
jast i guess the, uh, simplest way is to use git revert in a shell loop, then17:53
doener blizz: all up to the branch head, or a series "deep down" in the branch?17:55
advany left17:55
blizz the former17:57
leachim6 joined17:57
doener blizz: http://git.pastebin.com/m134db4e917:58
that's one way to do it, which I (sometimes) prefer over a bunch of revert commits17:59
blizz ahh, that looks good17:59
advany joined17:59
blizz thanks you both17:59
danten left17:59
jast it depends on what the commits contain, i guess18:00
doener yeah, if you can't summarize the reason for the revert/override in a single commit message, I prefer multiple revert commits18:01
but if they're all related in some way, I just use the ours merge to override them all at once18:01
blizz i would log it as 'reverted a failed experiment' ;-)18:02
doener gives a less cluttered history, and in gitk you see the overriden commits in a nice side-history, telling you how you messed up :-)18:02
threeve left18:07
threeve joined18:09
Reilithion joined18:11
synchris joined18:12
Reilithion Where is git getting my e-mail address? It's putting the wrong one in my commits.18:12
parasti Reilithion: from your config -- first think in the tutorial (man gittutorial)18:13
tritz joined18:13
Gitbot Reilithion: the gittutorial manpage can be found at http://git.or.cz/man/gittutorial18:13
Reilithion thx18:13
parasti (s/think/thing/ ...)18:14
cartucho joined18:15
Reilithion Can I get it to amend a commit with this new information?18:17
bdrewery lookup 'history rewriting'18:20
advany left18:21
advany joined18:21
corecode is there a way how to find out the current repo name?18:22
i.e. if i am in foo.git, "foo", or in bar/.git "bar"?18:22
offby1 yeah, there's a surprising and obscure method, which I always forget18:22
brett_h left18:22
offby1 it's an option to some command that you wouldn't think had anything to do with this18:22
git-rev-parse --git-dir ?18:23
mediogre left18:23
offby1 yeah, I think that's it18:23
corecode hm.18:23
tells me .git18:24
offby1 sure18:24
corecode that's not necessary helpful :)18:24
offby1 why not?18:24
is that not the right answer?18:24
corecode hm18:24
no, it returns "."18:24
instead of "foo.git"18:24
offby1 don't those both name the same directory?18:25
You can canonicalize it, you know, with "realpath" or something similar: git-rev-parse --git-dir | xargs realpath18:25
corecode yah18:25
mm18:25
i want to extend the mail hook18:25
offby1 ("realpath" might not be standard on all *nix platforms)18:25
corecode to report a gitweb link18:25
offby1 (cd $(git-rev-parse --git-dir); pwd) might be more portable (assuming you're using Bash)18:26
cartucho_ left18:29
masak left18:35
litage joined18:41
bobesponja joined18:51
schierbeck joined18:55
ikitat joined18:58
henux joined19:01
henux What is the point of GPG signed tags?19:01
wereHamster that they are signed ..?19:01
albertito henux: being able to verify *who* did the tag19:01
henux Okay so its an additional security, over to the username in the commit log?19:02
akitada left19:02
wereHamster you can fake the username in the commit19:02
albertito henux: yes, because the username can be faked19:02
henux Indeed. Thanks.19:02
wereHamster export GIT_COMMITER_NAME="Not Really Me [email@hidden.address]19:03
henux cool19:03
chalky left19:03
wereHamster also GIT_AUTHOR_NAME19:03
henux left19:04
d0k left19:04
d0k joined19:04
tomw left19:08
chalky joined19:08
name left19:10
aboodman left19:10
alikins left19:10
univate left19:10
agile left19:10
name joined19:11
guardian left19:12
scsiraider left19:14
davi left19:14
scsiraider joined19:14
pygi joined19:14
davi_ joined19:15
aboodman joined19:17
davi_davi19:19
naeu left19:21
naeu joined19:21
univate joined19:25
agile joined19:26
phytovor joined19:26
alikins joined19:26
corecode how does git select which branches to push to origin?19:30
radarek left19:30
Weiss corecode: .git/config19:31
offby1 I think it's spelled out in .git/config19:31
jinx :-(19:31
vmiklos it tries to push matching branches. so if you have master on both side, it'll try to update master (if you use 'git push origin')19:31
corecode and described in which man page?19:31
matching?19:31
serious?19:31
who would think of that19:31
offby1 corecode: probably git-push :)19:32
it has to do with the "refspec" -- that's a formula for mapping remote refs to local ones and vice-versa19:32
Yuuhi joined19:32
corecode oh meuh19:32
bremner corecode: see also branch.<name>.remote in man git-config19:33
Gitbot corecode: the git-config manpage can be found at http://git.or.cz/man/git-config19:33
corecode bremner: yah, that i have19:33
LotR left19:34
corecode bremner: but that doesn't offer pushing by default, and doesn't use the "merge" setting19:34
bremner: i.e. if i go git push origin foo19:34
and have a branch.foo.merge = refs/heads/notfoo19:35
it will still try to create a branch "foo" and not push to "notfoo"19:35
offby1` joined19:35
bremner corecode: I guess you can set up a remote in .git/config following the git-push manpage19:39
danten joined19:39
doxtor left19:40
offby1` ... or the "git-remote" manpage19:40
offby1 left19:40
offby1`offby119:40
bremner offby1`: you'd think so, but I found git-push manpage easier to follow19:41
offby1 whatever works :)19:41
bremner jinx19:41
I guess not really jinx, but I meant to write that. If anyone is keeping score19:43
offby1 You don't get to hit me on the upper arm if you merely _meant_ to write it; you have to have _actually_ written it.19:44
offby1 rolls his sleeve back down and sighs with relief19:44
bremner sheepishly sticks out his knuckles to be rapped19:44
markelik_ joined19:45
offby1 *whack* Don't let it happen again.19:46
Reilithion And that's the point at which I'm out of the channel.19:46
Reilithion left19:46
mndoci joined19:47
ArdRigh joined19:50
rmh3093 joined19:51
rmh3093 left19:53
scsiraider left19:53
jesselucas joined19:53
prof_freud left19:56
scsiraider joined19:57
ikitat left19:57
Hendu joined20:01
icwiener left20:01
DrFrasierCrane left20:02
markelikalderon left20:03
icwiener joined20:03
mndoci left20:05
Zimm joined20:07
scsiraider left20:09
scsiraider joined20:09
LotR joined20:10
omygawshkenas joined20:11
SuperPhly joined20:12
SuperPhly Does git allow submodules to have submodules? As in multi-leveled submoduling?20:12
Matze joined20:13
omygawshkenas left20:13
Matze left20:13
ceej joined20:15
bentob0x left20:17
charon left20:18
drobbins|awaydrobbins20:20
Hendu left20:20
jerbear joined20:20
doxtor joined20:22
advany left20:22
bobmcw joined20:23
drobbins left20:23
drobbins joined20:24
jast SuperPhly, allow... sure, but i don't think you get automatic recursive updates20:25
SuperPhly jast: yeah, that would be really nice20:25
k776 joined20:26
Voker57 left20:28
CharlieSu joined20:31
CharlieSu Anyone know why 'git co' wont work for me anymore? Now I have to type 'git checkout <branch>'20:31
doener you removed the alias?20:31
or you're in a different repo, and only set the alias for the other repo and not globally20:32
d0k left20:32
CharlieSu doener: I never setup the alias before that I know of20:32
doener well, git never knew a "co" command, must have been an alias20:32
d0k joined20:32
CharlieSu ok20:33
doener git config --global alias.co checkout20:33
CharlieSu perfect.. thanks20:34
CharlieSu left20:34
lfranchi joined20:39
drobbinsdrobbins|away20:40
scsiraider left20:41
lfranchi does anyone know if git-svn checkouts don't correlate with normal git checkouts?20:41
phytovor left20:41
jefferai specifically, if two different computers doing a git-svn checkout of the same svn tree will have different sha hashes?20:43
because we're seeing something where people's branches from their git-svn checkouts find every file conflicting when they try to merge20:43
lfranchi jefferai: well for me i can't even merge my local git-svn master to my remote branch20:44
jefferai really?20:44
bwalk left20:44
lfranchi yeah... i was trying to update the branch to svn trunk20:44
jefferai hm20:44
lfranchi which i git svn rebased20:44
chalky left20:44
ijcd left20:44
ijcd joined20:45
lvh left20:46
jerbear left20:49
loinclot_ left20:51
nat2610 joined20:55
user___ joined20:55
scsiraider joined20:55
nat2610 to start a new branch with its own origin, i just have to do git branch <branch_name> or I have to link it to an exisiting origin/ ? ??20:55
Leonidas left20:56
Leonidas joined20:56
Weaselweb left20:56
drobbins|awaydrobbins20:57
masak joined20:57
doxtor left21:01
drizzd nat2610: origin is just a name for a remote you're tracking21:01
doesn't necessarily have anything to do with your local branches21:01
nat2610 I just did a git branch <branch_name> and check out that branch name ... the modification I do from now on won't affect the branch where I was before the checkout right ?21:02
drizzd but if you create a branch like this "git checkout -b <branch> origin/<branch>", git pull will call "git fetch; git merge origin/<branch>"21:02
cdemyanovich joined21:03
drizzd nat2610: correct21:03
nat2610 ok ...21:03
thanks21:03
cdemyanovich I'm using git 1.6.0.4 under Cygwin on XP SP3 to manage a VB6 project21:03
nat2610 so if I push that on github later, I will have a origin/<branch_name> created ?21:03
cdemyanovich a tool modified some of my files21:04
drobbins left21:04
cdemyanovich neither git reset --hard nor git checkout on individual files seems to undo changes21:04
any ideas?21:04
drizzd nat2610: yes. you can try right now21:04
bwwww joined21:07
danten left21:10
nat2610 drizzd, sweet ... it worked I think, I did a git commit ... then git push origin <branchname> and I have it now on github !21:12
user____ joined21:13
d0k left21:13
scsiraider left21:13
name left21:16
user___ left21:16
drizzd nat2610: gj21:22
drobbins joined21:24
bobmcw left21:27
bremner cdemyanovich: what does git status tell you?21:27
bobmcw joined21:27
prof_freud joined21:28
naeu left21:28
DrNick left21:32
bobmcw left21:37
bobmcw joined21:38
DrNick joined21:39
norm2782 joined21:40
nickh joined21:42
panpainter joined21:47
FFighter joined21:48
panpainter left21:48
bobmcw left21:50
jesselucas left21:50
lucsky left21:51
bobmcw joined21:51
akitada joined21:51
robinr joined21:56
Weasel[DK] left21:56
ijcd left21:57
ijcd joined21:57
scsiraider joined21:58
drobbinsdrobbins|away21:58
jerbear joined21:59
norm2782 left22:00
Sonderblade left22:00
cdemyanovich bremmer: was away shoveling some snow :-)22:02
jeckel left22:02
cdemyanovich @bremmer: git status tells me that several files are changed but not updated22:02
prophile joined22:03
prophile hello22:03
how can I permanently remove one or more files from a git repository's history, even if this repository has been accessed by multiple people?22:04
mugwump first use git-filter-branch to modify the history, then ask everyone to re-clone22:04
bremner cdemyanovich: after 'git reset --hard HEAD' ; weird.22:05
doener cdemyanovich: windows? mac os?22:05
scsiraider left22:05
bremner doener: the evil W*indows22:05
cdemyanovich bremner: cygwin on XP SP322:05
nice_burger joined22:06
doener cdemyanovich: could you pastebin the "git status" output?22:06
cdemyanovich bremner: don't use IRC often enough to know pastebin; what do I do?22:06
scsiraider joined22:06
offby1 cdemyanovich: yeah, I never had that problem with Cygwin, but with msysgit, it happens a lot. The fix/workaround is to set core.autocrlf and/or core.fileMode to false22:06
http://offby1-whining.blogspot.com/search?q=msysgit for a bit of detail22:07
drobbins|awaydrobbins22:07
jeckel joined22:07
offby1 cdemyanovich: perhaps Cygwin's mount table has funny non-standard options, like "text"22:08
doener cdemyanovich: go to http://git.pastebin.com22:08
cdemyanovich: then paste your stuff, send it, and give us the url of the resulting page22:08
user____ left22:09
argonel i just did a git stash apply, and it had merge conflicts. what gives?22:10
cdemyanovich bremner: http://git.pastebin.com/d4dd1df2122:10
nice_burger left22:11
doener cdemyanovich: I guess "git diff" is non-empty, but "git diff -w" is empty?22:11
mw_ joined22:12
cdemyanovich doener: both are non-empty22:12
semslie1 joined22:12
drizzd argonel: then obviously, you did not apply it to the state you were in when you stashed it22:12
doener cdemyanovich: even with -w?22:13
cdemyanovich: and empty as in "no actual changes shown", headers being ignored22:13
drizzd argonel: essentially, 'git stash' is a shortcut for committing to a branch to be merged later22:13
argonel drizzd: thats the problem i'm having. it *was* in the same state. basically, the events were "git stash; sleep 24h; git stash apply"22:13
bremner argonel: blame the cat?22:14
elmex left22:14
cdemyanovich doener: it shows something like this for each file22:14
doener: $ git diff -w22:14
diff --git a/Matrix.ini b/Matrix.ini22:14
index 6d7ef08..e2e8086 10064422:14
priidu left22:14
lucasvo_ joined22:14
drizzd argonel: can you reproduce that?22:14
doener argonel: git rev-parse HEAD stash@{0}^22:14
kngspook joined22:14
doener argonel: does that give the same hash this?22:14
cdemyanovich doener: but no line-by-line diff output22:14
lucasvo_ I would like to push a branch I have created locally to my remote repository, how can I do that?22:14
doener cdemyanovich: ok, so it's "empty"22:15
lucasvo_lucasvo22:15
argonel doener: two different hashes22:15
agenteo joined22:15
doener cdemyanovich: and then, yeah, something is converting line-endings22:15
cdemyanovich offby1: I do have core.filemode, core.autocrlf and core.safeclrf set to true, so maybe that link will be helpful22:15
doener argonel: then you didn't apply to the same state as from which you stashed22:15
nice_burger joined22:16
semslie1 If I am working on a branch that others may also be working on remotely, how would I check against our central repository whether there have been and changes without pulling them in?22:16
doener semslie1: use "git fetch" to update your remote tracking branches22:16
azuk cdemyanovich, git reset --hard is not enough with crlf issues, you need to remove the index first if you want it to reapply conversion22:17
kngspook Can someone explain to me the difference between fetch, pull, and checkout?22:17
doener azuk: seems like cygwin is doing the conversion, only thing that I know of to work-around such behaviour would be core.autocrlf=input22:17
cdemyanovich azuk: haven't done that before; have a pointer to what's involved in removing the index?22:18
argonel its a bloody good thing i was paranoid and backed this entire tree up22:18
cdemyanovich doener: here's my git config22:18
doener: http://git.pastebin.com/d3a2725b522:18
doener kngspook: fetch = get stuff from another remote. pull = fetch + merge. checkout = well, checkout, get something out of the repo22:18
azuk doener, I don't know why you mean by that, I don't think cygwin is doing any conversion22:18
kngspook doener: checkout = get something out of _local_ repo, right?22:19
RandalSchwartz cheeckout = make workdir look like some commit22:19
doener kngspook: yep, the repo you're in22:19
RandalSchwartz and prepare further commits to be on top of that22:19
argonel doener: is there any way i can roll back to the "wrong" state that existed before git stash apply, so i can try and figure out what state it is?22:19
doener RandalSchwartz: that's only half of the story, "checkout <commit> -- paths" does something else22:19
kngspook RandalSchwartz: so checkout would destroy any changes I had made?22:19
azuk cdemyanovich, rm .git/index22:19
RandalSchwartz kngspook - commit first22:20
kngspook RandalSchwartz: well, no, sometimes I want to reset to a known state22:20
corecode is there a clever way to get a diff-tree to the parent of a commit, unless it is a merge (then i don't know where to diff to)22:20
RandalSchwartz git reset --hard COMMIT22:20
doener azuk: when you mount a fs as "text" with cygwin, it does crlf conversions22:20
RandalSchwartz stays same branch, picks new parent/workdir commit22:20
kngspook RandalSchwartz: then what's the difference between reset and checkout?22:20
doener corecode: git show <commit>22:21
RandalSchwartz reset is lower level22:21
argonel i'd really like to be able to figure out wtf is going on here, as it stands now i don't trust git stash22:21
RandalSchwartz you should really know what you're doing if you do that22:21
doener corecode: works for any commit. For merge commits, it defaults to the --cc format22:21
RandalSchwartz checkout is higher level22:21
does some safety checks22:21
kngspook RandalSchwartz: so, for now, stick to checkout (since I'm a newb...and a confused one atm, at that)22:21
RandalSchwartz checkout can create a new branch too22:21
doener argonel: stash@{0}^ is the commit that you had checked out when you stashed (assuming that you're talking about the lasted stash entry, otherwise adjust the 0)22:22
cdemyanovich azuk: I assume that the index will be rebuilt for me; correct?22:22
corecode doener: where is the --cc documented?22:22
doener corecode: diff-tree I think22:22
azuk doener, yes of course, but no sane person does that22:22
parasti argonel: if you had no other local changes when you applied the stash, just reset --hard HEAD22:22
niki left22:23
argonel ok, so reset and apply again?22:23
RandalSchwartz hard head. :)22:23
parasti argonel: that's not going to achieve anything... you'd just get the same conflicts again22:24
argonel: make sure the tree you apply the stash to matches the state of the tree when the stash was created22:24
corecode doener: that doesn't seem to work for --stat though :/22:25
kngspook Now on to more esoteric questions...assuming this is a private repo, could I do a git fast-export to a file, modify commit messages (the email address mainly), and then fast-import it without doing any damage?22:25
argonel parasti: how do i do that?22:26
prof_freud left22:26
doener corecode: what do you mean by "doesn't work"?22:26
argonel parasti: i don't know how to inspect "the state"22:26
langenberg joined22:26
parasti argonel: maybe it would help if you explained what do you expect git-stash to do22:27
argonel: use git stash show, git show, git log and git diff to "inspect"22:27
doener argonel: try this: "git rev-parse stash@{0}^", copy the hash you get, "gitk --all", paste that hash into the "SHA1 ID" field, hit enter, it'll show you which commit you had checked out when you stashed22:28
langenberg Is there a git command that gives me a clean checkout without the history? For example, I manage a web site in git, and I want to tar and scp it to my webserver.22:28
parasti langenberg: git archive22:28
doener argonel: (might be required to copy the hash after starting gitk, IIRC it auto-selects the current commit's hash into the paste buffer)22:28
argonel (using qgit here)22:29
langenberg parasti: Thanks! That even creates the tar archive for me. :-)22:30
git is nice for devs22:30
So is #git btw ;)22:30
argonel whoa, ok, i see whats going on22:30
jerbear left22:30
doener argonel: so, what is it? :-)22:31
argonel i was on a different branch22:31
doener heh22:32
cdemyanovich left22:32
doener good I added --all to that22:32
argonel parasti: so, i expected git-stash to warn me that i was on the wrong branch :)22:33
doener it doesn't (and shouldn't) care22:33
argonel apparently i care though, given the huge number of conflicts22:34
doener More often than not, I just stash because I want the changes to go somewhere else, and just checking out another branch directly isn't good enough22:35
drobbinsdrobbins|away22:35
doener if "git stash" would complain everytime, I'd go nuts22:35
argonel sometimes i hate software that assumes i know what i'm doing :P22:35
tango_ argonel, only when it assumes wrong, right? 8-D22:36
doener and "same state" is a bad assumption in general, a common usage pattern is "stash; pull; stash apply", and that basically never leaves you with the same state22:36
parasti well, I use that term in a pretty loose fashion... no changes in a relevant file = same state22:38
charon joined22:38
parasti and in fact, no *relevant* changes22:38
argonel i need a better workflow.22:38
doener I use it as in "same commit checked out" (and maybe I should just say that instead)22:39
argonel i'm used to svn, where if i want another working copy, i co from the server again. how do i achieve that with git?22:39
doener clone again22:40
niki joined22:40
argonel this repo only exists here22:40
r3dd0 joined22:40
doener so?22:40
r3dd0 hey22:40
http://paste2.org/p/109027 <- whats this?22:40
doener git clone /path/to/repo22:40
drobbins|awaydrobbins22:40
markelik_ left22:41
r3dd0 I just pushed everything like i always do22:41
parasti argonel: an alternative to that is the contrib/workdir/git-new-workdir script22:41
r3dd0 now i encounter this error when i try to pull it22:41
SuperPhly left22:47
SuperPhly_ joined22:47
kumbayo left22:47
ph^ left22:49
argonel ok, cool22:49
langenberg left22:51
nice_burger left22:51
mw_ left22:51
jeckel left22:53
jeckel joined22:54
corecode is there a way to prevent git-diff-tree to print the parent rev in the first line?22:54
scsiraider left22:56
drobbinsdrobbins|away22:56
r3dd0 daniel@vadmin134:~/fach$ git repack22:57
Counting objects: 3029, done.22:57
warning: suboptimal pack - out of memory22:57
fatal: Out of memory, malloc failed6)22:57
nice_burger joined22:57
r3dd0 Oo22:57
wtf is this?22:57
scsiraider joined22:57
_bernie joined22:58
_bernie I have a corrupted repository that I'd like to fix. is there a way to force git-fetch to download missing objects from the remote?23:00
scsiraider left23:00
prophile git clone23:00
_bernie the missing object is part of a remote branch, but for some reason the local sha-1 does not exist on the server23:00
scsiraider joined23:00
prophile try some cleanup with git fsck --full --strict && git gc --aggressive && git prune23:01
_bernie bernie@giskard:~/public_html/wiki/data$ git clone -n trinity/master23:01
fatal: Could not switch to 'trinity'23:01
bobmcw_ joined23:02
markelikalderon joined23:02
_bernie prophile: both "git gc" and "git prune" abort with "error: Could not read ba55026ea7153e6f0c8871f138b10f3385a3e253"23:04
prophile rm that object :P23:04
by git clone23:05
I meant rm your repository and duplicate a new one23:05
drobbins|awaydrobbins23:05
doener _bernie: you could clone the remote repo and copy the pack and index files from the new clone to the old one23:06
_bernie prophile: it's 250MB, this is why I was trying to recover it23:06
doener _bernie: do you have direct access to the remote?23:06
_bernie: ie. ssh or so?23:07
aboodman left23:07
doener _bernie: or someone else having a clone of it?23:07
r3dd0 prophile, fatal: Out of memory, malloc failed6) error: failed to run repack... when I try to run fsck gc and prune23:08
_bernie doener: yes23:08
doener _bernie: ok, first, figure out what kind of object the missing one is (commit, tree, blob, ...)23:08
_bernie: that's: git cat-file -t $hash23:08
prophile oy vay23:08
r3dd0 Could it be that my project got to big after the last push and now my server ram is too small?23:09
_bernie doener: git fsck reports a few:23:09
broken link from commit 1b3c8721e57dc7a226359d06975ea143305c5c1f23:09
to tree eee1d287b770e99eb2848ec87a31c298a4bdd80123:09
doener: hmmm weird, the missing objects are also missing on the server side.23:11
doener but the commit objects (eg. 1b3c8721...) exist there?23:12
bobmcw__ joined23:13
SuperPhly_ left23:13
_bernie doener: no...23:14
doener: the firt N commits are identical. That's weird... there seems to be a point in the history where things diverge23:15
oh btw the repository got corrupted as a result of a disk crash23:16
I know I'm being picky here, but it's good to handle repository corruption gracefully23:17
bobmcw left23:18
charon _bernie: you may disagree, but carefully verifying consistency and freaking out when it fails seems quite graceful to me. i doubt there's another way to handle it, as you'd have to reconstruct the objects from the sha1, which is hard if you don't have a candidate file lying around on an old backup.23:19
semslie1 left23:19
DrNick OTOH, being able to take a corrupted repo and moving it into a "yes, I know this is corrupted, do your best anyway" state would be handy23:20
charon maybe a sort of grafts-file for arbitrary objects would help, where you could specify a nearby candidate and filter-branch it to recover the rest... dunno23:21
drobbinsdrobbins|away23:21
charon then again if you have to "graft" away a tree, you might as well remove the whole commit which is already possible23:22
_bernie charon: it does not really freak out either: for example, "git pull" gets confused and leaves the sandbox full of conflicts that shouldn't exist23:25
r3dd0 left23:25
_bernie charon: also, git prune --expire shouldn't abort if the breakage is further down in the history.23:26
bobmcw__ left23:26
_bernie charon: what's not clear to me is why the missing files are not on the remote repository (even though they belong to the remote branch)23:27
bobmcw_ left23:29
ijcd left23:31
nice_burger left23:32
pcapriotti left23:33
ben_h joined23:33
loincloth joined23:34
nice_burger joined23:37
akitada left23:37
charon _bernie: seems you're right. clone --mirror doesn't even twitch if the HEAD commit of the cloned repo is tree-less, so perhaps push suffers from the same problem.23:40
report it to the list?23:40
tritz left23:42
charon well, push did fail.23:42
cdemyanovich joined23:44
dduncan joined23:48
m104 joined23:51
lucasvo left23:54
kngspook left23:54
schierbeck left23:54
kngspook joined23:55
jeckel left23:58
vbabiy joined23:59
quoin joined23:59
nud left23:59

Logs Search ←Prev date Next date→ Channels Documentation