IRCloggy #git 2009-04-23

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.

2009-04-23

gitte doener: GIGO00:00
bremner_ left00:00
doener :-)00:00
bremner_ joined00:00
gitte doener: well, thinking about it, Gigo is an acronym I understand. But Gitbot? What does _that_ mean?00:01
HG` left00:01
naeu left00:02
gwoo left00:02
carldani joined00:02
carldani hi00:02
doener gitte: hm, in that context, maybe it's just wordssmashedtogether, "git" having its British meaning ;-)00:02
carldani is there any way to get the git log for a given repository on disk without having to enter the directory of that repository?00:04
renan_saddam joined00:04
doener carldani: git --git-dir=/path/to/.git log00:04
jast gitte: "Garbage In, Typical Bot Output: Trash"00:04
renan_saddam how do I merge a branch to another?00:04
git merge00:04
?00:04
jerbear joined00:04
gitte doener, jast: well, I came up with "Generaly idiotic test, by outputting trash"00:04
Dashkal be in the branch you want to merge _into_ then git merge <branch to merge from>00:05
poseidon I installed git in Ubuntu, however I can't find git in /usr/bin00:05
mugwump you installed the git-core package?00:05
carldani doener: thanks!00:05
renan_saddam Dashkal: git checkout pt_br; git merge master00:06
poseidon mugwump, nope just git. Installing get-core now00:06
renan_saddam strange it returns "Already up-to-date"00:06
FreakGuard left00:06
doener poseidon: the "git" package used to be "gnu interactive tools". It's called "gnuit" now.00:06
jast I'll just go get sleep now to stop myself from coming up with even more ridiculous backronym expansions.00:06
poseidon lol, thanks00:06
doener poseidon: git, the dvcs, is in git-core, as mugwump said00:06
Dashkal renan_saddam: are you sure there's something to merge? The only time I get that message is when the two branches are pointing at the same commit00:07
renan_saddam Dashkal: I was on the wrong branch00:08
Dashkal that would do it00:08
sdiz-afksdiz00:08
renan_saddam Dashkal: I do a git branch -a and returns "origin/pt_br". I should do a git checkout pt_br, right?00:09
Dashkal Are you trying to merge the changes from pt_br into master or the changes from master into bt_br?00:09
renan_saddam Dashkal: master to pt_br00:09
Dashkal make sure your pt_br is up to date with origin00:10
kalle_ left00:10
qrush_ joined00:11
renan_saddam Dashkal: that's what I'm trying to do... get the last changes from master and merge to pt_br00:11
[1]intripoon joined00:11
jrmuizel left00:11
Dashkal "Already up to date" means the branch you're merging from points to the same commit as the branch your merging into. Nothing to do. Given that that's unexpected, I suspect that either your master or pt_br branch is out of date with origin00:12
doener Dashkal: not necessarily the same commit00:12
Dashkal doener: My mistake, yes, already merged would do it too00:12
poseidon When trying to connect to the sourceforge git repos I get the following "error: src refspec master does not match any."00:13
doener poseidon: did you push anything to that repo yet?00:14
poseidon no it's empty00:14
I'm using the guide at http://apps.sourceforge.net/trac/sourceforge/wiki/Git00:14
That was the first time I tried to push on the repo.00:15
jrmuizel joined00:15
carldani left00:15
doener poseidon: ah, sorry, the source refspec was "bad"00:15
poseidon: probably means that your local repo is also empty (or has no branch head called "master")00:15
kalle_ joined00:16
Bass10 left00:16
mithro joined00:16
poseidon O, my my repo is empty. I guess I should fill it with a couple files00:16
Whats the difference between add and commit?00:16
bobesponja left00:17
bobesponja joined00:17
poseidon nm00:17
zpoley i just did a git svn clone and i have master pointing at one of my subversion branches - is there a way to point master back at trunk ?00:17
bambule joined00:17
doener zpoley: did you do anything else yet? Or just cloned?00:17
zpoley just cloned00:18
Student left00:18
geir_ left00:18
doener zpoley: then (assuming that you didn't use the --prefix=whatever option) "git reset --hard trunk" should do00:18
zpoley doener: nice thank you00:19
ia left00:19
marvil07 left00:19
wshimmy1 joined00:20
columbo ?00:20
bdimcheff joined00:20
qrush left00:22
marvil07 joined00:23
gwoo joined00:24
Leemp joined00:24
gwoo left00:24
bambule4711 left00:25
javatexan joined00:28
intripoon left00:29
[1]intripoonintripoon00:29
nis joined00:32
nis gitte: hi! What's up?00:32
Modius left00:33
gitte nis: time ;-)00:33
nis gitte: still stressed?00:33
gitte Yep.00:33
Still have something to do, but I am dead tired.00:33
nis Oh, see you later then.00:34
gitte CU!00:34
gitte left00:34
nis "CU"?00:34
netoman left00:34
wshimmy left00:35
qrush_ left00:35
travisjeffery left00:37
nis could anyone tell me what CU means?00:37
the10nitro left00:37
tatsuyao_ left00:37
jjuran "See you."00:37
Voight-Kampf joined00:37
DrNick nis: in this context, "see you" as an abbreviation for "see you later"00:38
orbii left00:38
nis Ah, thanks. (IRC and me...) :-)00:38
coney joined00:39
Voight-Kampf left00:39
amahicpg00:39
coney so what do i do when i screw up and want to go clean slate00:39
Predominant left00:40
loincloth left00:40
nis coney: it depends if you already commited.00:42
coney no i never comit :D00:43
dodo_the_last left00:43
coney i'm a loser00:43
nis coney: seriously?00:43
coney XD but i'm tryin to change00:43
i'm way off the branch00:44
apple on the ground00:44
nis coney: what 'git status' says?00:45
coney nobranch00:45
but its got changes it wants me to save but i dont wanna00:45
XD00:46
uberpinguin left00:46
nis coney: first, you should commit all your work now00:46
coney doesnt that give it upstream?00:47
nis coney: no!00:47
davidad joined00:47
ngng joined00:47
scarabx joined00:47
nis coney: git commit is a _local_ operation.00:47
coney: you should commit often on a dedicated branch00:49
coney ok00:49
nis coney: done?00:49
coney whats that do00:49
nis coney: it saves your work in the repo.00:49
coney: if you screw up more you'll be able to come back at this state.00:50
coney: what 'git branch' says?00:51
coney still no branch00:53
checkout -b?00:53
nis try that00:53
coney: the main problem is to find your last "clean slate"00:54
coney: do you know why you were not on a branch?00:55
coney git reset --hard HEAD looks promising00:55
egoist joined00:56
coney if there was a way to screw up git bet your !#$ i will00:56
nothing to commit (working directory clean)00:56
nis coney: ok, what is the branch you were working on (i mean before you left it)00:57
s/is/was/00:58
foutrelis left00:58
coney its in git branch -a00:58
MarcWeber joined00:58
coney git branch -f origin/branch?00:59
nis is it in git branch -r too?00:59
bdimcheff left01:00
coney of course01:00
nis but not in 'git branch'01:00
Dashkal left01:00
hgimenez joined01:01
solydzajs left01:01
coney er wait checkout01:01
the docs keep flipin cmds on me01:01
nis coney: branches listed in 'git branch -r' are remote branches. you have to create new branches from remote branch to work on it.01:02
Tv left01:02
qhoxie left01:03
marvil07 left01:05
deskin joined01:05
nis coney: e.g. 'git checkout -b mywork origin/interesting'; <work, work, work>; git commit; <work, work, work>; git commit; etc01:05
Voight-Kampf joined01:06
bremner_ left01:07
travisjeffery joined01:09
coney whoah thats a mouthfull01:10
abra left01:10
coney thats it?01:10
kalle_ left01:10
coney how do i update01:10
from remote commits01:11
nis remote commits are stored in the remote branches.01:11
porcnick left01:11
nis (well, we can see it like that)01:12
loincloth joined01:13
coney merge?01:13
nis ?01:13
tag joined01:14
sitaram joined01:14
tag is there a way I can export just my changesets from the base I cloned?01:14
arohner joined01:15
nis tag: man git-format-patch ?01:15
Gitbot tag: the git-format-patch manpage can be found at http://git.or.cz/man/git-format-patch01:15
loincloth left01:15
kalle_ joined01:16
nis tag: something like: 'git format-patch initial_branch..mine'01:16
solj joined01:16
egoist left01:16
bremner_ joined01:16
bremner__ joined01:17
ia joined01:18
arohner left01:19
tedoc2000tedo_afk01:20
tedo_afktedoc2000_afk01:20
tag then how do I import those patches? (or do I just apply, commit, apply commit...)01:21
nis tag: git am01:21
man git-am01:22
Gitbot nis: the git-am manpage can be found at http://git.or.cz/man/git-am01:22
nis tag: you may also know man git-apply01:23
Gitbot tag: the git-apply manpage can be found at http://git.or.cz/man/git-apply01:23
camwest joined01:23
bremner___ joined01:25
botanicus left01:26
solj hi, i'm getting a segfault when running git svn01:27
http://gist.github.com/100214 <== backtrace01:27
javatexan left01:27
bremner____ joined01:28
porcnick joined01:28
sgrimm left01:29
nis solj: is the repo public?01:29
solj nis: yes01:30
nis solj: could you give the address and the command you type?01:30
solj git svn fetch01:31
deskin solj: you'll get farther with a perl debugger; also, the crash looks like it's in the svn bindings (apache portable runtime which they use)01:31
nis ah, you already have a clone.01:31
solj reposRoot = https://svn.mcs.anl.gov/repos/bcfg01:31
nis solj: what your git --version?01:32
solj deskin: yeah, i'm pretty sure it's somewhere in the subversion code, but i'm not familiar with debugging perl01:32
this is 1.6.0.6 in gentoo01:32
kaichen joined01:33
coney w00t i'm ahead by one commit01:33
this is kinda fun01:33
nis coney: good. :-)01:33
deskin I'm not very either :) what I did was hack the source to dump perl backtraces when crashing, which worked ok; don't have access to the specific method right now01:33
nis solj: does gentoo provide a newer version?01:34
deskin ...actually I think I can find it, if you're interested01:34
solj nis: that's the latest unmasked version01:34
i can try unmasking a more recent version01:34
WALoeIII left01:34
nis solj: or compile from an official repo.01:34
deskin I'd try upgrading the svn bindings first, if you can01:34
Tv joined01:35
solj alright, i'll try that01:35
thanks01:35
kukks left01:35
bremner_____ joined01:36
renan_saddam left01:36
joevandyk joined01:37
joevandyk git svn dcommit hangs on me. what should i do??01:37
says "commiting to <url> ..."01:37
bremner_ left01:37
joevandyk and then nothing01:37
btanaka left01:38
nis joevandyk: is the remote repo up?01:38
joevandyk yeah01:38
i can commit via regular svn01:38
nis joevandyk: what's you git --version?01:38
joevandyk nis: git version 1.6.2.rc1.13.g25487f01:38
bremner__ left01:39
nis joevandyk: did you tried on a newer version?01:39
joevandyk first time i've used git-svn and first time i'm trying to dcommit01:39
dgs__ joined01:39
joevandyk nis: thought this one was pretty new01:39
but i i will try01:40
nis joevandyk: yeah but it's a "rc" release candidate.01:40
dgs_ left01:40
joevandyk nis: compiling now01:40
nis joevandyk: feel free to feedback. :-)01:41
javatexan joined01:41
joevandyk go go compile01:41
nis i'm going nowhere. ,-p01:42
markelikalderon left01:42
joevandyk ok, trying to dcommit again01:42
same behavior so far. would it normally take a long time the first time to dcommit?01:43
km2 joined01:43
solj nis: fwiw, upgrading to 1.6.2.3 in portage and remerging subeversion with USE=-dso (to disable the runtime module search) fixed it01:44
thanks for the help01:44
nis solj: np01:44
joevandyk yeah, git svn dcommit still hangs01:44
there a way to see debugging output? -v does nothing01:44
solj joevandyk: strace?01:45
joevandyk aha, lots of 4504s01:45
404s01:45
bremner____ left01:46
eno__ joined01:46
joevandyk why would i get a 404?01:46
celling joined01:47
joevandyk strace: http://gist.github.com/raw/100227/082932a35d8d3e4ee3ab9bbc162591c2035c3ab6/gistfile1.txt01:47
nis joevandyk: are you sure your URL is good?01:47
joevandyk nis: i cloned from it01:47
same repository url as i'm using for regular svn01:48
nis weird01:48
Zathrus joined01:48
deskin joevandyk: you could try looking at the network traffic with wireshark, it dissects webdav pretty well01:48
joevandyk there any reason that it would take a long time?01:49
bremner___ left01:49
joevandyk this is a fairly large commit01:49
Voight-Kampf left01:50
jpld left01:50
damainman856 left01:50
Predominant joined01:50
Student joined01:51
solj left01:51
nis joevandyk: not much more than with svn, i guess01:51
joevandyk: what's time consuming should mainly be the network traffic01:52
Zathrus from work I have a branch called "sita". I did a "git push home". It claims everything up to date. From home, however, git show home/sita doesn't show the latest commit that it shows me at work.01:52
sitaram sita? my name's diminutive? wow...!01:52
(people call me sita)01:52
nis sitaram: :-)01:53
Zathrus sitaram: heh. www.sita.aero01:53
joevandyk could authentication be a problem?01:53
nis Zathrus: is the remote repo a bare repo?01:53
Zathrus nis: no, it was what I branched sita off of.01:53
sitaram Zathrus: if the branch sita did not exist at home, the push would not have sent it01:54
Zathrus ah.01:54
sitaram without an explicit refspec, push only sends matching branches01:54
nis joevandyk: possibly, don't know. isn't authentication information given in the URL?01:54
joevandyk hm, it's not01:54
this is a http:// repo01:54
sitaram so you need (first time) "git push home sita:sita" or perhaps just "git push home sita"01:54
bremner_ joined01:54
kaichen left01:56
eno left01:57
nis joevandyk: did you ever succes with dcommit?01:57
Zathrus sitaram: yeah... I managed to break it. Sigh. I'd recently done a "git push home sita", thought that was wrong, and nuked the branch at home.01:58
joevandyk nis no01:58
sitaram Zathrus: break?01:58
joevandyk tried to update the svn repo url to http://user:pass@url, no luck01:58
deskin you don't want user and pass in the url01:58
camwest left01:58
sitaram you can push again... unless you mean "yeah but that can only be tomorrow when I get to work", in which case I sympathise!01:58
nis joevandyk: does the strace still report 404 this way?01:58
schacon left01:59
joevandyk nis: yes01:59
deskin git svn will use cached credentials from ~/.subversion/some-file-named-auth-or-something if you have them01:59
or I think you can specify --user and get a password prompt; but I'd hope it doesn't hang if you don't01:59
Zathrus sitaram: yeah, I already fixed it. I'm VPN'd in (and then ssh'd back, ironically)02:00
deskin joevandyk: I definitely recommend using a network sniffer, you'll at least know if it's hanging or still working, even if you don't dig in to the packets02:01
faithfulgeek joined02:01
Zathrus sitaram: ok... so now from work git show home/sita shows the latest checkin. From home git show home/sita shows a stale one.02:01
bremner_____ left02:01
Zathrus hrm... nvm02:01
nope, thought I fixed it, but it's still showing stale info02:02
nis Zathrus: did you checkout?02:03
xenoterracide joined02:03
schacon joined02:04
nis (at home)02:04
bremner_ left02:04
Zathrus nis: I have the master tree at home, as well as a sita tree. I did a git pull home from the sita branch; it updated. git show home/sita from the master branch shows the stale data.02:05
ke_ joined02:05
eno__eno02:06
poseidon left02:06
sitaram Zathrus: at home, there should not be a branch called home/sita02:06
Zathrus: should be just sita02:07
Zathrus there's both02:07
sitaram because you pushed it02:07
Zathrus let me pastebin...02:07
sitaram Zathrus: also git branch -a -v if you don't mind02:07
Zathrus sure02:07
spearce left02:09
sitaram Zathrus: also, I have to leave and go to work; will stay logged in and reconnect from there but that will be about 30-35 min later :(02:09
30-45*02:09
loincloth joined02:09
hax0r1337 joined02:10
Zathrus http://pastebin.centos.org/2582602:11
kalle_ left02:11
joevandyk hm, so i'm using wireshark and capturing traffic, but don't quite know what to do about what i'm seeing02:11
Zathrus sitaram: np02:11
qrush joined02:11
loincloth left02:11
kalle_ joined02:11
deskin joevandyk: it depends how much webdav you know or want to learn. But the most important thing is that packets are continuing to be sent; if that's the case, git svn isn't hanging; infinite-looping, maybe, but not hanging02:12
joevandyk it's trying to find files on the remote server that don't exist yet (because I'm adding those files)02:12
schacon left02:12
nis joevandyk: is one repo inside the other one?02:13
joevandyk what?02:13
nis Oops, nvr02:13
deskin then wait patiently for it02:13
hax0r1337 left02:13
Zathrus nis: if that was to me -- no.02:14
nis Zathrus: yep, ok.02:14
javatexan1 joined02:14
nis Zathrus: which one is at home?02:14
ke_ left02:15
javatexan left02:15
Zathrus nis: those are actually both at home. But the "gittmp" directory is not part of the repo.02:16
joevandyk so it's usual behavior for it to check for the existance of every new file, one by one?02:16
octagon left02:16
orbii joined02:17
joevandyk (there's a couple thousand new files)02:17
nis Zathrus: you're pushing from gittmp?02:17
deskin ask #svn, I dunno02:17
but until it's git-svn hanging, we can't help you much02:18
orbii left02:18
deskin remember, someone else could've ninja-updated all those files between your last commit from svn and your dcommit02:18
orbii joined02:18
Zathrus nis: no, it was pushed from work. Yes, I know, I'm doing wonky things.02:19
nis Zathrus: so, gittmp is up-to-date?02:20
joevandyk woohoo,it's creating new stuff now!02:20
jesus02:20
deskin yay!02:20
joevandyk was not expecting it to take that long02:20
Zathrus nis: yes; I did a git pull home thinking that it would update the home/sita tracking branch02:20
nis: and I needed it updated anyway02:21
nis Zathrus: i'm lost with your repo02:21
Zathrus: why did you do a gittmp?02:21
[1]intripoon joined02:21
Zathrus heh02:21
harv_ joined02:23
nis Zathrus: is 0754b58 the good last wanted commit?02:23
Zathrus: or 8912209?02:23
Zathrus 0754b5802:24
nis hm, it's in both repos.02:24
Zathrus I'm just going to nuke the gittmp dir and re-pull entirely. It was initially created as a testing ground anyway, and I don't actually need it.02:24
cytrinox joined02:25
nis Zathrus: at least, it will clear my mind! :-)02:25
Zathrus the important ones (master, sita, origin/*) are sane. Speaking of which, how can I rename origin, since I named it that stupidly while being overly pedantic following the github guides02:26
joevandyk man, git is so much faster than csv. i'm still trying to dcommit my first patch02:26
Zathrus you mean cvs?02:26
nis Zathrus: in the .gitconfig file02:26
Zathrus nis: that's easy02:27
joevandyk oops, subversion, not csv or cvs02:27
Zathrus that's one heck of a typo :)02:27
joevandyk Zathrus: long day02:27
but i'm glad i'm finally commiting my git work into the svn repo02:27
so thanks all for your help02:27
Zathrus it's not in the .gitconfig file02:28
nis Oops, typo: .git/config02:28
Voight-Kampf joined02:29
Zathrus just the [remotes "origin"] line or the fetch = line as well?02:29
nis Zathrus: wait,02:29
Ramonski_ joined02:29
Ramonski_ left02:30
nis Zathrus: just do git remote rename old new02:30
parasti left02:30
Zathrus yeah, not in my version... must've been added after 1.5.502:31
nis Zathrus: ah.02:31
schacon joined02:31
nis Zathrus: can't you upgrade?02:33
Zathrus nis: not easily.02:33
nis well, save your repo and try that:02:34
Zathrus: rename origin refs in the .git/config file (both refs)02:35
deskin joevandyk: git-svn is a lifesaver. Glad it's working for you now02:36
schacon left02:36
nis Zathrus: and cd .git/refs/remotes ; mkdir origin newname02:36
Zathrus: sorry02:37
Zathrus mv origin newname02:37
I figured I'd need to do something like that02:37
nis Zathrus: yeah, I would do cp -a insted02:37
instead*02:37
cytrinox_ left02:37
intripoon left02:39
[1]intripoonintripoon02:39
damainman856 joined02:39
dreiss left02:40
neunon joined02:41
nis Zathrus: then you should do 'git remote show' ; 'git remote show newname'02:41
wsc joined02:42
reprore joined02:42
nis Zathrus: i'm still on your pastebin, it seems that the push just worked02:42
Zathrus: the branch sita is up-to-date, right?02:43
Zathrus yes02:43
yec left02:43
nis Zathrus: the push problem is resolved?02:44
yec joined02:44
Zathrus ok, I have no idea how I managed to do THIS. from /home/tom: git remote show home -- URL: /home/tom02:46
Tricon joined02:47
nis git remote show?02:47
hax0r1337 joined02:47
ceej left02:47
nis is "home" in the list?02:48
(i guess)02:48
airtonix left02:48
nis Zathrus: could you check your .git/config?02:49
baetis-fly joined02:49
Zathrus http://pastebin.centos.org/2582902:50
baetis-fly Question: I have a fork of a project on github. I branched, implemented a feature. In the mean time, my master got out of sync. Best way to get everything in sync? git checkout master - git pull upstream master - git checkout topic - git pull master?02:50
nis Zathrus: could you pastebin your .git/config?02:50
baetis-fly: not exactly.02:51
baetis-fly: what you probably want is02:51
tjafk1 joined02:51
nis baetis-fly: git chcekout master ; git pull upstream master ; git checkout topic ; git rebase master02:52
Zathrus nis: http://pastebin.centos.org/25832 -- fixing the origin idiocy right now02:52
baetis-fly nis: was thinking that, but I expect conflicts, still ok to rebase?02:52
nis baetis-fly: yes. you'll have to resolve the confilcts, btw.02:53
baetis-fly ok, but the rebase is still ok. got it.02:53
many thanks.02:53
nis baetis-fly: if you just want to know how far you diverged from upstream,02:53
baetis-fly: you could also do:02:54
sitaram Zathrus: I just finished looking at the backlog and I must say I'm a little confused too :) Are you putting your entire $HOME under git control by any chance?02:54
nis baetis-fly: git checkout topic ; git merge master ; (see if conflicts are hard) ; git reset --hard HEAD^02:55
baetis-fly nis: thanks. going to backup and try the rebase.02:56
nis baetis-fly: np; have fun02:56
ben_h joined02:56
Zathrus sitaram: I'm putting my dotfiles under git control02:57
e.g. -- .bashrc, .vimrc, etc02:57
nis Zathrus: are you using linux?02:57
Zathrus but .gitignore has /*02:57
nis: yes02:57
sitaram I quickly found that got too confusing and irritating; it seems to be better to make a proper repo and symlink everything that needs to be revision control to $HOME02:57
and make that symlink also automatic with a couple of lines in .bashrc02:58
nis Zathrus: the way i do that is by mount --bind into a dedicated repo.02:58
Leemp left02:58
Zathrus nis: yeah, that's not an option. My work home dir is a NIS (NFS) and SMB mount02:58
I can go down the symlink path if needed, but since one of my target platforms _is_ Windows (for vim) I'd rather not since NTFS symlinks are so hosed02:59
nis Zathrus: i don't think it's a problem for bind, really.02:59
niki left03:00
Zathrus nis: btw, renaming origin worked fine03:00
nis Zathrus: Ah, windows may be a problem. :-)03:00
Zathrus isn't it always? :)03:00
nis Zathrus: don't you use cygwin?03:01
niki joined03:01
Zathrus yes, but I use Win32 native vim/gvim. msysgit is synching the .vimrc/.vim dir just fine03:01
sitaram Zathrus: yeah my method is not so good with windows; I agree03:01
Zathrus the gittmp dirs were created initially to get down the process for pulling a git repo into the home dir -- git init; git add remote foo; git fetch foo; git checkout -b bar foo/bar03:03
in any case, it looks like the home/* branches are bogus and could be removed03:04
KwikkSilva left03:04
Zathrus (from the master)03:04
antoranz left03:04
nis can't say. :-/03:05
javatexan1 left03:06
damainman856 left03:07
orbii left03:07
Zathrus well, I had the backup already, so I did a git remote rm home and it seems ok03:07
tjafk2 left03:07
Zathrus nis, sitaram: thanks for the help03:07
mithro left03:07
nis Zathrus: np; good luck03:08
sitaram good luck!03:08
girishr joined03:09
sgrimm joined03:11
Student left03:14
kaichen joined03:14
amahi joined03:20
baetis-fly nis: that worked like a charm. is it safe to do a commit --amend at this point if I haven't pushed to public yet?03:21
qrush left03:21
nis baetis-fly: yes03:21
baetis-fly nis: what a strange time for whitespace warnings...03:21
kaichen left03:21
dreiss joined03:22
ceej joined03:24
schacon joined03:24
tag left03:25
tag_ joined03:25
nis baetis-fly: you can configure whitespace issues03:25
baetis-fly: see man git-rebase ; man git-apply and man git-config03:25
Gitbot baetis-fly: the git-rebase manpage can be found at http://git.or.cz/man/git-rebase03:25
schacon left03:26
spearce joined03:26
hax0r1337 left03:26
cpg left03:26
baetis-fly nis: you've been very helpful. many thanks.03:27
amahicpg03:27
nis baetis-fly: Oh, np!03:27
ceej left03:27
Alien_Freak joined03:30
kuadrosx left03:30
Alien_Freak can a git repo contain a .git directory... will it cause confusion?03:30
max_ep Alien: You want a submodule03:31
Alien_Freak here's my setup right now.....03:31
jerbear left03:31
Alien_Freak I have a ~/workspace and different directories under each one... each .git was made using a git svn clone of a particular directory.... now rather then keeping in sync with workspace/data workspace/foobar etc.. I'd like to have a .git in ~/workspace then I can just clone from a remote box03:32
is submodule what I want? ...03:32
kuadrosx joined03:33
Ilari Alien_Freak: Every directory with .git is usually either ignored or submodule boundary point.03:33
max_ep Ok, a submodule will let you make a 'master' you can clone...03:34
Alinermedia joined03:34
max_ep However, they will still be separate repos03:34
the 'master' will only contain a reference to them03:34
damainman856 joined03:35
max_ep The other option is to lose your history and create a new repo03:36
spearce left03:36
faithfulgeek left03:37
snowman856 joined03:38
orafu left03:38
orafu joined03:38
lois[pac] left03:39
Alien_Freak ooh.. that's I think exactly what I want03:39
no.. I don't want to lose the history.. submodule sounds much better03:39
tag joined03:42
tag git svn clone can take forever on a large repository holy crap03:42
it'd be sweet if it didn't download everything.03:42
tstellar joined03:42
tag or atleast, if I could ask it to explicitly03:43
deskin tag: then it wouldn't be git03:43
Ilari tag: Or if actually used pipelining... Pipelining with SVN is just bit too insane...03:43
deskin you can use -rm:n where m and n are integers to get a range of revisions, or omit one and the colon for just that revision03:43
it's not a bad way to get up and running, and fetch the full history later and format-patch | am to move your work03:44
tag hey that's great03:46
schacon joined03:46
tstellar I have a patch file in my git repo, but when I make changes to it and generate a diff, git apply can't apply the changes, becuase it gets confused by the file's contents(since the file itself is a patch) any suggestions?03:47
scarabx left03:48
nis tstellar: are you diff'ing a patch file with a regular file?03:49
Alien_Freak I think you can tell it to just pull head03:49
zpoley left03:52
h0nk1 joined03:52
tstellar nis: I am creating a diff of a diff file (if that makes sense).03:52
amahi joined03:53
KwikkSilva joined03:53
h0nk1 hi, is there any porcelain to rebase a tree of branches onto another branch?03:53
arohner joined03:53
deskin tstellar: patches are just files and git should be able to parse diffs of diffs fine; what's git apply complaining about?03:54
repror___ joined03:54
reprore left03:54
mediogre joined03:54
nis_ joined03:55
damainman856 left03:55
alanhaggai joined03:57
nis_ (i've been disconnected, sorry)03:57
tstellar: no, it doesn't make sense.03:58
tstellar Hold on, I think generated the patch backwards.03:58
ajonat joined03:58
deskin that'll do it03:58
h0nk1 this is basically a stgit functionality, but I tend to do this quite often with interdependent topic branches I still work on03:58
deskin h0nk1: never used it myself, but topgit may have what you want03:59
this sounds like its use case03:59
kold Hi all, I'd like to find the first instance that a line of code in a file first appeared in git....can anyone offer suggestions on how I'd do that other than a 'git log -p | grep 'code I am seeking'03:59
ned left03:59
tstellar Yeah, I generated the patch in reverse, problem solved thanks.04:00
deskin kold: git blame04:00
er man git-blame04:00
Gitbot deskin: the git-blame manpage can be found at http://git.or.cz/man/git-blame04:00
kold deskin: thanks04:00
h0nk1 deskin: looks good, thanks04:00
kold wasn't aware that is what blame was for, but it makes sense now04:01
ashleyw joined04:02
halfmouse left04:02
repror___ left04:03
Zenopus_ joined04:03
jrmuizel left04:04
deskin :) you can also spell 'blame' as 'annotate' but that's just more to type04:04
noclue is it possible to tell git to store work files in a different directory than the repo files are stored in?04:05
nis_ noclue: no. what do you want to do?04:06
deskin: how do you tell git-blame to find the first instance?04:06
noclue nis_: say i have a repo at /foo/.git and i want the work files stored in the foo directory instead of .git04:07
solar_ant joined04:07
nis left04:07
jrmuizel joined04:07
intripoon left04:07
nis_ noclue: you may use a symlink04:07
deskin nis_: I'm not sure what you mean; the commit it shows is by definition the first instance; unless, you have the same 'line' in multiple places, that I'm not sure about04:07
noclue: you can use a different working tree, man git IIRC tells you the environment variables to set04:08
cpg left04:08
alester joined04:08
nis_ deskin: what i understood from kold is that he wants to find the first instance of a content in the history range.04:09
noclue nis_,deskin: thanks.04:09
nis_ noclue: np!04:09
highandwild joined04:09
highandwild hi all04:09
I think I screwed up :)04:09
nis_ deskin: which is not possible AFAIK.04:09
highandwild I have a refactor branch. I did: git-rebase -s ours master thinking ours referred to refactor, but it has refactored it to master !! how do I undo this !04:10
sitaram kold: (sorry; just looked at the backlog) git gui blame is even nicer -- reasonably interactive :)04:10
coneyallagator04:10
sitaram highandwild: did you start from a clean tree?04:10
kold ok, so I have blame telling me who authored the current line. the --since flag won't work since it will always show the latest....I need to know when a line first entered the file04:10
kalle_ left04:10
highandwild sitaram: yes04:10
kold sitaram: thanks, looking at git gui now04:10
nis_ highandwild: check your git reflog04:11
sitaram highandwild: then 'git reflog show HEAD@{now}' will show you the commit you want to reset to04:11
Fissure kold: git log -S04:11
might be helpful as well04:11
kalle_ joined04:11
kold Fissure: thanks04:11
highandwild I see a long git reflog04:12
71 lines04:12
Evanlec joined04:12
deskin nis_: you mean, first instance of a line in some unspecified file? That I don't know; the range can be done like git blame from..to file04:13
Evanlec How can i merge in 1 file from another branch into my current branch?04:13
Fissure Evanlec: not easily; git deals with whole trees04:13
Evanlec Fissure: ah04:13
offby1 Evanlec: just copy the file04:13
Evanlec Fissure: alright, #mercurial didnt have an answer for me either, i thot it could be done in git tho04:14
nis_ deskin: but how do you find the first instance of the line?04:14
Fissure you can use git show to get the other version and use rcs merge...04:14
offby1 betcha bzr won't have an answer either04:14
highandwild sitaram: the refactor was ahead of the master, and I think one or two commits are missing from it now04:14
Evanlec offby1: makes sense04:14
sitaram highandwild: page it, look from the top until you see something useful or pastebin it and I will helpyou interpret it04:14
Evanlec Fissure: simple is better ;)04:14
deskin nis_: git blame; that's the same question you asked before, what do you mean more specifically?04:15
highandwild sitaram: ok, suppose I want to reset to the last line which says: "3 months ago". Will I get my current branch back to the state it was ?04:15
ned joined04:15
nis_ deskin: let's say you added a function new() at a point.04:16
Zenopus left04:16
sitaram highandwild: if the line *above* that gives you a time that roughly corresponds to your incorrect rebase, yes04:16
Zenopus_Zenopus04:16
nis_ deskin: since you did a lot of commit.04:16
deskin: how can git blame help you to find the commit where new() was added?04:17
highandwild sitaram: but then, that would be the first line which says "8 minutes ago"04:17
KwikkSilva left04:17
Fissure nis_: well, git works on lines and has no knowledge of functions04:18
sitaram highandwild: if you have nothing between 8 minutes ago and 3 months ago, and it was 8 minutes ago that you did this, then yes -- you need to reset to that 3 months ago SHA04:18
Fissure blame will tell you when the line containing the function header was created, though04:18
nis_ Fissure: thank you. I'm on an example. :-)04:18
sitaram though I assume you should sanity check the idea that nothing happened on this repo for the past 3 months :)04:18
deskin nis_: that's not the same as the first instance of a line :/ I'd probably use git log -u | grep04:18
highandwild sitaram: http://pastie.org/private/42velhfxlkk6i7flogvka04:19
sitaram looking04:19
deskin if new()'s prototype never changed, you can just look at the commit for that line in git blame04:19
nis_ Fissure: and if you don't have header?04:19
Fissure: deskin: you're both assuming it is C content, which may not be the case.04:20
sitaram highandwild: last sane point before most recent activity for master seems to be line 4 (SHA 579520) and for refactor, line 3 (a57bdf5)04:21
nis_ Fissure: deskin: what i understood from kold is that he wants to find when "new()" was added the first time.04:21
highandwild sitaram: so I just do a git reset [ref] ?04:22
jchris left04:22
Alinermedia left04:22
Kimmie left04:22
Fissure highandwild: you probably want --hard04:22
deskin no, I'm not; same applies to java, python, javascript; I guess perl is exempt04:22
nis_ Fissure: deskin: AFAIK, there is no way to do that easily with git04:23
sitaram highandwild: I'd suggest adding '--hard'04:23
highandwild success !04:23
sitaram, Fissure: thanks04:23
deskin you are correct, for some definition of 'easily'04:23
sitaram you're welcome ,,,04:23
noclue left04:23
damainman856 joined04:23
nis_ deskin: since when python has headers?04:23
highandwild a related quesiton. How do I merge a single file from master into refactor ?04:23
deskin there is no well-defined way, certainly; you'll have to look at diffs or iterate on git blame somehow04:23
Fissure nis_: well, do you expect git to have intimate knowledge of all the intricacies of all programming languages?04:23
sitaram highandwild: let's not use the word merge -- that has a specific meaning in any VCS04:24
deskin prototype != header04:24
highandwild sitaram: ok ... should I just export the diff as a patch and apply it ?04:24
deskin when you define the function, you have to tell its arguments04:24
nis_ Fissure: no, certainly not.04:24
sitaram highandwild: what do you actually want to do? take the version from master and put it on refactor?04:24
highandwild sitaram: actually, I really do want to rebase refactor upon master, and I want the resulting HEAD to be the HEAD of refactor04:24
Fissure nis_: then how could it give you a complete answer on whether a function was added?04:25
it only knows about _lines_04:25
highandwild sitaram: or even a merge, with the resulting head = refactor's HEAD04:25
sitaram highandwild: git checkout refactor ; git rebase master04:25
nis_ Fissure: that's partially what i would answer to kold. :-)04:26
gwoo joined04:26
bentob0x joined04:26
Fissure nis_: claiming to be a proxy arguer doesn't excuse you from being wrong04:27
nis_ Fissure: where?04:28
Tricon left04:28
highandwild sitaram: sheesh :)04:29
moh joined04:30
intripoon joined04:30
bob2 joined04:31
nis_ so, does git blame tell you who/when a line was _created_?04:31
bob2Guest3719504:32
deskin yes; it's the first commit where the line existed04:32
nis_ deskin: find that commit is the goal.04:33
solar_ant left04:34
hax0r1337 joined04:34
sitaram nis_: the gui version will let you follow the history of that line and surrounding lines04:35
Arrowmaster in which gui?04:35
sitaram git gui blame04:35
nis_ sitaram: yeah, that's the best way i know04:35
aspotashev|eeepc joined04:36
reprore joined04:36
nis_ sitaram: but if you have dozen or hundreds commits to forward, it's not pretty04:36
sitaram forward?04:37
sitaram didn't understand... :(04:37
nis_ (to follow)04:37
faithfulgeek joined04:38
offby1 bets that "forward" is a common term with some other system04:38
offby1 and we git-heads simply don't know what it means04:38
probably something like "cherry-pick"04:38
snowman856 left04:38
nis_ offby1: no, it's my english knowledge04:39
sitaram as in "step through" perhaps...?04:39
nis_ yeah04:39
highandwild left04:39
sitaram yeah in that case I agree, but then you need "gitk --all -- filename"04:40
nis_ it could help.04:40
solar_ant joined04:41
nis_ but i'm still not convinced as the file history could go trough hundreds of commits04:41
s/trough/through/04:41
parsing git log -p could be easier04:42
neunon left04:42
deskin nis_: I'm not sure why you need to look through commits given git-blame; doing it iteratively is a fine approach if you want the non-trivial first appearance of a function04:44
nis_ iteratively with git blame?04:45
or git gui?04:45
sitaram nis_: if I have 100s of commits I'd use 'git log -S'04:46
deskin sure: run git blame. decide that the version of the function isn't what you want; so, pick the commit next to it, and do git blame <commit>~1 ...04:46
rinse & repeat04:46
sitaram then -- if needed -- zero in on that hash using gitk, or "git gui blame SHA file" to start the gui blame at that hash04:46
deskin I don't use git gui so can't help you there04:46
sitaram deskin: you don't need to restart -- just click the links in git gui blame04:47
deskin: don't == won't or can't ? (no offense; just curious)04:47
Voight-Kampf left04:47
sitaram that rinse and repeat is what guis are made for :)04:48
deskin haven't found a need, and am comfortable with the command line, so more of the former; though won't is a little too strong04:48
true that04:48
arohner left04:49
sitaram deskin: try it once. Git's guis converted me from an exclusive command line jock to understanding that a GUI has a place (outside firefox and mplayer and gimp!)04:49
Fissure i'm unsure why you're including mplayer in that list...04:50
deskin I use gitk a reasonable bit04:50
I guess I worry I'll end up needing a gui to do basic stuff, and then being sshed to a machine but unable to get any work done04:50
mithro joined04:51
Guest37195 left04:52
sitaram Fissure: gmplayer?04:52
sitaram nods to what deskin said about ssh04:52
sitaram Fissure: I see what you mean; I never use the mouse for gmplayer anyway :)04:53
jpld joined04:53
wsc left04:56
reprore__ joined04:56
solar_ant left04:58
xtc joined04:58
solar_ant joined04:58
jceb joined04:59
girishr_ joined04:59
girishr left05:00
reprore left05:02
Fissure what's wrong with ssh -X?05:03
nis_ it's not very fast05:03
Pewpewarrows joined05:03
deskin not always an option; bandwidth, or maybe the remote lacks the gui/ x client code; or maybe I'm using cygwin o_O05:04
petercoulton left05:04
naeu joined05:04
deskin ...or my handheld05:04
Fissure i opened gitk up over wireless earlier today :)05:05
curvature left05:05
solar_ant left05:05
curvature joined05:05
harv_harv05:05
naeu left05:05
deskin sure, but I'm not going to do it on my iPAQ; doesn't even have a proper x server05:05
schacon left05:06
nis_ left05:07
jrmuizel left05:07
xtc left05:09
reithi joined05:09
gberdyshev left05:09
sitaram ssh -C -X works sort of ok but it isn't snappy enough -- and that "snappy" makes all the difference to usable GUI :(05:09
jrmuizel joined05:10
sitaram however, my stand is that stuff that is used rarely, and for which I know the CLI eqvt (if any) I don't mind using the GUI05:10
disappearedng joined05:10
kalle_ left05:10
kalle_ joined05:10
disappearedng Hey how does git clone automatically check out the new patches05:11
RandalSchwartz git clone doesn't check anything new out05:11
it just clones05:11
disappearedng like I have the original code, and someone made a commit, if I do a checkout will the diff be downloaded05:11
hm05:11
RandalSchwartz you want git fetch once you ahve a repo05:11
sitaram you need a pull or a fetch05:11
RandalSchwartz don't mention the "p" word to newbies05:12
disappearedng I am n00b btw, how do I create a repo?05:12
RandalSchwartz they treat it as a shiny object05:12
create a repo of your own?05:12
or clone an existing repo?05:12
sitaram RandalSchwartz: :)05:12
disappearedng like hm.. http://eclim.sourceforge.net/guides/development.html\05:12
RandalSchwartz git init, or git clone05:12
those are your choices05:12
are you the originator of the first tree?05:12
wezyde joined05:12
disappearedng I just want to download the new patches from the external repo05:13
no05:13
xtc joined05:13
RandalSchwartz or are you coming into the middle of existing project?05:13
disappearedng yeah05:13
RandalSchwartz ahh. you want to clone the repo05:13
not "new" patches05:13
but all patches05:13
disappearedng I have cloned it yesterday05:13
RandalSchwartz clone builts a local .git that is a copy of the remote .git05:13
AUgh05:13
so you already have a repo05:13
you want fetch then05:13
not clone05:13
RandalSchwartz sighs05:13
disappearedng ok05:13
disappearedng apologises05:13
disappearedng i thought repo meant like SVN repository05:13
mediogre left05:15
disappearedng git fetch git://eclim.git.sourceforge.net/gitroot/eclim that complains that it's not a git repository05:15
RandalSchwartz No you already cloned05:15
the clone contains pointers to where it came from05:15
disappearedng ok05:15
so05:16
i actually have no idea what you are talking about btw05:16
priidu joined05:16
travisjeffery left05:16
jrmuizel left05:18
sitaram disappearedng: when you clone, you get a copy of the repository05:18
disappearedng ok05:18
sitaram within your copy, the parent from which you cloned is referenced as a "remote" called "origin"05:18
wezyde left05:18
sitaram so you now do "git fetch origin" to get the latest changes from there05:19
disappearedng ok05:19
I am getting a fatal: Not a git repository05:19
sitaram disappearedng: then you did not clone yet? or you're in the wrong directory05:20
deskin or the remote disappeared05:20
disappearedng ok I was in the parent directory05:20
sitaram that wont get "not a git repo..."05:20
deskin er, my bad05:20
disappearedng when I go into the source directory everything worked thx05:20
xenoterracide left05:20
disappearedng so why git over SVN?05:20
sitaram you're welcome05:20
xtcxenoterracide05:20
sitaram gracefully bows out and lets other take the stage; the magic S word came up05:21
disappearedng lol05:21
Ilari disappearedng: And after fetching changes, you presumably want to rebase your changes on top of upstream or merge your changes with upstream...05:22
alanhaggai_ joined05:22
disappearedng Ilari: and how do I do that/05:22
RandalSchwartz I try not to run git over svn. :)05:22
alanhaggai left05:22
alanhaggai_alanhaggai05:23
disappearedng cause I realize that after I did a git fetch origin the code remained the same05:23
Ilari disappearedng: 'git rebase origin/master' (assuming its master of remote you are following) or 'git merge origin/master'.05:23
disappearedng: Really depends on nature of changes you have and kind of access to upstream...05:24
student0x77 left05:24
baetis-fly left05:24
offbytwo joined05:24
offbytwo left05:24
ben_h left05:25
giallu left05:27
Paf joined05:27
schacon joined05:28
aziz left05:28
sea-gul1 joined05:31
reithi left05:32
Ilari disappearedng: Basically, rebasing gives nicer history and is compatible with submitting changes as patches. But merging doesn't change commits on either side...05:33
fujin left05:34
aisbaa joined05:36
bambule left05:37
ReAn` joined05:37
Tuomas joined05:38
tim_jenssen joined05:38
xenoterracide left05:39
xenoterracide joined05:41
dedmajor left05:42
dedmajor joined05:42
reprore__ left05:43
AkumaStreakAkumaStreak|zzz05:46
schacon left05:47
jpld left05:47
AkumaStreak|zzz left05:47
km2 left05:51
cydork left05:55
reprore joined05:56
ReAn`ReAn05:56
mndoci joined05:58
hax0r1337 left05:59
solar_ant joined06:01
jceb left06:02
reprore left06:02
johan-s joined06:06
cpg joined06:07
amahi left06:08
kalle_ left06:10
kalle_ joined06:11
bcardarella left06:12
robinr left06:13
alanhaggai_ joined06:13
ph^ joined06:15
fujin joined06:15
aspotashev|eeepc left06:16
altrux left06:16
aspotashev|eeepc joined06:17
alanhaggai left06:17
alanhaggai_alanhaggai06:17
solar_ant left06:18
xtc joined06:19
xenoterracide left06:19
Paf left06:21
xtc left06:21
xenoterracide joined06:22
solar_ant joined06:26
solar_ant left06:27
srid` joined06:29
rittyan joined06:30
deskin left06:30
deskin joined06:32
ben_h joined06:35
mndoci left06:35
amahi joined06:36
amahi left06:36
cilly joined06:36
amahi joined06:36
marc_kdab joined06:37
Grahack joined06:37
solar_ant joined06:37
aisbaa left06:38
stuffcorpse left06:38
greyface left06:38
ngng left06:38
ngng joined06:38
xenoterracide left06:39
giallu joined06:40
xenoterracide joined06:40
stuffcorpse joined06:41
bobmcw_ joined06:43
bobmcw left06:43
tal67 joined06:43
astrocub how do you keep track of submitted changes in git?06:44
Weaselweb joined06:44
voker57 git log?06:45
tclineks astrocub: log?06:45
drizzd_ astrocub: do you mean what got merged upstream and what didn't?06:45
astrocub yeah, everything06:46
WALoeIII joined06:47
xenoterracide left06:47
krawek_ left06:48
fridim_ joined06:48
tstellar left06:49
xenoterracide joined06:49
cpg left06:51
amahicpg06:51
octagon joined06:51
khmarbaise joined07:00
aspotashev_ joined07:02
johan-s left07:04
fujin left07:09
kalle_ left07:10
tal67 left07:11
fujin joined07:12
aspotashev|eeepc left07:13
Bennid joined07:13
cilly left07:14
GyrosGeier left07:15
kalle_ joined07:16
deskin left07:16
meyering joined07:17
tal67 joined07:17
madduck in trying to import one remote namespace from one repo to another, e.g. copy refs/remotes/one/* to refs/remotes/two/*, I have hit the point where the refs do not point to valid objects07:21
e.g.07:21
error: refs/remotes/upstream/tags/release-0.9 does not point to a valid object!07:21
jayallenjayallen-afk07:22
madduck is there a good way for me to import all the objects from the first remote that I need into the current repo?07:22
(this is a revived git-svn repo, thus the remote refs don't really exist, but I need them)07:22
tatsuyao joined07:23
jkp left07:27
jkp joined07:27
drizzd joined07:29
dedmajor left07:30
thumper joined07:32
fujin left07:32
srid` left07:33
bentob0x left07:34
galderz joined07:36
aspotashev joined07:36
johan-s joined07:37
xenoterracide is there a way to say use auto-commit message07:38
ToxicFrog left07:38
xenoterracide for example merges have a default message07:38
bentob0x joined07:38
xenoterracide and instead of actually viewing it is there a way to just commit07:38
kind like I can do with -m but without it07:38
madduck you could use --no-commit and then commit with -m yourself07:39
hgimenez left07:39
xenoterracide erm that makes no sense for what I want07:39
I want it to just commit07:39
harinath joined07:39
xenoterracide I want to run commit without specifying a -m07:39
on a merge07:39
and just have it commit no editor07:40
harinath left07:40
madduck sed editor to cat?07:40
or somesuch07:40
xenoterracide nope07:41
bad idea07:41
ashleyw_ joined07:41
xenoterracide since it's only 1 merge that I have to do all the time that I want this to do07:41
mbuf joined07:41
ashleyw left07:43
damainman856 left07:45
tatsuyao_ joined07:47
zpoley joined07:47
Predominant left07:50
tatsuyao_ left07:51
Grahack hi all, suppose I'd like to contribute to a project. There is the SourceForge git repo, my local git repo where I work, and a hosted git repo from where I want the maintainer (or anyone) to track my changes. So I clone the SF repo to my laptop to create my local repo but how should I create the hosted one ? cloning from SF or my laptop ?07:52
jmesnil joined07:53
chalky joined07:53
xenoterracide since when did SF get git?07:53
I must have missed that07:53
sitaram both should be the same, assuming your work is in a named branch that is unique to you. You can clone from SF and push just your branch too07:53
xenoterracide: about 3 weeks ago :)07:53
maybe a tad more07:53
xenoterracide sitaram: huh07:53
I missed that news07:53
Grahack thanks sitaram07:53
sitaram didn't make waves; I can understand the reluctance of people who own SVN not to publicise it too much that they now support git :)07:54
xenoterracide now google needs to get it ;)07:54
harinath joined07:54
harinath left07:54
sitaram I would have thought that would happen first (a) they dont have a vested interest in a competing legacy product and (b) they'd want to unseat SF07:55
butit didn't07:55
porcnick left07:55
voker57 they support hg and bzr too now afaik07:55
kuadrosx left07:56
xenoterracide nice07:56
anyone know what the max upload (outside of repos) is for SF?07:57
drizzd_ left07:59
fujin joined07:59
Grahack anyone familiar with gitosis here ?08:00
tatsuyao left08:00
jfkw joined08:01
Grahack I was wondering about the purpose to create a fake user: security ?08:01
darrob left08:01
Predominant joined08:01
shruggar joined08:02
Paf joined08:04
thraxil left08:05
stuffcorpse left08:05
thraxil joined08:05
AlexB joined08:05
Leonidas joined08:05
Helios joined08:05
Dreamer3 joined08:05
nick_h[litage] joined08:05
ArjenL joined08:05
osfameron joined08:05
BooK joined08:05
orospakr joined08:05
stuffcorpse joined08:05
HG` joined08:05
darrob joined08:06
sitaram what fake user?08:07
oh the "git" one?08:08
well it removes the need to create actual users on the system for all devs, which is a good thing, so yes: security08:08
kalle_ left08:10
kalle_ joined08:11
iws joined08:11
Fullmoon joined08:13
ned left08:13
orafu left08:13
orafu joined08:13
mikl joined08:16
tag left08:17
jkp left08:20
jkp joined08:20
GyrosGeier joined08:20
naeu joined08:22
Grahack sitaram: because make gitosis use our user would work too I guess ?08:23
lucsky joined08:23
Chaser joined08:27
egoist joined08:27
Ilari Grahack: Making gitosis share account with something else isn't recommended.08:29
martins touch vendor/gems/see_me; git status # see_me and the entire gems directory is invisible. How can I make git keep track of changes in this directory? git add vendor # returns nothing.08:29
ned joined08:29
plasticine joined08:34
R_Dday joined08:35
R_Dday left08:35
ceyusa joined08:35
R_Dday joined08:35
R_Dday left08:35
samjam joined08:37
jkp_ joined08:39
jkp left08:39
mithro left08:40
Tricon joined08:43
egoist left08:44
tono joined08:45
sejo joined08:45
dedmajor joined08:47
agenteo left08:48
Grahack left08:49
sitaram is vendor or vendor/gems in .gitignore or similar? otherwise git status should point to one of those things as "new, untracked"08:51
martins sitaram: no, I´ve checked! :)08:51
what´s similar, btw?08:51
sitaram .git/info/exclude08:51
ceyusa_ joined08:52
botanicus joined08:52
sitaram also rememebr .gitignore can be in any subdrectory also -- you have to check each directory in the chain08:52
nis joined08:54
ashleyw_ left08:54
ceyusa left08:55
octagon left08:57
ajonat left08:58
simmel1 joined08:58
simmel1 hi, i got the following error from git, do i need to worry?08:59
error: Object 4b5127df968616dee2f4775d795198878ef1638b is a commit, not a tag08:59
fatal: Invalid symmetric difference expression 3fa8749e584b55f1180411ab1b51117190bac1e5...4b5127df968616dee2f4775d795198878ef1638b08:59
martins find . -name .gitignore -exec rm {} \; # And vendor/gems still won´t show up09:00
sitaram simmel1: what were you doing to trigger it? (Not that I know what this is, I don't...)09:01
MisterN joined09:02
sitaram martins: make sure you're in the right directory and not in some subdirectory elsewhere :) (can happen!)09:02
sdizsdiz-afk09:03
solar_ant_ joined09:04
solar_ant left09:04
martins sitaram: hehe, I´ll try a few more things before I do an rm -rf vendors && mkdir -p !$/{gems,vendor} # and hopes I can rebuild it. :)09:04
simmel1 sitaram: i just recognized i setup a tracking branch on a tag ... story goes like this:09:05
martins mkdir -p !$/{gems,plugins}09:05
simmel1 git branch --track foo-2.6.27-patchesx v2.6.2709:05
git checkout foo-2.6.27-patchesx09:05
maybe thats the problem09:06
aser joined09:07
aser hi, is there a way to see a diff between a commit and current working directory *including* untracked files?09:07
SRabbelier joined09:08
wereHamster aser: git-add the untracked files :)09:08
nis aser: untracked files are not known by the git repo09:09
bobesponja left09:09
aser wereHamster: well, I didn't really want to add them09:10
for example I wanted to sync my working dir with a commit, but see what will happen if I do a reset09:10
kalle_ left09:10
wereHamster aser: why would you want to see the diff then?09:10
kalle_ joined09:10
aser I guess it would show the conflicts anyway, but...09:11
Bennid left09:11
solar_ant_ left09:11
solar_ant joined09:11
aser would be nice to have git-reset --dry-run09:12
mikl left09:12
wereHamster you can always reset and then use the reflog to go back..09:12
aser and another thing... reset wouldn't really delete anything, would it?09:13
wereHamster I believe it would refuse to overwrite untracked files, but I'm not sure09:13
and tracked files you can always recover09:13
sitaram aser: git reset does nothing to untracked files -- that is git clean09:15
and a diff for untracked files does not make sense because there is "before" image (or is it /dev/null)09:15
aser sitaram: "before" image?09:16
sitaram yeah, a diff is .. well.. a difference between "before" and "after" isn't it?09:17
aser sitaram: how about a diff between a path and a tree? would it not be possible?09:17
a tree object to be precise09:17
sitaram sure...09:17
I think so (lemme check)09:17
yeah works fine09:19
aser sitaram: touch file; echo "x" > file; git diff HEAD..<what_here>?09:22
sitaram aser: oh that... I thought you meant a tracked directory/files09:22
that won't show, I think09:23
aser hm, what if I extracted a tree object from a commit object and tried that...09:23
sitaram aser: as long as the actual file you want to see in the diff is *untracked*, nothing will work09:24
aser sitaram: ah ok... oh well, I'll have to live with that. thank you!09:24
and thank you wereHamster and nis09:24
sitaram because the left side of the diff is... nothing. Zilch. Nada. Zip. Shunyam. Sunna (I snuck in a couple of Indian words there ;-)09:24
gilimanjaro joined09:24
aser hehe09:24
dwt joined09:27
Octalot left09:27
dwt Hey there, I've fuddled my local history a bit, and am now wondering how to get out of that situation. Specifically I have a local commit that I want to get rid of, but I also have remote changes that I accidentally pulled. So now I'm in a bad merge and git won't let me do a git revert HEAD^ - which should be the right command from what I understand from the manual.09:28
So... what to do?09:28
mnemo joined09:28
mnemo I would like to make git always use the --color parameter for "git diff".... my first attempt was to define a bash alias as alias 'git diff'='git diff --color' but apparently aliases cant contain spaces... any other way to do this?09:29
aser dwt: git revert would create a merge... since you are in the middle of one...09:30
mnemo: ~/.gitconfig09:30
mnemo: and use [color] options09:30
dwt damn. Is there something like "git undo the last two steps" I'd like that09:30
mnemo aser: ah.. thanks09:30
aser mnemo: man git-config will give you the details09:31
Gitbot mnemo: the git-config manpage can be found at http://git.or.cz/man/git-config09:31
mnemo right found it09:32
sitaram mnemo: man git-config and look for color.ui09:32
Gitbot mnemo: the git-config manpage can be found at http://git.or.cz/man/git-config09:32
sitaram there's a whole bunch of color options, but color.ui is like a catchall, I think09:32
simmel1 so i think i got it so far09:32
git allows to create tracking branches on lightweight and annotated branches09:33
arrr tags i meant09:33
git allows to create tracking branches on lightweight and annotated tags09:33
but when you checkout such a branch on an annotated tag, you get something like09:34
fatal: Invalid symmetric difference expression efc968d450e013049a662d22727cf132618dcb2f...e73a9936a2c2bd8f8f408417ac7af7c94043857b09:35
FreakGuard joined09:35
deavid left09:35
alanhaggai left09:36
simmel1 efc... is the commit, e73... is the tag09:36
alanhaggai joined09:36
simmel1 you also get error: Object e73a9936a2c2bd8f8f408417ac7af7c94043857b is a commit, not a tag09:37
but09:37
git-cat-file -t e73a9936a2c2bd8f8f408417ac7af7c94043857b09:37
botanicus_ joined09:38
Grum dwt: just as a quick sidenote, you know git revert doesnt 'undo' a commit but simply creates a new one with the 'negative patch applied' ?09:38
aser dwt: may you want to git-reset?09:38
simmel1 any ideas? not that it was a good idea anyways to track a tag, just the error messages are confusing09:38
NoirSoldats left09:38
dwt aser: possibly09:38
I think I managed to get out of the merge with a git reset --hard HEAD09:39
cedricv left09:39
dwt so I probably need to go back with git reset --hard HEAD^^ (because I've now created the undo commit)09:39
aser dwt: yes, as long as you don't care about the current state of your working dir, reset is your friend09:39
dwt well, I do09:39
but there's nothing in there that can't be readded with two minutes of work09:39
I think I've got it09:40
thanks09:40
botanicus left09:42
cedricv joined09:42
yawn joined09:43
aser dwt: if I were you, I'd create a backup of the directory, do a reset and recopy manually... :)09:43
cedricv left09:43
dwt Well, too late for that now09:44
cedricv joined09:44
dwt :)09:44
Paf left09:44
dwt Well, still learning to cope with git. It's got quite a twisted sense of humor sometimes. :/09:44
yawn i merged a big piece of development (A) into an unrelated repository (B). now i have a couple of conflicts and would like to resolve them in favor of (A). do i need to do this manually with mergetool?09:45
sitaram simmel1: this looks like something serious enough to warrant a mail to the list; it's not even clear to me whether tracking a tag is reasonable (going by the usual meaning of a tag as being a fixed point)09:45
naeu_ joined09:46
naeu left09:47
sejomasterhumper09:48
masterhumperOO1109:49
ben_h left09:50
solydzajs joined09:52
ntoll joined09:56
orafu left09:57
simmel1 sitaram, i have written a mail to the list10:00
sitaram cool!10:01
orafu joined10:02
MisterN left10:02
orafu left10:03
Silvurial[Ag] joined10:06
celling left10:06
aspotashev left10:06
simmel1 left10:09
jmesniljmesnil_away10:10
yawn in other words - i would like the opposite of "ours"10:10
as pull strategy10:10
kalle_ left10:10
kalle_ joined10:11
bratsche_ joined10:13
sitaram yawn: you can do something like 'git checkout --theirs -- filename' for each such file10:14
Ilari yawn: There isn't one. You need to create temp branch, merge your branch with -s ours and then merge the temp branch with default merge strategy10:15
yawn sitaram: thanks! right now i'm trying to use "ours" on the other end and manually update the config on that10:15
majeru joined10:16
yawn which is not so nice ... bad order of commits :-)10:16
i'll try your suggestions10:16
majeru hello, is there a way to join two svn repos in a single git repo, and be able to keep in sync with them?10:16
and also track local changes to them10:17
gebi yes10:18
majeru: man git-svn (--prefix)10:19
Gitbot majeru: the git-svn manpage can be found at http://git.or.cz/man/git-svn10:19
majeru thanks10:19
i have read the manual page, but it's not that explicitly suited for my use case, or maybe I'm not understanding it good enough10:21
yawn llari: can you elaborate? i need to create a temp branch where?10:21
nis left10:23
aserg3d10:24
mnemo left10:28
majeru gebi: the repos are different, and have nothing in common10:30
yawn basically i am just interested in attaching the old history to the new repository w/o checking out anything10:31
majeru as i can see it, --prefix seems to be for similar repos10:31
hgb Hi. I have a git repo using git-svn. It's in ~/src/dev/git, as a full clone thingy, with repo and working copy. I use several branches in there, routinely doing 'git svn rebase' to pick up changes from svn.10:31
However, when I work for a while in a branch, the other branches, including 'master' gets hopelessly out of date (we have a very active svn repo).10:32
What I normally do is 'git checkout master; git svn rebase; git checkout <my current branch>'10:32
The problem with this is that thousands of files are written to, although nothing is really changed (after the second checkout).10:33
So I'd like to have a working copy of master, where I can do git svn rebase and no one notices.10:33
And then next time I do git checkout master in ~/src/dev/git, it'll be fairly up-to-date.10:33
Is that a simple matter?10:33
Grahack joined10:33
j416 joined10:34
diadema joined10:34
sdiz-afksdiz10:39
ProperNoun joined10:43
KwikkSilva joined10:43
Silvurial[Ag] left10:44
aspotashev joined10:45
HG` left10:48
aspotashev left10:51
hobodave joined10:51
hobodave hey guys10:51
mtl left10:52
aspotashev joined10:52
jschoolcraft joined10:53
seangrove_ left10:53
dwave joined10:53
tp1 joined10:54
jschoolcraft Not sure if this is the appropriate channel, if not please point me in the right direction. Has anyone set up atom/rss feeds for commit messages from gitosis hosted repos?10:54
Amenthes joined10:56
girishr joined10:56
Amenthes Hi, I have a git repository which gives me a "fatal: Out of memory, malloc failed" when gc-ing. What solutions do I have for this problem? I'm on Windows with the latest msysgit version.10:57
CardinalNumber left10:59
grahal joined10:59
cemerick joined11:02
Ilari Amenthes: Large files in repo?11:03
knitt1 joined11:03
tal67 left11:04
Amenthes Ilari, nope. The largest seems to be a git file which has 529 MB. Does it matter that I seldom do gc?11:07
Ilari Amenthes: .pack file?11:07
Amenthes Ilari, no. It has no extension. The second one, which is indeed a pack file has 75 MB.11:08
simmelpp joined11:09
Ilari Amenthes: What's the name of the 529MB file?11:09
Amenthes Ilari, it's a hash. Aparently from a previous commit. It's in the objects directory11:10
gebi majeru: doesn't matter, to add a second svn repo to a current one eg.: git svn -s --prefix foo/ -Rfoo http://svn.foo.org; git svn fetch foo11:10
girishr_ left11:10
kalle_ left11:10
kalle_ joined11:11
solar_ant left11:11
voker57 left11:12
KwikkSilva left11:15
jschoolcraft left11:15
cpg left11:18
solar_ant joined11:19
egoist joined11:20
dreiss left11:20
Ilari Amenthes: 38 hex digit named file inside objects/<2 hex digits>'?11:20
CardinalNumber joined11:20
Amenthes Ilari, exactly11:20
KwikkSilva joined11:21
davidad left11:22
sitaram that's an actual object; 529MB zlib compressed! wow...11:23
Ilari Amenthes: Sounds like you added some large file...11:23
sitaram ISTR that git requires approx 2.5x the largest file in RAM to pack...?11:23
Gitzilla left11:24
Amenthes How do I see the commit message for that hash?11:24
wereHamster Amenthes: that hash doesn't have to be a commit. See with: git cat-file -t $hash11:25
Gitzilla joined11:25
sitaram wereHamster: it won't be a commit! it'll be a file11:26
(that big, a commit? naah!)11:26
wereHamster sitaram: pipe /dev/random into git-commit and voila, a 500MB commit message :)11:26
egoist left11:27
Amenthes What if git cat-file -t $hash gives me "fatal: Not a valid object name 51e2cf335373ebc0a2629a8cc8d17fb3705d0a" ?11:28
giallu left11:28
wereHamster Amenthes: prepend the <2 hex digits> in front of the filename11:28
majeru gebi: i want to have them in different subdirectories, if possible11:30
Amenthes wereHamster, thanks. It says blob. Now I should see what large file I commited...11:30
sitaram Amenthes: git rev-list --all | while read r; do git ls-tree -r -t $r | grep d74c && echo $r; done11:31
where d74c is the hash I am looking for -- change it to the first 4 characters or so of yours11:31
gebi majeru: then why not just make 2 repositories?11:31
sitaram then gitk <the result SHA> (or one of them)11:31
majeru gebi: well, i'd like to unify them as sub-modules11:32
nad to be able to commit stuff to both of them, while keeping track of their each upstream11:32
and*11:32
gebi then make them git submodules11:32
ProperNoun left11:33
Octalot joined11:33
aziz joined11:33
ben_h joined11:34
fdv hgb: or, if possible, you could rebase the master branch without checking it out? but I guess that's not really possible11:35
hgb fdv: That would be ideal, but I don't think it's possible.11:36
sitaram wereHamster: just saw your comment... hehe :)11:36
fdv does anybody know it that's possible (to rebase a non-checked-out branch)?11:37
wereHamster nope, not really possible11:38
hgb wereHamster: Do you know about my proposed scenario (above)? Can I make a working copy of a certain branch from a repo, rebase in it, and then next time I checkout in the other wc (which is located with the repo), the branch is uptodate?11:39
wereHamster don't know, sorry11:41
jmesnil_awayjmesnil11:41
sitaram Amenthes: did you run the command I gave you?11:42
Amenthes sitara, yes. No ouput11:44
I meant output11:44
sitaram did you remember to substitute some 4 consecutive characters of the 40-digit filename in place of my d74c?11:45
if so, I would (a) take a backup of the whole thing and then (b) remove that file and try "git fsck --full"11:46
Amenthes sitaram, :) Of course. I used the hash exactly as in the git cat-file command from above.11:46
sitaram :) no offense -- we all get tired sometimes that's all11:46
Amenthes sitaram, it's ok :)11:47
sitaram, is there a (b) plan?11:47
cannonball joined11:47
bentob0x question: repository1 => merged from repository2:branch_1, then repository2 => merge self:branch_1 into self:master, then delete branch_1 => can I safely pull repository2:master into repository1?11:47
Amenthes sorry, now I was tired :P11:47
tal67 joined11:47
sitaram the (b) plan would be similar. Backup the *rest* of the repo, just *move* this file out of the way (some other name, in the higher level directory -- a "move" on the same "drive" should be instantaneous) and then try the fsck11:48
Amenthes sitaram, thanks. I'll try these and tell you what happened.11:50
alester left11:52
sitaram the other thing you can do, is something like this: git show large-40digit-hash | head > junk; then take the junk file to a Unix machine and run "file" on it to see what it is (or just open it in wordpad or something). Might give you an idea what it is...11:52
bremner Is there an easy way to configure git web to show "clone this" url's for http:// and git:// for each project11:53
gebi bremner: for git:// it's @git_base_url_list = "git://foo.org" in gitweb.conf11:55
MisterN joined11:55
d0k joined11:57
qrush joined11:58
bremner hmm. ancient gitweb here, I wonder if that is a problem12:00
esparkman left12:00
qrush_ joined12:01
la_mer joined12:01
bremner added git_base_url_list=("git://pivot.cs.unb.ca/git"); but no url shows up. I don't need to restart anything, right, its just CGI?12:01
qrush left12:02
bremner decides to upgrade gitweb, just for the hell of it12:03
fluxusps joined12:04
sitaram bremner: the README says something about cloen urls; sorry I'm not in a position to test etc or say anything more useful12:05
Pe3k joined12:06
fluxusps left12:07
bcardarella joined12:07
Pe3k how to show single file history dialog window in gitextensions? dialog is described in User Manual, but can't find where to start it...12:09
ben_h left12:09
ben_h joined12:09
hummingkid left12:10
ben_h_ joined12:10
kalle_ left12:11
Grum bremner: did you put that exactly on that line? because you need to write perl, so at least it is missing a '@' :)12:11
kalle_ joined12:11
gitte joined12:11
bremner ahh, it shows up now. Not sure if I was blind before or the upgrade fixed it.12:11
solar_ant left12:12
Grum blind i bet =D12:12
bremner Grum: thanks for the vote of confidence :-)12:13
gitte Grum: just because you have one eye. Hah!12:13
Grum i had three last time i checked12:13
cemerick left12:14
gitte Grum: oh, no! Give me back my two eyes!12:15
Grum stabs wildly12:15
Grum no!12:15
alanhaggai left12:16
solar_ant joined12:16
tim_jenssen left12:21
solar_ant left12:22
mib_454get joined12:25
hulo joined12:26
leanucci joined12:26
hulo holu. i'm fairly new at revision control. I basically want to clone a git repo of the app i like (ncmpcpp), and be able work on it without sending anything upstream12:26
Amenthes left12:27
hulo upon the next upstream sync, i want to be able to patch my work dir appropriately with the changes i made12:27
again, not sending anything upstream12:27
is this possible?12:27
j416 hulo: git pull12:28
aspotashev|eeepc joined12:28
hulo so initially, i'd git clone the upstream12:28
j416 hulo: git is distributed. Nothing will be sent upstream unless you say so.12:28
hulo what's the next step to setup my own verson12:28
Pe3k left12:28
j416 hulo: the clone is your version.12:29
you can branch if you like.12:29
ben_h left12:29
gitte mumbles something about rebase possibly being a better option than pull...12:29
j416 gitte: of course..12:30
hulo all suggestions welcome :)12:30
j416 i was thinking of pulling in master then rebasing on that12:30
(in a separate branch)12:30
doener if master is just a "copy" of origin/master, you don't need master12:30
j416 I mostly work locally so I have no good workflow when it comes to clones of remote repos.12:31
gitte j416: that's my gripe with it: why pull if you rebase anyway? (pull = fetch + merge)12:31
ben_h joined12:31
ben_h_ left12:32
j416 gitte: ah, rebase onto origin/master ?12:32
makes sense, thanks12:32
doener maybe we can agree on "git pull --rebase"? ;-)12:32
hulo so after the initial clone, i can work on it as i please, then simply $git rebase?12:32
ben_h_ joined12:32
j416 :)12:32
hulo I found http://jbowes.wordpress.com/2007/01/26/git-rebase-keeping-your-branches-current12:32
it helped me understand rebase somewhat12:32
j416 hulo: you should read the git book12:32
aspotashev__ joined12:35
j416 it should answer most or all of your questions12:35
gitte doener: ah, thanks for reminding me... I always wanted to write a patch to support git pull --rebase=i12:35
fujin left12:35
hulo j416: i'm a dive-head-first kind of guy :)12:35
j416 hulo: then dive right into the book :)12:35
hulo and i think for such a small experiment, all i'd need would be snippets from the book12:35
not planning on overseeing corporate projects any time soon :D12:35
j416 you should get familiar with the basic concepts of git12:35
|chalky| joined12:35
aspotashev|eeepc left12:36
jackdempsey joined12:36
lorandi joined12:36
ajonat joined12:36
chalky left12:37
mfilipe joined12:38
yawn_ joined12:38
aspotashev left12:38
gitte j416: it cannot hurt to get a basic understanding what a merge is (it is a commit), what a fast-forward and a direct ancestor is, and how the commit graph is represented.12:39
Ah, sorry.12:39
hulo: this was for you.12:39
j416 hehe12:39
hulo gitte: he doesn't mind the reinforcement :D12:39
gitte hulo: because you will not really understand the difference between a rebase and a merge otherwise.12:39
hulo: how do you know?12:39
gitte is always open to learn some mind-reader tricks12:39
hulo you just missed your first lesson12:40
aspotashev joined12:40
aspotashev_ left12:40
hulo 2nd12:40
gwoo_ joined12:40
hulo ;)12:40
brtzsnr joined12:41
deavid joined12:41
brtzsnr hi. how do I revert a locally modified file?12:41
j416 brtzsnr: check it out from your repo12:42
brtzsnr never mind.. git checkout -- file12:42
j416 yep12:42
gitte brtzsnr: if you already staged changes, you might want to insert a "HEAD" before the "--".12:42
cmarcelo joined12:42
doener brtzsnr: note that that gets the file out of the index. So e.g. a file deleted by "git rm" won't be restored, you need to use HEAD then (as gitte said)12:43
brtzsnr: OTOH, without HEAD is the right way if you want the version back that you already "git add"ed12:43
qrush_ left12:43
tim_jenssen joined12:45
j416 left12:47
hobodave left12:47
j416 joined12:48
berndj joined12:48
faithfulgeek left12:49
brtzsnr 10x for the info... none of my modifications were staged so... first version was enough12:49
[intra]lanman left12:50
ben_h left12:50
parasti joined12:52
qrush joined12:52
alester joined12:53
alester left12:53
la_mercemerick12:54
yawn left12:55
km2 joined12:55
knitt1 left12:55
RaySl joined12:55
hummingkid joined12:56
trmanco joined12:57
gwoo__ joined12:57
km2 left12:58
jaeckel joined12:59
gwoo left12:59
hcl2 joined13:02
hcl2 i have this file "config.git-hash", what does it do? do I need to save it?13:02
gitte hcl2: never heard of that file name.13:02
priidu left13:03
hcl2 oh... nm, my bad13:04
git-ref-list HEAD | sort > config.git-hash <-- from a mailing list...trying to duplicate svn rev numbers13:05
:/13:05
h0nk1 left13:05
Ilari hcl2: ref-list?13:05
hcl2 rev13:05
maybe13:05
i still can't get over how easy it is to organize/use branches in git vs svn13:06
catalis joined13:07
ThaDon joined13:07
stuffcorpse left13:08
stuffcorpse joined13:08
doener I'm constantly amazed how the same parts/concepts of git manage to get "wow this is great/easy/simple/intuitive" and "OMFG this is hard/confusing/bullsh*t" opinions at the same time from different people13:08
hcl2 and i've been using it for about 3 months13:08
kukks joined13:09
hcl2 i just started doing the git-svn to hook into old svn projects because I have too many "idea" changes lying around un-committed13:09
ajonat_ joined13:09
hcl2 so, basically i make a new co of trunk on the same machine13:09
doener it happened to me more than just once that someone complained how hard X is, and while I've been still thinking about how to explain that better, someone else came and told how great and easy X is...13:09
ajonat left13:10
hcl2 it's pretty hard to get used to, the syntax still doesn't make sense, but it still makes stuff easier13:10
if you just forget about trying to grok the syntax13:10
doener which syntax?13:11
khmarbaise_ joined13:11
esparkman joined13:11
hcl2 hypothetical syntax13:11
Sho_ joined13:11
ntoll left13:11
hcl2 of git commands which don't use normal words, like git checkout somebranch vs git checkout dir/somefile.txt13:11
khmarbaise left13:11
hcl2 luckily i don't have any dirs called "master"13:11
doener you'd use "--" to disambiguate the argument then13:12
git checkout -- master ==> get the file "master" out of the index13:12
hcl2 ^ that syntax13:12
doener git chechout master -- ==> checkout the branch head master13:12
j416 doener: maybe those who are very used to another system have a hard time re-learning, and people (as myself) who never really got to grips with any other system find it easier, because they don't really have any other references13:12
hcl2 well, i used both cvs and svn at work everyday for a number of years each13:13
j416 hcl2: then maybe you're just a quick learner hehe13:13
hcl2 it's not that I don't "get" the syntax, it's that I can't put all that effort into memorizing esoteric thigns that I never need to do13:13
gwoo_ left13:13
aspotashev left13:14
doener hcl2: that "--" separator is quite a common thing... e.g. "grep -- -- <somefile>" to have grep searching for "--"13:14
mndoci joined13:14
hcl2 but, i'm not doing squashing, or rewriting (although I did fix a spelling mistake in a commit message yesterday)13:14
i woudl just do grep "\-\-" or whatever13:14
Pieter joined13:14
hcl2 only time I use -- is when passing :1 or :0 to xinit13:15
j416 hcl2: I have found it easiest to learn 'from the inside out', starting by learning how git works, to understand what _can_ be done, and then learn the command that actually does that. Instead of just learning a command and then what it does.13:16
this way I can be sure there is a way to do something, I just have to find the syntax13:17
hcl2 j416: it took a while, but there was an "ahah" moment where i did learn the inside from the out (at least i like to think so)13:17
krh joined13:17
hcl2 there's no way to describe branches though, to someone who has used cvs/svn13:17
halfline joined13:17
hcl2 the only thing to say is "you will actually *use* branches"13:18
j416 haha13:18
hcl2 if you already do, you will use them the actual way you wanted to13:18
doener hcl2: heh, interesting that you mention that, gitte raised that topic on the mailing list a few days ago. Maybe you have some input?13:18
hcl2 explaining?13:18
doener hcl2: yeah, what's hard about that? Any idea how the docs could be improved or so?13:19
bcardarella left13:19
hcl2 well, i didn't really read the docs, i watched the linus video, got it, played, googled13:20
doener ok13:20
hcl2 it depends on what you're coming from... the mindset change cannot be underestimated though13:20
coming from cvs/svn13:20
there's just no good way to write it out other than, it's 100% different, but 99% the same13:21
Grahack left13:21
doener I came from svn (I used cvs, but never really much more than update/commit), but git just happened to work how I expected it to work13:21
djpig joined13:22
doener and branching is totally natural, you clone, you commit ==> you have a new branch, automatically, by the virtues of having a DVCS13:22
jasmin joined13:22
ben_h_ left13:23
ben_h joined13:23
doener hm, I think "virtues" is not the word I meant to use there...13:23
ben_h_ joined13:23
coopsh joined13:23
osfameron "by virtue of" is fine I think13:23
ben_h_ left13:24
j416 looks fine13:24
mbuf left13:24
j416 http://81.233.1.70/1h/virtue.txt13:25
erm.13:25
doener j416: ah, thanks, so s/the virtues/virtue/ and I'm fine :-)13:26
aspotashev__ left13:26
doener has a bad habit of using phrases he picked up somewhere without knowing their exact meaning (and realizing that only after using them)13:26
j416 hehe13:27
I think that is a good thing in a way. It helps you learn.13:27
I do that too sometimes.13:27
aspotashev joined13:27
aspotashev|eeepc joined13:27
petercoulton joined13:27
osfameron my mum used to say "miffed" to mean confused (it means "annoyed" in UK slang)13:28
j416 crazy13:28
it would certainly miff me if you used it13:29
doener j416: yeah, it's not bad per se, but I should change the order from "hear, use, lookup in dictionary" to "hear, lookup, use" ;-)13:29
j416 hehe13:29
yeah13:29
"hear, use, get corrected" might be faster though :)13:29
drizzd doener: That's the most important improvement of DVCS IMO13:29
doener j416: then I'd be in line with folks that need to get told to RTFM though ;-)13:30
j416 haha, true13:30
drizzd You can make branches with most conventional CVSs, but you have to _think_ about it.13:30
alanhaggai joined13:30
simmelpp left13:30
drizzd *VCSs13:30
doener drizzd: CVSs is fine, it's Crippled Versioning Systems ;-)13:31
ben_h left13:31
drizzd hehe, I'll remember that13:31
Grahack joined13:31
ciaranm all you people abusing cvs clearly never had to use any of its predecessors13:32
Zathrus what's wrong with branching in CVS? Now pardon me while I spend the rest of the day merging our latest branch back to HEAD.13:32
PeakerWork joined13:32
Zathrus ciaranm: I did. And still do, to a limited extent.13:32
Rhonda ciaranm: I love RCS big time, and still use it on regular basis.13:32
jackdempsey left13:33
Zathrus since the previous team didn't move from RCS until 2006.13:33
PeakerWork does anyone know a C comparison thing that knows to ignore meaningless changes? "git diff -w" helps, but still plenty of changes that don't affect anything are shown13:33
Bass10 joined13:34
drizzd PeakerWork: you could diff the generated assembler code13:34
dedmajor guys, could you help me a bit? i have a clone of remote git repo with two local checkouts - branch master and branch v1.0 (for example). let say i'm in branch master now. i make changes and commit some code. now, what is the optimal way to cherry-pick this commit to branch v1.0? i do checkout v1.0, then git pull (to avoid non-fast forward push), then git cherry-pick, then git push (to push both commits), then git checkout master, and continue13:35
developement. So, i thinks it's to obscure and i need some help to figure out what i'm doing wrong )13:35
scarabx joined13:35
drizzd If you just want to ignore all whitespace changes (including new lines and removed line breaks), I suppose you could simply compare an auto-formatted version.13:35
plasticine left13:35
PeakerWork drizzd: that's even more difficult :)13:35
drizzd: Nicer to compare a canonized AST or such, perhaps even one that canonizes name13:35
ciaranm dedmajor: there was a cherry-pick --onto proposal at one point, but the powers that be didn't like it13:36
hcl2 doener: I used git/svn with only commit update and nothing fancy only because I realized that branching/merging was just not worth the problems. I never did anything fancy13:36
drizzd well, the names part only works for static variables13:36
or local variables13:36
hcl2 doener: and git did not work anything like I expected, in fact Ithought I did some commands wrong because they were too quick13:36
swombat joined13:37
swombat hello...13:37
hcl2 like git co -b newbranch .... too quick13:37
did not think it worked13:37
swombat "Your branch is ahead of 'origin/master' by 1 commit." << I want to get rid of that commit (I made it on a clone which doesn't have remote access)13:37
how do i do that?13:37
dedmajor ciaranm: so, anyone is cherrypicking commits now in the same way as me?13:37
cannonball hcl2: You should add some sleep commands so that it feels more like other products...13:37
ciaranm swombat: git reset --hard13:37
loincloth joined13:37
hcl2 cannonball: yeah, that's what I do with some of my php code ;)13:37
swombat ciaranm: still the same13:37
dedmajor ciaranm: err/everyone13:37
ciaranm dedmajor: i do more or less what you said, except i don't pull13:38
snuxoll: what command did you run exactly?13:38
Fullmoon left13:38
doener dedmajor: the cherry-pick vs. pull order doesn't matter much, it might in some cases allow a fast-forward _locally_ instead of a merge, but for the push part, cherry-picking first and then merging is just fine13:38
j416 hcl2: the only thing that happens when you create a new branch is really git writing a SHA1 to file, so it should be quick :)13:38
hcl2 alias "git co -b"="sleep 2; git co -b"13:38
cannonball hcl2: We're still using git 1.5.x. I can't wait to get it up to 1.6.x, it has some tunings that is supposed to make it much faster over nfs which is what our central home directories are.13:38
swombat ciaranm: i've already committed the stuff, I but couldn't push it (since it's on a read-only clone), and so now i want to uncommit it13:38
ciaranm swombat: uh huh. git reset --hard.13:39
doener dedmajor: what you should consider is doing things the other way around. Put bugfixes into 1.0 first, and then merge that to master (I assume that 1.0 is the maintenance branch, and master is for the next version)13:39
hcl2 but... when you first playing with git, and you come from svn+https over at SF... you honestly think something might be wrong13:39
j416 hehe13:39
swombat ciaranm: http://pastie.org/private/bb5kklhp5jkucu01i3chmq13:39
Fullmoon joined13:39
doener dedmajor: that way, you get all accumulated bugfixes from 1.0 to master in one swoop, and don't have "duplicated" commits, like you do with cherry-picking13:39
wshimmy1wshimmy13:39
hcl2 you think that you screwed up the command..... or that it's just getting ready to do stuff and that it will take 4 seconds *later*13:39
ciaranm swombat: you need to read man git-reset13:39
swombat: you need to tell it what to reset to13:40
swombat ah13:40
doener dedmajor: also makes it a lot harder to forget some commits. The merge always gets all the stuff from 1.0 to master13:40
jschoolcraft joined13:40
markelikalderon joined13:40
hcl2 also, the fact that all branches can get access to the history of all other branches is a little wierd13:40
swombat ciaranm: great, that worked13:40
doener dedmajor: while the cherry-picking means that you need to remember to pick each interesting commit13:40
swombat (specifying which commit)13:40
dedmajor doener: i thought master is a developement unstable branch, which should be tested before changes goes into stable branches (like 1.0)13:40
swombat thanks for the tip!13:40
hcl2 that is not like svn where branches are just copies13:40
i still don't understand git tags, haven't used them yet13:41
gberdyshev joined13:42
ckm joined13:42
doener dedmajor: that's your choice. For example git.git has 4 branches. "maint" which gets bugfixes and is merged to "master". "master" in turn is meant to be pretty much stable and becomes the next release. And "next" and "pu" are the "unstable" branches13:42
j416 hcl2: a tag is just something that points to a commit, often as its own object with a message etc.13:42
used for giving things a name13:42
gberdyshev left13:43
doener dedmajor: of course things that go to "maint" should be fine and tested, before you let them get out, but that doesn't mean that you must cherry-pick them from master13:43
hcl2 i just haven't figured out the syntax for doing them. again, i know what they are in svn, they are copies13:43
dedmajor doener: oh, thanx ) i'm very appreciating your explanations )13:43
gberdyshev joined13:43
j416 in git they are just references13:43
or, contain references that is13:43
doener dedmajor: that could even be "bad" in some way. "master" might have changed even to make the bugfix work on it, but the cherry-picked version in 1.0/maint fails in a subtle way13:43
s/even/enough/13:43
faithfulgeek joined13:44
doener dedmajor: but going the other way around, that would mean that it works on 1.0 (for which it was written) and then subtly fails on master (which isn't _that_ bad, as master isn't as "critical")13:44
dedmajor doener: i'm still very new to git, so i need a bit of time to perceive all that you are saying now ) wait 013:45
Ryback_ joined13:45
alanhaggai_ joined13:47
Ryback_ left13:47
doener j416: tags don't have to reference commits, they can reference any object. For example there's the junio-gpg-pub tag in git.git that tags a blob containing Junio's GPG key13:47
Ryback_ joined13:47
j416 doener: wow, I didn't know that.13:47
(I did think though: doener will say something about what I said)13:48
:P13:48
priidu joined13:49
doener hm, is that good or bad? :-|13:49
hcl2 haha13:50
petercoulton left13:51
sitaram the only bad thing is for me: I can't even *read* as fast as doener can type :(13:52
petercoulton joined13:52
giallu joined13:52
sitaram thanks God for backlogs13:52
gilimanjaro left13:53
spearce joined13:54
loinclot_ joined13:55
[intra]lanman joined13:55
loincloth left13:56
dedmajor doener: well, the way you have explained seems to be very smart, you helped me very much )13:57
alanhaggai left13:57
alanhaggai_alanhaggai13:58
Grahack left13:58
doener dedmajor: you're welcome13:59
markelikalderon left14:00
bcardarella joined14:00
hpoydar joined14:01
gnublade joined14:01
j416 doener: always a good thing :) Keep on correcting hehe14:02
petercoulton_ joined14:02
petercoulton left14:03
petercoulton_ left14:03
spearce` joined14:03
drizzd j416: doener is like a safety net. I don't even think about what I'm saying any more.14:03
j416 drizzd: :D14:03
boto joined14:03
petercoulton joined14:04
dwt left14:07
bdiego joined14:07
solar_ant joined14:07
bcardarella_ joined14:07
markelikalderon joined14:08
kraymer joined14:08
solar_ant left14:08
alester joined14:09
km2 joined14:10
jackdempsey joined14:11
ToxicFrog joined14:12
bcardarella__ joined14:12
j416 left14:13
DavidKlein joined14:13
bcardarella left14:14
andres joined14:14
yawn_ left14:16
troyt joined14:17
bcardarella__ left14:17
spearce left14:18
priidu left14:18
mndoci left14:20
gnublade left14:20
scarabx left14:21
aspotashev left14:23
eletuchy_ joined14:24
bryanl joined14:24
ia left14:24
ia joined14:25
petercoulton_ joined14:26
petercoulton left14:26
petercoulton_ left14:26
petercoulton joined14:26
jchris joined14:26
ahf left14:27
Pewpewarrows left14:27
bcardarella joined14:27
girishr left14:28
bcardarella_ left14:30
markelikalderon left14:30
ahf joined14:33
mib_454get left14:33
bewst joined14:37
bdimcheff joined14:37
bewst can someone explain to me what remotes/origin/master and remotes/public/master mean? In particular, what's the significance of that middle element (origin or public)?14:38
swombat left14:38
Grum it is the name you gave for the remote14:38
hcl2 the name of the remote location, i think14:38
Grum the default name is 'origin'14:38
doener bewst: if you use "git remote add foo git://host/repo" that sets a default fetch refspec for that remote14:38
bewst: in that case, the config would have remote.foo.fetch set to "refs/heads/*:refs/remotes/foo/*"14:39
bewst: so "git fetch foo" becomes equal to "git fetch foo refs/heads/*:refs/remotes/foo/*"14:39
hcl2 ^ all that stuff is still confusing to me14:39
doener bewst: and that fetches all branch heads from the "foo" remote, and stores them in the refs/remotes/foo/ namespace14:39
Zenopus_ joined14:39
bewst doener: ...yeah... but... how does public/master and origin/master line up with the examples you just gave?14:40
doener bewst: so if it fetches "refs/heads/master" (the "master" branch head) it's stored in refs/remotes/foo/master14:40
bewst: those are shortnames14:40
bewst I am seeing both public and origin in this repo, and I only ever cloned or pulled from one place.14:40
doener: shortnames for what?14:41
doener bewst: when you use e.g. "master", git tries things like refs/heads/master, refs/remotes/master etc.14:41
bewst doener: according to your examples, they would be servers.14:41
broonie joined14:41
priidu joined14:41
bewst doener: yes, I know what master is.14:41
doener: I'm asking about the element before master.14:41
jschoolcraft left14:41
doener bewst: that's just one element in the refname, and it's just a default, chosen so that it's the same as the name of the remote14:42
bewst: there's no "implicit" meaning to it, it's all just defaults14:42
bewst left14:43
Grum doener: if you are merging multiple branches what is the 'sane' thing to do? just merge from origin/xxxx or make a local branch for each and then merge?14:43
seems all of our merge commits will contain origin/ :)14:43
Pewpewarrows joined14:43
bewst joined14:43
dodo_the_last joined14:43
bewst doener: sorry, ERC just locked up emacs on me14:44
doener: so I missed anything you may have typed recently14:44
Grum o.O use a real ircclient =D14:44
doener bewst: what's the last thing you saw/remember?14:44
Grum he just missed:14:44
bewst doener: you were telling me what "master" means or so I thought14:44
Grum 16:42:20 < doener> bewst: that's just one element in the refname, and it's just a default, chosen so that it's the same as the name of the remote14:44
16:42:35 < doener> bewst: there's no "implicit" meaning to it, it's all just defaults14:45
justatheory joined14:45
bewst doener: and I was saying that I don't know where those names came from... thx, Grum14:45
gwoo__ left14:45
doener bewst: no, I meant to explain that "master" is just a shortname, the full refname is refs/heads/master (if were talking about a local branch head)14:45
bewst doener: OK, let me try my question this way14:45
doener bewst: and similarly, that "origin/master" is a shortname, usually for refs/remotes/origin/master14:45
and those names are generated by the means of that config setting from "git remote add"14:46
Grum but you can have a branch called origin/master as well -- in which case it would refer to: refs/heads/origin/master14:46
doener so it all boils down to the fact that "git remote add" sets a default refspec that puts the fetched branch heads into the refs/remotes/<remote-name>/ namespace14:46
bewst doener, Grum: I'm looking at a gitk window and trying to find out what these things mean that I'm seeing there. Is there a place I could post a screenshot?14:47
Ilari bewst: IIRC, the expansion rules are (not in order of percedence, X is the entered shorthand: X, refs/X, refs/heads/X, refs/tags/X, refs/remotes/X, refs/remotes/X/HEAD .14:47
doener so the "origin" and "public" parts "normally" mean that the stuff comes from the "origin" or "public" remote respectively14:47
"normally" because it's all just defaults, you can do "git fetch origin refs/heads/foo:refs/remotes/public/foo" and "inject" origin's foo into the refs/remotes/public namespace14:48
bewst doener: I'm trying to tell you that there's only one repo that could possibly ever have been used as a remote14:48
doener: so I don't understand where these distinctions are coming from14:48
schacon joined14:49
Grum bewst: you added the 'public' remote manually14:49
hdl2 joined14:49
Grum and if you didn't the you copied the complete git directory from did14:49
err +person14:49
wmoxam joined14:49
bewst Grum: from did err +person?14:49
doener bewst: in gitk, do these names read as just "origin/master", "public/master" or "remotes/origin/master" and "remotes/public/master"?14:50
bewst The latter14:50
doener ok14:50
bewst: could you pastebin your config?14:50
bewst doener: and they point to different commits.14:50
loinclot_loincloth14:50
bewst doener: sure...14:50
loinclothcloth_of_loin_va14:50
hdl2hdl14:50
bewst doener: do you mean my .git/config ?14:50
doener yep14:50
cloth_of_loin_vacloth_of_loins14:51
Sho_ left14:51
antoranz joined14:51
ahf left14:51
Grum doener: that is default behaviour afaik, the [remotes/origin] is in 'light orange' and the [master] part is green14:52
juanjoc joined14:52
ahf joined14:52
bewst doener: OK, I see it in http://gist.github.com/10052514:52
Grum i'm trying to understand where the confusion comes from14:52
doener bewst: yeah, two remotes, but they reference the same repo14:52
bewst doener: yeah, but different commits, somehow?14:53
Grum ofc!14:53
doener bewst: "remotes" are a configurable entity, they're _not_ the same as the repo14:53
bewst: probably because one of them didn't get fetched from recently14:53
Grum if you don't update one where you do update the other14:53
doener bewst: if you do "git fetch public" that will update the remote tracking branches for "public", i.e. refs/remotes/public/*14:53
bewst: but "git fetch origin" will update the refs/remotes/origin/* stuff14:54
bewst doener: I think I get it. Hang on...14:54
doener bewst: if you fetch only one of them, the other will "lag behind"14:54
Sho_ joined14:54
bewst doener: thanks, now all is clear14:55
doener: just one other question. How do I delete one of these remotes? as they both point to the same repo it just adds confusion14:55
doener git remote rm <name>14:55
Ilari bewst: And btw, why there are two remotes, one for git:// and one for ssh://? Those should be in sync.14:55
doener though your config is a bit interesting14:55
Sho_ left14:56
bewst Ilari: oh, I think I can explain that... brb14:56
doener bewst: "master" is setup with remote "public", but that's apparently the one that "git clone" created14:56
Sho_ joined14:56
DavidKlein left14:56
bobmcw_bobmcw14:57
schacon left14:57
Sho_ left14:57
doener dropping the "public" remote seems like it's less "work" (as you don't need to adjust the config for "master")14:57
Sho_ joined14:57
tedoc2000_afktedoc200014:57
alester Ilari: Why is it back to have one git: and one ssh: ?14:58
bewst Ilari, doener: what happened was that on /this/ machine, I mistakenly cloned from github's "public" (I think meaning read-only) URL and then later switched to the ssh one so I could commit14:58
doener but I wonder why "public" is there in the first place... submodule stuff? Or just "misuse" or "clone -o <name>"14:58
Zenopus left14:58
doener alester: it's pointless (if it's the same repo), and leads to confusion, as we've just seen, cause things get out of sync14:58
Zenopus_Zenopus14:58
bewst doener: I'm using submodules, but I don't think it has anything to do with that14:58
knitt1 joined14:58
ferdy_ joined14:59
doener bewst: me neither, but I'm totally clueless about submodules, so I'm just throwing around my thoughts ;-)14:59
jast if it's the same repo, why not just remove one remote and prune away its remote tracking branches?14:59
bewst doener: I think it's just because I muddled my way through pushing to the ssh:// URI without really knowing what I was doing.14:59
jast submodules don't touch refs/remotes14:59
antoranz_ joined14:59
bewst doener: wow, submodules are one thing I (sort of) understand.15:00
neoeinstein joined15:00
doener jast: I just recalled some old discussion on the mailing list where someone had a need for $something_related_to_remotes for submodules15:00
bewst jast: I planned to remove that remote. How do I prune away the remote tracking branches?15:00
jast bewst: look at git remote prune15:00
doener bewst: well, I get the "how to use them" part, but have no clue about the implementation15:00
jast the implementation is a bit weird to wrap your head around but it actually makes a lot of sense15:01
schacon joined15:01
doener jast: "remote rm" deletes the remote tracking branches IIRC15:01
jast the only thing git stores about the submodules in the supermodule is the commit ID in the gitlink15:01
bewst Do I want to prune then remove, vice versa, or doesn't it matter?15:01
jast oh, that's possible15:01
octagon joined15:01
jast just remove the remote and see if the extra tracking branches are gone15:02
doener yep, it does, just tried :-)15:02
altrux joined15:02
DavidKlein joined15:02
bewst thanks, all!15:03
jast so if you update a submodule "foo" at ./foo, new objects are fetched into ./foo/.git15:03
schacon left15:03
schacon joined15:04
jast I guess prune would have been the wrong thing anyway, because it enumerates over remotes that still exists and removes remote tracking branches that are no longer needed in those15:04
schacon left15:04
jast I'm not actually sure that it removes branches that have no corresponding remote15:04
knitt1 left15:04
bewst is there any easy way to "repoint" all my submodules to a different URL? They are referencing the URL of the remote I want to remove.15:05
jast I suggest a search&replace in .gitmodules and .git/config15:06
straszheim joined15:06
jast well, actually you may want to leave them as they are in .gitmodules15:06
bewst yo, troy15:06
knittl joined15:06
straszheim hey hey15:06
bewst jast; OK, it doesn't matter that much15:06
straszheim who's that?15:07
ben_h joined15:07
bewst dave15:07
straszheim hey!15:07
bewst ahoy15:08
straszheim http://sodium.resophonic.com/git/boost/15:08
trying to get a git mirror up15:08
bewst nice! What's the problem?15:09
straszheim have a zillion tags/branches imported into the repo15:09
they dont' appear here15:09
trying to see if there is a way for people to browse, say, git-svn cloned release branch15:09
aspotashev joined15:10
straszheim locally, git branch -a shows them, and i can switch to them locally15:10
jast git-svn branches are typically kept in the remotes/ namespace15:10
bewst Looks like they may have become non-public remotes, but you should get help from someone who knows what he's talking about ;-)15:10
jast typically, clone only clones refs/heads and refs/tags15:10
so you'd have to change the refspecs used by fetch15:10
kalle_ left15:11
kuadrosx joined15:11
Modius joined15:11
kalle_ joined15:12
mfilipe left15:12
jast ah, actually I don't even think refs/tags is cloned15:12
straszheim i appear to have got everything... this ran for two days ;)15:12
bewst straszheim: we should start using mirrors and personal git repos for development. Eventually Boost will just fall over and switch :-)15:13
antoranz left15:13
straszheim bewst: that's the diea15:13
idea15:13
bewst either spelling works15:13
straszheim git svn clone http://svn.boost.org/svn/boost -Ttrunk -ttags/release -bbranches15:13
there was my clone15:13
jast straszheim: oh, so that repository you linked to is a direct git-svn clone?15:13
doener straszheim: I guess you see the missing stuff with "git branch -r" but not "git branch", right?15:13
straszheim jast: yeah, i git-svn cloned and then put it up under cgit15:13
jast okay15:14
straszheim doener: exactly15:14
jast most tools don't show remote branches15:14
so there's two things you can do15:14
either you move all the branches into the local namespace yourself15:14
or you create a clone of the original repo with a special fetch command15:14
uhm, in this case, by original I mean the git-svn repo you created15:15
straszheim is following15:15
doener there's a patch on the mailing list that would allow git-svn to operate on bare repos, that'd be helpful here15:15
rittyan left15:15
lottadot left15:15
straszheim doener: I just pulled the .git directory out of the nonbare git-svn clone15:15
jast so I guess I'd recommend keeping the git-svn repo elsewhere and mirroring the branches/tags into that public repository15:16
straszheim ah, but i cant' fecth15:16
jast how about push?15:16
straszheim eh, can't fetch to the .git/ that i just pulled out of the git-svn clone15:16
jast but can you push to it?15:16
straszheim with the full repo I can15:16
let's see15:17
doener straszheim: basically, "git push <remote> 'refs/remotes/*:refs/heads/*'" should do for most purposes15:17
jast oh, you may want to edit the config file of that .git dir you pulled out... make it say bare = true in the [core] section15:17
doener straszheim: as all the "pushable"/"fetchable" stuff from git-svn lives in the refs/remotes namespace15:17
jast otherwise most everything will fail15:17
doener jast: hm, unless the directory is still called .git, the autodetection _should_ work, I think15:18
jast unless it explicitly says bare = false15:18
doener true15:18
jast which it does in my clones15:18
doener oh, and that's the default it seems... d'oh15:18
straszheim ok, rename .git -> something, set bare=true, can svn fetch15:19
netoman joined15:19
aspotashev_ joined15:19
aspotashev|eeepc left15:19
jast svn fetch only works if the working tree exists15:19
unless you apply the git-svn patch doener talked about15:19
dotsintacks joined15:19
doener jast: hm, really? I don't see any "bare" checks in the current git-svn15:19
dotsintacks anyone ever run into "Not a git repository" for all your repos when setting up cgit?15:19
straszheim ah. hm. there was nothing to fetch, so no failure. was getting complaints from perl before.15:19
jast you were the one to mention it15:19
dotsintacks my repos are definitely readable by apache...15:20
doener jast: I just recall that it refuses to fetch to refs/heads/* at all15:20
jast oh.15:20
doener jast: and that15:20
's what the patch is about, I think15:20
oh, oops, stupid enter key :-)15:20
k0001 left15:20
jast happens to me a lot lately, that stupid enter thing15:20
straszheim okay, so i can keep the svn clone private, with a cronjob, and mirror that to the cgit directory15:21
jast do you happen to know if git-svn triggers any core git hooks?15:21
because then we could even automate the remapping thing without needing two repos15:21
doener jast: not sure. But instead of the remapping, we could also just wrap the fetch + some symref setup15:22
jast I never used any symrefs (apart from HEAD)15:23
sdiz left15:23
jds joined15:23
sdiz joined15:23
jds Heya15:24
jast doener: how would you "wrap the fetch"?15:24
doener jast: a shell script?15:24
jds If I'm reading "git help ignore" right, .gitignore containing /* should only ignore files in the current directory. It actually seems to ignore everything - why?15:24
jast oh, that kind of wrap15:25
gp5st joined15:25
jast jds: because that includes ignoring each direct subdir of the current dir :)15:25
and if git never looks at subdir foo, of course it won't look at foo/bar, either15:25
gp5st hello, I'm on a bsd machine and when I do `git init` i get "fatal: cannot tell cwd" It's version 1.6.1.3 of git; any ideas?15:26
gwoo joined15:26
lois[pac] joined15:26
cloth_of_loinsloincloth15:27
gp5st there was a thread at kernel trap, but i didn't get any answers from it15:27
the other difference from what I find in searches is that this is local, not a remote problem15:27
jds jast: Hmm. Any way of negating that ignore?15:27
jast gp5st: do you have a pwd util (sorry, I'm one of those linux fanboys who never use anything else) and does it work in that same dir?15:27
doener jds: !/*/ might do to unignore all directories15:28
jast jds: you can prefix patterns with ! to negate them. there was some gotcha with subdirs and negated catch-alls, though...15:28
I don't remember the specifics15:29
gp5st jast: yes, but pwd and getcwd() are slightly different15:29
doener jast: there's a catch with things like !foo/bar/goo when "foo" is ignored15:29
jast well, I don't know the implementation of your pwd15:29
doener: oh, yeah, that was it15:29
gp5st jast: it's the same on linux too, i believe15:29
jast gp5st: still, I don't have the source code of pwd handy15:29
gp5st jast: i'm reading the getcwd man page and it says it'll fail if any component of the path fails acccess it errors:(15:29
diadema left15:30
jast that's one reason why it may fail15:30
doener strace says that _my_ pwd uses getcwd :-)15:30
gp5st i'm on a shared box, so i don't have acces to / or /home, :-\15:30
hmm15:30
johan-s left15:30
doener I'm also on Linux though15:30
jast if you don't have access to / and /home you can't access /home/yourself in the first place15:30
gp5st well, this usually works on linux, i think it's the bsd ppl being strict15:30
Pewpewarrows left15:30
gp5st you're right, i can't access /home15:31
jast hmm.15:31
gp5st but i do have acces to /home/me15:31
jast I think you need executable rights to /home at least15:31
let me see if I can duplicate this situation on linux15:31
HG` joined15:31
vienova joined15:31
gp5st thanks15:31
gotgenes joined15:32
gp5st the thing is pwd works, but i think pwd works even if you can't see the current dir's contents15:33
jast are you using a pwd shell builtin or the external program?15:33
gp5st ...good question15:34
haha15:34
jast try using an explicit path to pwd15:34
should be /bin/pwd I guess15:34
doener even with a leading up directory having 0000 permissions, getcwd works here15:34
gp5st if i do /bin/pwd it gived me my home15:34
where i am15:34
:-(15:34
Pewpewarrows joined15:34
gp5st doener: you're on linux, right?15:35
doener gp5st: I guess there's something like strace available that could show the error returned by getcwd, right?15:35
ben_h_ joined15:35
doener gp5st: yep, just saying that this is not a problem on this platform15:35
gp5st yeah15:35
i have strace on the box15:35
i've never used it15:35
jast well, just do this:15:35
doener gp5st: strace -e getcwd -f git init15:35
gp5st invalide system call getcwd15:36
let me see if it's a bsd thing and it's called different15:36
i'm usually a linux person:-\15:36
doener ah, the syscall is linux specific, just the C lib function is portable15:36
gp5st: just drop the "-e getcwd" and get the full output, shouldn't be much harder to read15:37
aisbaa joined15:37
bryanl left15:38
gp5st strace: open("/proc/...", ...): Permission denied15:38
trouble opening proc file15:38
guess i need root? but i don't have that15:39
doener hm, interesting, looks like they don't like you to use strace or so...15:39
jast I don't think you need access to /proc15:39
emias getcwd(3) is portable (across POSIX), but strace(1) is Linux-specific :-)15:39
jast oh.15:39
gp5st thanks for your help; i may just give them a call since they can figure out what's up on this specific machine; i've just never ran into this issue15:39
jmesnil_ joined15:39
gp5st haha, i wonder why i have strace on here then15:39
jast I wonder if it's worth making error handling more verbose in that spot15:40
doener anyway, found some BSD getcwd implementation and that seems to call opendir() and fstat() on each path component15:40
jast that would explain things...15:40
gp5st ooh15:40
altrux left15:41
emias gp5st: On FreeBSD, you'd normally use truss(1). (IIRC, there's some port of strace, but that requires a mounted Linux-/proc ...)15:41
gp5st why? i know they are ?ber conscience of security, but would getcwd be an issue if i know where i am if i'm allowed to be there?15:41
and i guess I should have looked for the source of getcwd:-p15:41
emias: thanks15:42
Modius left15:42
gp5st i'm new to bsd, so still getting my bearings on what's different15:42
jast question is if this can be solved in some way15:42
gp5st i'm more than willing to recomile it and use a local version (I'm using there's)15:43
jmesnil left15:43
gp5st or maybe this has been fixed, the current is 1.6.2 and i have 1.6.115:43
Modius joined15:44
jast we can easily check in current master...15:44
<master:builtin-init-db.c>15:44
Gitbot [git builtin-init-db.c]: http://tinyurl.com/cstooe [blob]15:44
jast no change in git15:44
gp5st so is there anyway around this?15:45
bcardarella left15:45
khmarbaise_ left15:45
jast you could patch git, I guess15:45
but we'll have to cheat to avoid using getcwd15:46
|chalky| left15:46
jast doener: have you got a link to that getcwd implementation?15:46
doener http://lists.freebsd.org/pipermail/freebsd-bugs/2008-March/029672.html15:46
http://www.koders.com/c/fid62A3A6B5FEE22D0690D4CB56A912B777DCD0E014.aspx?s=mdef%3Amd515:46
Yuuhi joined15:46
gp5st :( /bin/pwd works for this; i wonder why15:47
jast I'd love to be able to strace that pwd binary15:47
doener jast: hm, actually, that's just BSD licensed and the google result text confused me... d'oh15:48
jast oh.15:48
aspotashev left15:48
jast ht://Dig. I'll just close that tab and pretend I never opened it.15:48
gp5st: do you know which bsd (and version) that is?15:48
gp5st jast: FreeBSD flure.pair.com 6.2-RELEASE-p12 FreeBSD 6.2-RELEASE-p12 #1: Wed Nov 26 15:06:45 EST 200815:49
whoops, meant to get rid of the server name15:49
hulo left15:50
sunblush joined15:50
hobodave joined15:52
dwave left15:52
aspotashev joined15:53
darrob left15:53
jast doener: the official getcwd in fbsd 6.2 does this too: http://svn.freebsd.org/viewvc/base/release/6.2.0/lib/libc/gen/getcwd.c?revision=165962&view=markup15:55
ben_h left15:55
gp5st i've been trying to find which dir it was in15:55
thanks15:55
jast me too, took some time :)15:56
EvanCarroll joined15:56
EvanCarroll is there anyway to checkout foo as bar15:56
jast it actually uses some __getcwd extern but I don't know where that comes from15:56
stuffcorpse left15:57
jast EvanCarroll: git show <commit>:foo >bar15:57
stuffcorpse joined15:57
doener jast: ah, and I just found the note in my getcwd(3) man page, that that EACCES can only happen on Linux with an old kernel that doesn't have the getcwd syscall, nor is /proc/self/cwd available15:57
cgardner joined15:57
giallu left15:57
doener gp5st: at this point, I'd ask on the mailing list, but there are quite a few getcwd() calls, so I'd not expect a "oh, we can change that easily" response15:59
gp5st i wouldn't expect that:-p15:59
http://it.toolbox.com/blogs/bsd-guru/using-git-on-freebsd-1368015:59
i'm gonna see what one of the ports does, and then see if i can compile it16:00
jast that post is very old and also doesn't cover your issue, I think16:00
gp5st yeah, i was reading more through it16:01
martins left16:02
stuffcorpse left16:02
stuffcorpse joined16:03
bentob0x left16:03
gafmtt joined16:03
emias gp5st: But you said that /bin/pwd works, right?16:03
leanucci left16:03
leanucci joined16:03
emias That one simply calls getcwd(3), too: http://svn.freebsd.org/viewvc/base/release/6.2.0/bin/pwd/pwd.c?revision=165962&view=markup16:04
doener emias: hm, might be the $PWD fallback that works16:04
ilteris_ hey guys, looks like I messed up my app, I already committed a working version and pushed it to the server, should I just delete everything from my system and clone a clean copy?16:05
or should I just pull the version and merge it?16:05
fmdb joined16:05
emias doener: That's only read if /bin/pwd was called with the "-L" option.16:05
gwoo gp5st: if it helps im running 6.3-RELEASE-p2 with git 1.6.2.2 from ports16:05
jast okay, freebsd actually uses a getcwd syscall but it may not be present on all architectures or something16:05
gp5st hmm16:06
jast ilteris_: define "messed up"16:06
EvanCarroll jast: cool16:06
doener emias: oh, oops, got confused by the comment above the if... made me think that -L is the default16:06
ferdy_ferdy16:06
ilteris_ jast, well basically my app is not working as it was working yesterday, I messed up some code I think :|16:06
jast you could now use bisect to find the exact commit where things went wrong (if you made several new commits since then)16:07
ilteris_ now I am not entirely sure if I pushed a working copy before this, it should the commit before or the one before that. So I need to get back a certain commit, how should I go with that?16:07
oh exactly what I was looking for16:08
how do I use bisect?16:08
emias gp5st: Just to make sure, could you try "git init" and "/bin/pwd" once again (from within the same shell and directory)?16:08
jast ilteris_: man git-bisect :)16:08
Gitbot ilteris_: the git-bisect manpage can be found at http://git.or.cz/man/git-bisect16:08
jast it has examples, I think16:08
gp5st /bin/pwd works16:08
bewst left16:08
emias gp5st: And "git init" still spits out "cannot tell cwd"?16:08
gp5st that's super weird16:09
so if i do git init after i relog in, it works16:09
bradly joined16:09
gp5st but then if i rm -r .git and then git init it works16:09
Alinermedia joined16:09
gp5st hmm, let me see if it's the same pattern with checkout16:09
doener gp5st: "relog in" == ?16:10
kalle_ left16:11
doener gp5st: log out, log in, and do "git init" in $HOME? Or something else?16:11
gotgenes left16:11
gp5st yeah, sorry16:12
i meant log out, then log in16:12
why would that work?16:12
doener gp5st: and you do that "git init" in $HOME?16:12
gp5st well, ~/repos; but yes, if i log out and log in it works, then if i rm -r .git and git init it doesn't16:13
doener gp5st: to get into ~/repos, do you "cd repos" or "cd ~/repos"?16:14
Alinermedia left16:14
gp5st i start in $HOME and then cd repos16:14
doener hm, if you log out, log in and then "mkdir foo; cd foo; git init", does that work?16:15
bradly left16:15
ilteris_ hey jast is there any other way than using bisect in order to get another commit form the server rather than the last one?16:15
vienova left16:15
gp5st well i can mkdir foo; cd foo; git init w/o logging out then in16:16
kalle_ joined16:16
scientes left16:16
doener gp5st: you can come over and watch my head explode now16:17
jast ilteris_: you have local copies of all commits. you can easily return to any old version without ever talking to the server, actually. bisect is just a diagnosis tool that makes use of this.16:17
MarcWeber Do same tree contents always get the same hash? So is comparing $HASH^{tree} hashs the way to test for equality?16:17
emias gp5st: So you're not able to reproduce the problem within your new ~/foo directory?16:18
jast for example, you can throw away all newer commits by getting the commit ID of an older commit (e.g. using git log) and using git reset --hard <commit id> (this will throw away all uncommitted changes).16:18
ilteris_ jast: yup I am checking out my old commits through gitx now, I have no clue how to "return" to those commits tho, bisect looks complicated to me :|16:18
sitaram MarcWeber: yes16:18
gp5st doener: there is a huge redmark on my forehead form problems like this16:18
jast I can't stay to give you any additional details. if you need something else than git reset, please ask everyone else about it.16:19
doener gp5st: hm, maybe, could you do "pwd -L" and "pwd -P" before the working "git init" and after the failing one?16:19
AkumaStreak joined16:19
sitaram MarcWeber: internally that's what git diff does I think, when you compare two tree-ish objects16:19
ilteris_ jast thanks16:19
gp5st emias: if i rm -r .git then git init16:19
cody-somerville joined16:19
gp5st i can't16:19
javatexan joined16:19
gp5st i can't git init16:19
ilteris_ man git-reset16:19
Gitbot ilteris_: the git-reset manpage can be found at http://git.or.cz/man/git-reset16:19
cody-somerville Whats the proper way to handle renames in git?16:19
sdizsdiz-afk16:20
straszheim sorry, i have to reask here, i think i'm missing something dumb. I've got my git svn cloned repository, and I'm going to move the remote branches into the local namespase, so's I can put it up where people can clone and pull from it to track svn w/o using git-svn16:20
gp5st that hapens in $HOME and any subdir16:20
straszheim not worried about dcommitting from it16:20
("move the remote branches into the local namespace" is what I'm trying to grok)16:21
jchris left16:21
jast straszheim: if you actually move them in the git-svn repo, git svn fetch will stop working16:21
doener straszheim: you can't "move" it, as git-svn would complain about writing to refs/heads/ stuff16:21
esparkma_ joined16:21
gp5st [me@compy ~]$ mkdir foo16:21
[me@compy ~]$ cd foo16:21
[me@compy ~/foo]$ ls -la16:21
total 416:21
drwxr-xr-x 2 me users 512 Apr 23 12:19 .16:21
drwxr-xr-x 9 me users 512 Apr 23 12:19 ..16:21
[me@compy ~/foo]$ git init16:22
Initialized empty Git repository in /usr/home/me/foo/.git/16:22
straszheim jast: ok, so i clone the git-svn repo16:22
gp5st [me@compy ~/foo]$ ls -la16:22
total 616:22
drwxr-xr-x 3 me users 512 Apr 23 12:19 .16:22
straszheim in the clone, i do the move16:22
gp5st drwxr-xr-x 9 me users 512 Apr 23 12:19 ..16:22
drwxr-xr-x 6 me users 512 Apr 23 12:19 .git16:22
[me@compy ~/foo]$ rm -r git16:22
rm: git: No such file or directory16:22
WALoeIII left16:22
jast gp5st: please paste lengthy things to a pastebin next time, e.g. http://git.pastebin.com/16:22
gp5st [me@compy ~/foo]$ rm -r .git16:22
[me@compy ~/foo]$ git init16:22
sitaram left16:22
knittl left16:22
gp5st fatal: cannot tell cwd16:22
[me@compy ~/foo]$16:22
ugh16:22
i copied the pastebin address16:22
http://pastebin.com/m3b6e1d0416:22
sorry about that16:22
jast anyway, gotta go16:22
gp5st jast: i know:( i hit cmd-c and ...16:22
jast: cya, thanks for your help16:22
knittl joined16:22
straszheim jast: k, thx16:22
emias gp5st: And then, /bin/pwd still works?16:23
doener gp5st: that misses the "pwd -L/-P" calls I asked for :-/16:23
romao joined16:24
gp5st sorry16:24
h/o16:24
http://pastebin.com/m1f6e1df4 they're at the bottom16:25
doener straszheim: http://pastebin.com/m2089dc0b16:26
gp5st err, sorry, /bin/pwd does the same thing16:26
doener straszheim: that's basically it. The push does the renaming16:26
straszheim: as you already have the svn clone, you can of course skip the "git svn clone" step16:26
emias gp5st: What's the output of "truss git init 2>&1 | grep getcwd"?16:26
doener gp5st: and before the working "git init"?16:27
straszheim give it a go16:27
vienova joined16:27
mfilipe joined16:28
straszheim would never have thought about creatively using 'push'16:28
willb joined16:28
gp5st emias: downer: so i made a ~/baz dir and then ran that comment, it took a few seconds, then returned a prompt, then an ls -la showed no .git dir16:29
truss: cannot open /proc/curproc/mem: Permission denied16:29
truss: cannot open1 /proc/84354/mem: Permission denied16:29
i get these idk if they're an issue16:29
emias gp5st: Next try: ktrace git init16:30
gp5st -bash: /usr/bin/ktrace: Permission denied16:30
emias Ugh.16:30
gp5st i love being an unprivlaged user:(16:30
emias Should work just fine as an unprivileged user (normall) ...16:30
(normally)16:31
fmdb left16:31
doener gp5st: what does "pwd -L", "pwd -P", "echo $PWD" tell right after login?16:31
gp5st my home dir16:32
Alinermedia joined16:32
tal67 left16:32
gp5st grrrrr, i keep forgetting to sanatize those:-\16:32
doener /usr/home/... or /home/... ?16:32
esparkm__ joined16:32
shruggar left16:33
Alinermedia left16:33
gp5st http://pastebin.com/m318a82f4 that's right after login16:33
doener ok16:34
vbabiy joined16:34
telmich gp16:34
esparkman left16:34
sgrimm left16:34
mfilipe_ joined16:35
bcardarella joined16:35
gp5st i'm sorry:( I swear i'm not making this up ::bangs head against all::16:35
aresnick joined16:36
Chaser left16:36
raimo_ left16:36
WALoeIII joined16:36
aresnick left16:36
sekimura joined16:37
leanucci_ joined16:38
EvanCarroll jast: doesn't work says to use '--' to seperate path from revisions16:38
leanucci left16:38
EvanCarroll fatal: ambiguous argument 'HEAD:Reference.pm': unknown revision or path not in the working tree.16:38
gafmtt left16:39
solofight joined16:39
leanucci joined16:39
sergiodj joined16:42
Alinermedia joined16:42
doener EvanCarroll: which command? And is Reference.pm really in the root directory of the repo?16:42
naeu_ left16:43
gp5st i just can't win:-\ even once i have the repo there, i can't clone them, it hangs up on me right after/when it sends the objects16:43
rinogo joined16:43
rinogo Hey all!16:44
esparkma_ left16:44
rinogo Can someone please help me understand the difference between 'git clone ...' and 'git add remote ...'?16:44
gp5st git clone makes a copy of the repo16:44
cody-somerville left16:45
RandalSchwartz git clone - make a local repo pulled from a remote16:45
git add remote, just add a remote that you can fetch from16:45
or push to16:45
gp5st git add remote makes an entry for a server in teh config a short name for it if you will16:45
RandalSchwartz no objects are transferred16:45
gp5st ditto, git add remote doesn't download or send anything16:45
doener git clone ~= git init + git remote add + git fetch + git checkout16:46
rinogo Hmmm... So, I have a git repo already set up on my VPS (Centos 5) that I can use without incident locally from the system. However, I'd like to be able to work locally on my OS X laptop and check in to the git repo on the server... Which command is right for me?16:46
sergiodj left16:46
doener oops, add "git branch" in between fetch and checkout16:46
ajonat_ left16:47
Zathrus doener: can't that be done as part of the checkout?16:47
RodP2 joined16:50
doener Zathrus: sure, the fetch can also be done by "remote add" if you use -f16:50
peti` joined16:50
doener Zathrus: but the idea was to show the involved "high level" steps in the clone command, having convienience stuff in that list seems wrong ;-)16:51
marc_kdab left16:51
btanaka joined16:51
peti` Is it possible set an "Author" attribute on a commit in the history? When I made the commit, I didn't specify an author (other than the committer, me), but now I'd like the commit to show who sent the patch. How can I do that?16:52
rinogo So, would you guys say I want to do a git clone or a git add repo?16:52
wereHamster peti`: how far back in the history is the commit?16:53
gp5st when i do a git clone, aorund halfway through the receiving objects stage, the remote hangs up. is there anyway to figure out why? can ssh be set up to hang up if there is no login shell started after so long? could it be a problems with the remotes? I did git fsck on them and thena repack16:53
rinogo (" locally from the system. However, I'd like to be able to work locally on my OS X laptop and check in to the git repo on the server... Which command is right for me?")16:53
peti` wereHamster: Very far, unfortunately.16:53
wereHamster peti`: changing the author is not possible without rewriting history. Are you aware of the implications?16:53
mfilipe left16:53
qhoxie joined16:54
peti` wereHamster: A little. I know the basic repository format, etc., and I can use rebase --interactive and such.16:54
gp5st ringo: clone the repo, then you can push your changes back to the remote after you make them16:54
rinogo:16:54
rinogo gp5st: Thanks :)16:54
ttelford joined16:55
wereHamster peti`: if other people cloned your repo and you rewrite the history, it will cause them some problems when pulling from you again.16:55
peti` wereHamster: I misread you. I read "implementation". :-) Sorry. No, what are the implications of attaching an Author afterwards?16:55
wereHamster: I see. That's fine with me though, that wouldn't be a problem.16:56
ttelford left16:56
wereHamster peti`: I wouldn't suggest you interactive rebase, instead look at git-filter-branch16:56
jceb joined16:56
peti` wereHamster: Very nice! Thank you for the tip.16:57
wereHamster peti`: with --env-filter and set GIT_AUTHOR_NAME/EMAIL16:57
hugoxrosa joined16:57
woei joined16:58
leanucci_ left16:59
peti` wereHamster: This is exactly what I was looking for. Thanks for your help.17:00
troyt left17:00
galderz left17:00
LiamH joined17:01
jmesnil_ left17:02
gberdyshev_ joined17:02
troyt joined17:04
d0k_ joined17:05
static^_ joined17:05
hobodave is there a shortcut to add [branch "master"]\n remote = origin \n merge = refs/heads/master into my .git/config ?17:05
it's annoying to have to edit that every time I create a repo17:05
wereHamster hobodave: man git-config17:06
Gitbot hobodave: the git-config manpage can be found at http://git.or.cz/man/git-config17:06
peti` hobodave: "git config" might solve that?17:06
khmarbaise joined17:06
hobodave that's still me doing the same work17:07
is this a fairly recent change in git?17:07
wereHamster also, which version are you using? I never had to add these lines to the config file, git always created them for me17:07
peti` hobodave: In a cloned repository, git creates those entries automatically. At lesst, it does when I say "git checkout -b foo origin/foo".17:07
hobodave peti`: I'm creating the repo locally17:07
then pushing it to the remote origin17:07
so it only happens on 'new' ones17:08
so git-config is unavoidable?17:08
joevano joined17:08
wereHamster well, then how should git know which remote to track? :)17:08
peti` hobodave: Why can't you clone the external repo, work in there, and say "git push"? Where is the difference to the setup you use now?17:08
markelikalderon joined17:08
hobodave peti`: this is a NEW repo17:09
there is no external repo17:09
wereHamster hobodave: then you have to do it manually, as git can't magically know whcih remote you want to track17:09
peti` hobodave: Well, than Git can't know about any external repos when you create a branch. You'll have to do it manually, I guess.17:09
kbingham joined17:10
hobodave yep17:10
I understand now17:10
thanks guys17:10
giallu joined17:10
ben_h joined17:10
stuffcorpse left17:11
kalle_ left17:11
peti` left17:11
stuffcorpse joined17:11
jaeckel left17:12
d0k left17:12
bdimcheff left17:13
troyt left17:14
ilteris_ what's the command for resetting a specific file from a specific commit?17:15
PerlJam ilteris_: git checkout <commit> -- <path to file> # I think. (too hungry to be sure)17:16
kalle_ joined17:17
ilteris_ thanks PerlJam I'll check it now17:17
gp5st left17:17
Dashkal joined17:19
solar_ant joined17:19
gberdyshev left17:19
dreiss joined17:20
sgrimm joined17:21
troyt joined17:22
naeu joined17:22
schacon joined17:22
vbabiy left17:23
solar_ant left17:24
ben_h left17:25
kbingham left17:25
Pewpewarrows left17:27
g3d left17:27
gitte left17:28
hobodave is this the appropriate forum to ask about gitosis?17:28
brtzsnr left17:29
hacim doener: forgot to say thanks for the help yesterday with the git branch renaming :)17:29
that was exactly what I was missing17:29
Dashkal hobodave: There are people in here familiar with it. Ask. If anybody can help they likely will answer.17:30
Pewpewarrows joined17:30
hobodave can I add multiple keys for a user to their keydir/user.pub ?17:30
hacim hobodave: yes you can17:31
hobodave nice!17:31
hacim hobodave: in the same way you would just concatenate them in an authorized_keys file17:31
hobodave I was hoping so, but was afraid to try in case it locked me out17:31
solar_ant joined17:31
grahal left17:32
mooseish joined17:32
solar_ant left17:32
jas4711 joined17:34
ben_h_ left17:34
jas4711 left17:35
cpg joined17:36
solar_ant joined17:36
yec left17:36
gaveen joined17:36
hdl left17:36
bobesponja joined17:36
jas4711 joined17:36
aresnick joined17:37
vienova left17:37
thumper left17:37
aresnick left17:37
markelikalderon left17:37
hdl2 joined17:38
willb left17:40
ttelford_ joined17:42
g3d joined17:42
chalky joined17:43
aspotashev_aspotashev|eeepc17:43
Chommik joined17:46
Chommik hello17:46
troyt left17:46
ttelford_ left17:47
bcardarella left17:48
RaySl left17:48
troyt joined17:49
hyperair joined17:49
btanaka is it possible to sort the branches listed via "git branch" in chronological order (based on date the branches were created)?17:49
RaySl joined17:49
g3d left17:50
srid left17:52
qrush left17:52
doener left17:52
doener joined17:52
saurabh1403 joined17:53
reprore_ joined17:54
tono left17:54
solar_ant left17:55
g3d joined17:55
khmarbaise What is the best way to migrate a subversion repository to Git?17:55
troyt left17:55
leanucci_ joined17:56
troyt joined17:56
priidu left17:57
leanucci left17:57
bremner man git-svn17:59
dodo_the_last left17:59
Gitbot bremner: the git-svn manpage can be found at http://git.or.cz/man/git-svn17:59
bremner khmarbaise: ^^17:59
stianhj joined18:00
reprore_ left18:00
khmarbaise bremner: If i understand the page correct it is intended to just synchronize a single branch/trunk with git and migrate the full history of a repository...18:00
solofight left18:00
aspotashev left18:00
bremner khmarbaise: what do you want to do?18:01
priidu joined18:01
khmarbaise bremmer: /and migrate/and not migrate/18:01
bremmer: I would like to migrate the full history with all branches to git without loosing branches, cause I'm working on different branches ....18:01
aspotashev joined18:01
hyperair left18:02
solofight joined18:02
khmarbaise and of course the tags as well...18:03
kuadrosx left18:03
ngng left18:03
bremner khmarbaise: hmm, ok. it can be done, I guess. See --branches and --tags for start. I don't have any personal experience with svn branches, so I'll leave it for more informed folk18:04
justatheory doener++ # Thanks for the help yesterday, `git filter-branch --tag-filter cat -- --all` did the trick.18:05
Nilbus how do you reset 1 file to how it was at HEAD?18:05
hugoxrosa left18:06
markelikalderon joined18:06
troyt left18:06
stianhj i just did a git clone of my remote repo, and after successfully completing I run git status, and tells me a file is "Changed but not updated".. there were no files before, and I haven't changed the file after cloning. So I run a diff on the file, and git has removed every single line, and added the exact lines again (@@ -1,370 +1,370 @@). what's wrong here?18:07
earcar joined18:07
iso42 joined18:07
radarek joined18:08
khmarbaise bremner: I have a account on github.com and tried to migration there and it seemed to be working...but now i would like to do the same my own...some other hint ?18:10
aspotashev_ joined18:10
aspotashev left18:10
aspotashev|eeepc left18:10
cannonball left18:11
kalle_ left18:11
kalle_ joined18:11
bremner khmarbaise: afaik, git-svn with --branch --tags or --stdlayout should work for you, _If_ you svn layout is not too creative18:11
cannonball joined18:12
jrmuizel joined18:12
stianhj s18:12
kuadrosx joined18:13
priidu_ joined18:15
solar_ant joined18:15
FreakGuard_ joined18:16
priidu left18:16
FreakGuard left18:16
Pewpewarrows left18:17
troyt joined18:18
PuffTheMagic i cant seem to get git to track some latex files18:18
Grahack joined18:18
Tv left18:18
khmarbaise Hm...i have tried to convert via git svn info URL --stdlayout (and --trunk etc.) but after git svn fetch is ready i do "git branch -l" and see only "* master" nothing else.....18:18
PerlJam git branch -a18:19
(I'm fairly sure it's not going to make local branches for you)18:20
Chommik is there any tutorial saying how to create a repo on apache server? i found something on google, but it don't work for me18:20
Pewpewarrows joined18:21
wwwald joined18:21
bremner khmarbaise: git branch -a ?18:21
Fullmoon left18:22
kusma hahahhaha18:22
BTD er paa nrk218:22
qrush joined18:22
hugoxrosa joined18:22
kusma whops18:22
PuffTheMagic how do I tell git to track a new file type18:23
it seems to be ignoring .tex files18:23
stianhj check your .gitignore file?18:23
tag_tag18:23
stianhj kusma: BTD? på nrk2?18:24
kusma stianhj: feil vindu ;)18:24
cilly joined18:24
stianhj hehe, ok18:24
dodo_the_last joined18:24
stianhj Chommik: http://tinyurl.com/fomkq18:24
jkp joined18:25
jkp_ left18:25
stianhj Chommik: That's "Howto setup git server over http (apache)"18:25
Chommik stianhj: i was doing as it says, but I get an error from apache18:25
rinogo gp5st: BTW, thanks for the help - git clone seems to have done the trick.18:26
Chommik stianhj: http://rafb.net/p/THOqqT57.html18:27
i set DavLockDB in httpd.conf but it makes no difference18:27
davidad joined18:29
nurey joined18:29
markelikalderon left18:30
altrux joined18:31
rinogo left18:32
tasmani joined18:32
tasmani left18:33
solar_ant left18:34
FreakGuard_FreakGuard18:34
cbreak|evil left18:35
bryanl joined18:37
ceyusa_ left18:38
markelikalderon joined18:38
bcardarella joined18:38
bryanl left18:39
DavidKlein left18:39
solofight left18:39
cbreak joined18:41
darrob joined18:43
alanhaggai left18:43
catalis left18:46
cilly left18:48
catalis joined18:49
Skiessi joined18:49
Skiessi is there anything which does what one would assume 'git log --branch foo' to do?18:50
krh Skiessi: what do you expect it to do?18:52
git log foo will show you the commit log for the branch foo18:53
Skiessi okay18:53
Skiessi left18:53
willb joined18:55
bryanl joined18:56
justatheory So now I have a git repo migrated from an old cvs repo, and one migrated from a later svn repo.18:58
MateuszDraco joined18:58
justatheory There are some branches common between these two repos, and some that are not.18:58
How can I stitch them together into a single repo with complete history?18:58
tono joined19:00
justatheory I used the examples here: http://git.or.cz/gitwiki/GraftPoint?highlight=%28graft%2919:00
better link: http://git.or.cz/gitwiki/GraftPoint19:01
solofight joined19:01
solofight help | how can i create a git repo which is accessible by anybody over http19:02
justatheory That seems to work, but branches in the cvs repo that arent in svn don't show up.19:02
solofight i read abt http auth19:02
but i dont know basics such as assigning git:// protocol to my repo19:02
any links19:02
plz guide me19:02
Ilari justatheory: Basically, pick canonical version and make all children of noncanoical ones children of the canonical one. Also, update all refs to noncanonical commits point to canonical equivalents.19:02
justatheory Ilari: Sorry, not able to parse that.19:03
Ilari justatheory: Also, maybe remote tracking branch behaviour is involved?19:03
MateuszDraco hi! is there any good windows git client for windows with nice, neat gui? ;)19:03
justatheory Ilari: Yeah, all the branches appear to be remotes.19:04
aspotashev_ left19:04
Ilari justatheory: Remotes aren't cloned on git clone.19:04
intripoon left19:04
justatheory Ilari: Hrm.19:04
cilly joined19:05
justatheory Okay, I created my cvs and svn migrations by doing a lot of grafting, running `git filter-branch`, and then cloning to drop the dupes.19:05
The branches had been both local and remote, but were remote only in the clone.19:05
Ilari solofight: For git://, you need git-daemon + mark the repo as exportable. For HTTP fetching, you need to put the repo files somewhere accessable and run git update-server-info after EVERY update to repo.19:05
loincloth left19:05
loincloth joined19:05
justatheory Ilari: Does that sound right?19:07
wshimmy left19:07
stuffcorpse left19:07
Pewpewarrows left19:08
Ilari justatheory: Yeah, about right.19:08
justatheory Okay19:08
So the trick is to make the old branches from cvs show up in the svn to git repo19:08
catalis left19:08
justatheory I copied of the pack files, and the commits show up, but not the branches.19:08
Do I need to make them local first?19:08
aisbaa left19:09
Ilari justatheory: Yeah, make them local before cloning... The local branch stuff is in packed-refs and refs/heads19:09
priidu_ left19:10
cedricv left19:10
justatheory and by "before cloning" you mean "before copying the files in .git/objects/pack"?19:10
kalle_ left19:11
Pewpewarrows joined19:11
justatheory Ilari19:11
Ilari justatheory: Why are you copying those files between repos manually?19:11
justatheory Ilari: Was following http://git.or.cz/gitwiki/GraftPoint19:11
The two scripts at the end19:11
e_6 joined19:11
bcardarella left19:11
kalle_ joined19:12
Ilari justatheory: And just copying packs might not suffice. There can also be loose objects.19:12
justatheory Ah19:12
So I can clone from the cvs repo to an existing svn repo?19:12
loinclot_ joined19:12
justatheory hrm, not according to the `git clone` docs…19:13
Ilari justatheory: Clone doesn't work if destination exists. Perhaps you want fetch instead?19:13
loincloth left19:13
xyz joined19:13
justatheory Ilari: I dont' know. That's what I'm trying to figure out.19:13
earcar_ joined19:13
Ilari justatheory: fetch copies branches whole.19:13
justatheory Oh, that looks promising19:14
priidu joined19:14
justatheory reads `git help fetch`19:14
stianhj i just did a git clone of my remote repo, and after successfully completing I run git status, and tells me a file is "Changed but not updated".. there were no files before, and I haven't changed the file after cloning. So I run a diff on the file, and git has removed every single line, and added the exact lines again (@@ -1,370 +1,370 @@). what's wrong here?19:15
Ilari stianhj: Msysgit?19:15
stianhj Ilari: yes19:15
Ilari stianhj: Probably automatic CRLF translation screwing up for some reason...19:16
stianhj Ilari: good point.. didn't think of that. annoying..19:16
hdl2hdl19:17
Ilari stianhj: If your editors can load LF-only files, you could set CRLF translation to be input only.19:17
stianhj: 'git config --global core.autocrlf input'.19:17
stianhj this is a project developed on linux, but I cloned it at home to have a look at it..19:18
isn't there a line ending conversion thingy in msysgit?19:18
sergiodj joined19:18
MateuszDraco left19:18
Ilari stianhj: You could try setting CRLF conversion to be input only (using above command) and then using git reset --hard...19:19
stianhj ok19:19
Ilari stianhj: Or better yet, instead of reset, 'git checkout -f'.19:19
stianhj the -f is?19:19
Ilari stianhj: Force.19:19
stianhj i tried git checkout filename earlier, didn't do anything19:20
solofight Ilari: can i pm you ?>19:20
stianhj git reset --hard, tells me HEAD is at the last commit, but git status gives a modified file19:20
Ilari solofight: man git-daemon talks about how to mark repo as exportable.19:21
Gitbot solofight: the git-daemon manpage can be found at http://git.or.cz/man/git-daemon19:21
stianhj Ilari: git checkout filename -f does nothing as well19:21
seangrove joined19:22
Ilari stianhj: And those files are still listed as modified?19:22
cpgcpg|away19:22
stianhj yes19:22
gwoo left19:22
justatheory Ilari: If I use `git fetch`, should I fetch new commits from svn into the older repo from cvs, or the other way around? Or does it matter?19:23
Ilari justatheory: Doesn't really matter.19:23
Modius_ joined19:23
justatheory ok19:23
justatheory tries it19:23
ceej joined19:23
Ilari justatheory: Or actually, CVS to SVN, because CVS tends to be fixed and can be filter-branched before fetch.19:23
justatheory is confused again.19:24
cannonball left19:24
justatheory Sorry, I'm quite the git newbie and am still trying to understand the huge panoply of commands.19:24
Ilari justatheory: Fetching commits that have active grafts rules might result something broken.19:24
LotR is reminded he owes justatheory a reply email19:24
stianhj is brb19:24
justatheory Ilari: Ah, yes. I've already run filter-branch in both repos.19:24
Ilari justatheory: Then it doesn't really matter.19:25
justatheory okay19:25
loinclot_loincloth19:25
Chommik left19:26
justatheory That looks better.19:26
gitte joined19:26
justatheory All the tags were copied, but not the branches.19:26
So I guess I need to make the branches local first?19:26
Ilari justatheory: With suitable refspecs, it can copy remote branches as well.19:27
justatheory Oh, I didn't specify any.19:27
justatheory isn't sure what a refspec is19:27
robinr joined19:27
rudi_s joined19:28
dwave joined19:28
solofight Ilari: have a doubt , stuick in middle plz help me19:28
earcar_ left19:28
Ilari justatheory: Basically, it specifies what branches to transfer and what names to save them as.19:28
solofight inside /version/ i typed git-init19:28
and git add 200919:29
earcar left19:29
solofight git commit19:29
justatheory Ilari: Ah, I want all branches and their named kept the same.19:29
bcardarella joined19:29
Ilari justatheory: Basic from is 'refs/heads/foo:refs/heads/bar', copy local branch 'foo' and save as local branch 'bar'.19:29
justatheory Though there are three branches that exist in both, so I use grafts to hook them up.19:29
solofight now should i be inside /version/and type git-daemon -export-all ?19:29
Ilari solofight: Probably 'git daemon --detach --verbose --export-all' (that pretty much the minimum)...19:30
solofight: But then repo paths when fetching are relative to _filesystem root_.19:31
mugwump joined19:31
Ilari solofight: And you shouldn't export working repos, as they can be too unstable to publish.19:31
solofight oh,...19:31
so what should i do ?19:31
Dashkal left19:32
plasticine joined19:32
stianhj Ilari: any ideas?19:33
Ilari solofight: Create repo somewhere using 'git init --bare', then go to original repo and 'git remote add public <path of new repo>', 'git push public master' so it pushes your branch to that public repo. Them others can clone that.19:33
stianhj: Maybe try 'git checkout .'?19:33
stianhj: Maybe try 'git checkout HEAD .'?19:33
stianhj: You did change CRLF mode to input translation only?19:34
stianhj Ilari: git checkout . and git checkout HEAD . and git checkout HEAD filename, etc doesn't do anything19:36
Ilari: and yes I did the input translation thing19:37
Modius left19:37
Ilari stianhj: What does 'git config core.autocrlf' yield?19:39
hyperair joined19:39
stianhj Ilari: input19:39
Ilari stianhj: Hmm... Wonder why it doesn't overwrite those files...19:40
chris2 joined19:40
lorandi left19:41
javatexan left19:41
solofight Ilari: i did all what you said19:41
stianhj Ilari: I did a clean clone as well, no difference19:41
solofight then i have to go to new repo and type git daemon --verbose --detach --export-all19:42
?19:42
intripoon joined19:42
Ilari solofight: No need to go to the repo. That git daemon command can be run from anywhere.19:42
solofight ok19:42
now i executed the git daemon19:43
now wat i do ?19:43
woei left19:43
cannonball joined19:43
solofight how do i get that to my local system ?19:43
Ilari solofight: 'git clone git://server/path/to/repo.git' maybe. Note, the path is relative to filesystem root.19:44
Dashkal joined19:44
hyperair left19:46
SRabbelier I'm getting " MSGFMT po/de.msg make[1]: *** [po/de.msg] Error 127" while making git.git on my new Ubuntu 9.04 VM, ring any bells with anyone?19:46
hyperair joined19:46
Fissure gettext not installed?19:46
SRabbelier Fissure: very well possible19:47
mugwump left19:47
Ilari SRabbelier: Looks like msgfmt not found.19:47
SRabbelier Ilari: msgfmt == gettext?19:47
iListenU joined19:48
zpoley1 joined19:48
SRabbelier ah, msgfmat is provided by gettext19:48
iListenU Please help, i get problem in: http://parduoduv.puslapiai.lt at header error. (top). What can it be?19:48
SRabbelier installs gettext19:48
iListenU left19:48
zpoley1 hey guys - how do you revert a single file's changes that haven't even been git added yet?19:48
Ilari zpoley1: 'git checkout file'?19:48
saurabh1403 left19:48
zpoley1 Ilari: great! thank you19:49
SRabbelier zpoley1: or 'git checkout HEAD -- file' if you did add them ;)19:49
Kimmie joined19:49
zpoley1 SRabbelier: very nice. thank you19:50
mw joined19:51
ceej left19:51
SRabbelier wonders if git's makefile could be made more forgiving19:51
Dashkal left19:52
SRabbelier then again, I guess that's what ./configure is for19:52
dwave left19:52
Grum while in a rebase -i how can i actually edit the things the commit changed? it appears i can only do a commit --amend and when i ask for git status it tells me i it is all clean (i sortof expected files to be marked as 'modified')19:53
btanaka left19:53
doener Grum: git reset HEAD^, and then use just "commit" instead of "commit --amend"19:54
Grum cheers19:55
straszheim okay, I think I've got this mostly worked out19:55
http://sodium.resophonic.com/git/boost/about/19:55
am I doing anything stupid?19:55
lorandi joined19:56
solofight Ilari: says http://pastebin.com/m5589c2e319:56
doener straszheim: you should probably setup HEAD to reference something else than refs/heads/master19:56
straszheim ah!19:56
earcar joined19:57
straszheim yes that -n is a little annoying. 'trunk' will do.19:57
dreiss left19:57
Ilari solofight: Firewall preventing connection (to port 9418)?19:57
doener straszheim: assuming that that repo is bare, just "git symbolic-ref HEAD refs/heads/trunk"19:57
solofight dontknow19:58
i dont have any firewalls19:58
nuvedacl.com should be accesible by browser is it ?19:58
Ilari solofight: Browser uses port 80. git:// uses 9418 by default.19:58
solofight cause i created a domain name called nuvedacl.com and created a vvirual host19:58
virtual hosts19:59
Ilari solofight: And it isn't case of nothing listening on remote side. That would cause "Connection Refused" instead of "Connection Timed Out".19:59
solofight oh..19:59
straszheim hah!19:59
thanks doener!20:00
solofight i dont have any fire walls20:00
jceb left20:00
Ilari solofight: Well, either 174.129.251.48 is a blackhole or there's firewall somewhere.20:01
SRabbelier straszheim: so as I read this it says "the '-n' will...", but there's no -n in the commandline above it? :P20:01
straszheim is editing it right now to reflect doener's fix20:02
justatheory Stupid question: What is origin/HEAD and how does it relate to master?20:02
straszheim now it automagically checks out 'trunk' for you. :)20:02
Dashkal joined20:02
straszheim thanks for looking. I think we've got this almost locked down.20:03
Ilari solofight: And if its blackhole, there's nothing there.20:03
greyface joined20:03
Ilari solofight: That is, the address doesn't correspond to any host.20:03
wavethenavel joined20:03
Tv joined20:03
doener justatheory: origin/HEAD is usually a symbolic ref, setup by "git clone" and references the same branch head that HEAD of the origin repo referenced when you cloned20:03
catalis joined20:04
justatheory doener: Okay then I can ignore it for now. Thanks.20:04
mugwump joined20:04
doener justatheory: it works as a shortcut, if origin/HEAD references origin/master, then "origin/master", "origin/HEAD" and "origin" are all the same, when used in a context where a ref is accepted20:04
justatheory okay20:04
cilly left20:05
eletuchy_ left20:05
bcardarella left20:05
javatexan joined20:06
bobmcw_ joined20:06
esparkm__esparkman20:09
kalle_ left20:11
Kebianizao joined20:11
Kebianizao Hello20:11
bgerber joined20:11
rudi_s left20:11
literal hi20:11
Kebianizao could I export (in the svn sense) just a certain branch of a repo?20:11
I don't want the whole story20:11
literal git archive20:12
Kebianizao thanks20:12
loincloth left20:12
loinclot_ joined20:12
hacim left20:12
schacon left20:14
dwave joined20:15
sakyamuni joined20:16
kalle_ joined20:16
cannonball left20:17
Kebianizao git archive --remote git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel.git (remote end hung unexpectedly) :/20:17
hgimenez joined20:17
Kebianizao I've tried ending with qa-branch which is the branch I want to export20:17
loinclot_loincloth20:17
johan-s joined20:18
Kebianizao is that the right way? could anyone please test?20:18
priidu left20:18
bobmcw left20:19
eletuchy joined20:19
literal hm20:19
solofight left20:19
priidu joined20:20
partha left20:21
Fissure Kebianizao: i don't know if kernel.org has archive sending enabled20:25
you can probably just get it through its gitweb...20:25
Kebianizao heh, that would explain it20:25
literal github doesn't seem to have it either, but they have Download links for that20:25
Kebianizao really? how? http://git.kernel.org/?p=linux/kernel/git/anholt/drm-intel.git;a=shortlog;h=qa-branch20:25
AlexMax joined20:25
Kebianizao I can't see anythin like that20:25
AlexMax I'm reading in a git faq that this sort of command is used to show a file at a particlar point in time20:26
bobmcw joined20:26
AlexMax $ git show HEAD^:path/to/file20:26
literal Kebianizao: the "snapshot" link20:26
Ilari http://git.kernel.org/?p=linux/kernel/git/anholt/drm-intel.git;a=snapshot;h=44ab43155e8071fbf037513e57de9a79044edf5620:26
AlexMax however, when i do this command myself, I get a message about needing a -- between the revision and the file name20:26
Kebianizao ah, I see it, but that's on tree right?20:26
Ilari Wrong branch.20:26
http://git.kernel.org/?p=linux/kernel/git/anholt/drm-intel.git;a=snapshot;h=ba1d2a9be507cda299c15740ff7e2bb3705a479220:27
AlexMax and when i do, it does not display the entire file, just the changeset for that partiuclar file in that particular revision20:27
literal Kebianizao: what do you mean "on tree"?20:27
Kebianizao yess, the tree view20:27
WALoeIII_ joined20:27
literal Kebianizao: no, there are tons of snapshot links in the link you pasted20:27
Kebianizao ahh, I'll recheck20:28
literal on the right20:28
Kebianizao ahh :) silly me20:28
sorry20:28
Fissure AlexMax: that error message means HEAD^:path/to/file is invalid (no such object exists)20:29
WALoeIII_ left20:31
bratsche_ left20:32
Kebianizao thanks for all, bye20:33
Kebianizao left20:33
jkp left20:33
jkp joined20:34
WALoeIII_ joined20:34
bratsche_ joined20:35
WALoeIII_ left20:35
gwoo joined20:35
bobmcw_ left20:36
stuffcorpse joined20:37
halfmouse joined20:37
Grahack left20:39
dotsintacks left20:39
WALoeIII_ joined20:39
dotsintacks joined20:39
AlexMax left20:40
halfmouse if i want to lose the changes i've made in a git repo, the correct command is git reset --soft or --hard?20:40
(changes not commited)20:41
Ilari halfmouse: --hard20:41
dreiss joined20:43
hax0r1337 joined20:44
WALoeIII left20:44
wavethenavel left20:44
WALoeIII_ left20:45
dwave left20:49
peteinlux joined20:51
hobodave hey guys20:51
priidu left20:52
hobodave what would I use to clone a repository such that it could be updated via 'git fetch'20:52
bobmcw_ joined20:52
cemerick left20:53
Ilari hobodave: What are you trying to do? git fetch does update remote tracking branches by default.20:53
d0k_ left20:53
hobodave I have a redmine installation that needs a local copy of the repository20:53
http://gist.github.com/10063420:53
I was told to use that20:53
however, I dont know how to get the repository so that it works w/ that script20:54
Weaselweb left20:54
Ilari hobodave: That doesn't look sane. Trying to update checkouts with git fetch? That doesn't work.20:55
hobodave it's not a checkout20:55
it requires the .git dir20:55
that's it20:55
Ilari hobodave: Presumably clone --mirror then. Assuming it sets origin.20:56
neoeinstein left20:57
alester left20:58
wezyde joined20:58
wezyde left20:58
tony_ joined20:58
schacon joined20:58
porcnick joined20:59
chris2 left20:59
chris2 joined21:00
esparkman left21:00
straszheim ok, that rocks. here's a different question: if the upstream svn makes a new branch/tag, is there a way to make this availabe in the tracking git repo?21:01
jasmin left21:01
gitte left21:01
neoeinstein joined21:01
loinclot_ joined21:01
faithfulgeek left21:01
straszheim oh, there is. sorry for the noise.21:03
loincloth left21:03
lack joined21:03
bobmcw left21:08
loinclot_ left21:08
fujin joined21:09
disappearedng left21:09
peteinlux left21:09
kalle_ left21:11
earcar left21:11
khmarbaise left21:11
kalle_ joined21:12
sea-gul1 left21:12
offbytwo joined21:14
offbytwo left21:14
qrush left21:15
peteinlux joined21:18
Tricon left21:18
dwave joined21:19
peteinlux hello21:20
dwave left21:20
gotgenes joined21:21
Ilari peteinlux: hi21:21
gotgenes Is there a way I can git stash to just store a diff from the last committed state, and when appyling the stash, not try to get the index back to its previously committed state?21:22
peteinlux llari: just came in seems like everyone is away21:22
altrux left21:22
gotgenes Basically, I want to stash some changes, merge from another branch, then put those changes back on top after the merge.21:22
Something like bzr shelve21:22
leanucci_ left21:22
Ilari peteinlux: Proper IRC clients have channel activity monitoring...21:23
jeberly joined21:24
ceej_ joined21:24
poseidon joined21:24
peteinlux i have a question aswell, im tracking a project in svn, i do a 'git svn rebase' on top of that i have my own branch where I do git rebase master, now i went a little to far and fetched and also rebased to the head of svn repo instead of a tag, can i possibly tell git to fetch back?21:24
hyperair left21:25
ceej_ left21:25
parasti gotgenes: git stash does not restore index state by default21:25
ceej joined21:25
Ilari peteinlux: 'git reflog' and then use 'git reset --hard <committish>'?21:25
jeberly left21:25
hyperair joined21:26
amystrat joined21:27
amystrat just started getting this error on gitosis -> error: hooks/post-receive exited with error code 121:27
how can I troubleshoot the post-receive hook?21:27
Ilari amystrat: Eh, I thought git ignores exit status of post-receive...21:29
amystrat: On what repo? gitosis-admin.git or something else+21:29
amystrat this just started happening, we have been using gitosis 6+ months21:29
on a project repo, not the admin21:29
peteinlux llari: thanks21:30
Ilari amystrat: Should that repo even have post-receive hook?21:30
amystrat yeah, we have an email being sent out21:30
Ilari amystrat: Where did you get the hook script from?21:31
amystrat it was the default script modified a bit21:32
hyperair left21:33
Beket joined21:33
Beket Hi all:) Is it possible to count how many commits are between A and B commit ?21:33
Ilari amystrat: Modifying scripts "a bit" can break them in subtle ways. Especially if rest of the script is not taken into account.21:33
Beket (assuming that there is only one branch of development)21:34
amystrat llari: indeed, but it was working fine for 6 months21:34
I would just like to be able to see the errors21:34
to try and isolate21:34
peteinlux left21:34
amystrat what we modified was to have it send the entire diff, not just a summary on commit21:34
WALoeIII joined21:34
WALoeIII left21:34
WALoeIII joined21:35
Ilari Beket: 'git rev-list A...B | wc -l'?21:35
gotgenes left21:35
bcardarella_ joined21:36
trmanco left21:36
Ilari Beket: E.g. if B is direct parent (and only parent) of A, that returns 1.21:37
Beket Thanks Ilari :) I was stupid to checkout the old commit & I'm building world as we speak.21:37
krawek joined21:37
amystrat llari: is there a way to fire off post-receive manually?21:37
Beket So i'll test it later21:37
Ilari amystrat: It takes input from stdin, so it might be nontrivial.21:38
amystrat thx21:38
davidad left21:39
Ilari amystrat: Or actually, capturing proper testcase is nontrivial. Once you have that, its quite easy to repeat.21:39
nekrad joined21:40
amystrat llari: can you expand?21:40
it is consitently failing21:40
nekrad hi folks, is it possible to cut off an old tail of the history (w/o loosing the recent commits) ?21:40
Tuomas left21:41
Ilari amystrat: post-receive API transmits updated refs list via stdin. So to get proper testcase, you would need to capture that input and then replay it.21:41
amystrat: Replay is no problem (shell input redirection), but the capture is.21:41
amystrat I would not know how to capture that or where to look to find out how21:42
RaySl left21:42
altrux joined21:42
Ilari amystrat: Another way would be to just make up correct data for some testcase.21:43
amystrat: Did you push any new branches when it started failing? That's an edge case, so it very well might cause failures...21:44
ph^ left21:44
amystrat llari: can't be sure, we have 10+ devs and no one is sure when it started21:45
bcardarella_ left21:45
romao left21:45
Ilari amystrat: The format of the input is: '<oldsha> <newsha> <ref>', one line per ref. 40 0s means "NULL". Old ref is NULL on ref create, new ref is NULL on ref delete.21:46
amystrat: ref corresponding to branch X is refs/heads/X21:46
amystrat llari: cool, is there docs on that?21:47
Ilari amystrat: man githooks maybe?21:47
Gitbot amystrat: the githooks manpage can be found at http://git.or.cz/man/githooks21:47
amystrat thx all for your help, need to do some digging now21:48
kraymer left21:48
gberdyshev_ left21:48
hugoxrosa left21:48
lucsky left21:49
naeu left21:49
willb left21:51
jackdempsey left21:52
hyperair joined21:52
ocornu joined21:54
ocornu hi21:54
Beket left21:54
qrush joined21:54
max_ep Hmm, how do I delete a remote branch? I pushed out some changes and realized I'd brainlessly done a merge rather than rebase... I was unable to push -f it, so I made a new branch...21:54
jimmyz2 can anyone point me in the right direction to get git to run a "php --syntax-check" <filename> on a push if the filename ends in .php, to verify no syntax errors get checked in?21:55
max_ep but how do I get rid of the junk one21:55
qrush git push <remote> :<branch>21:55
http://gitready.com/beginner/2009/02/02/push-and-delete-branches.html21:55
max_ep Oh, never would've thought to look in push :) Thanks21:56
Luckily not an issue I'd run into before21:56
lll joined21:57
max_ep Awesome, it's perfect now :)21:57
bdiego left21:58
ocornu how can i switch to a branch/commit without changing the working tree?21:58
max_ep ocornu: git stash21:58
qrush you can switch using git checkout and your working tree will stay. or just do git stash21:58
robinr close. checkout will change you working tree. it merges you local changes to the other branch22:00
qrush er, yeah22:00
:)22:00
Yuuhi left22:00
qrush just do a git stash22:00
GyrosGeier left22:01
vmiklos left22:01
xl0 left22:01
OgMaciel left22:01
lorandi left22:01
Ilari jimmyz2: man githooks . Note that you probably want hook that can deny push (pre-receive or update) and note that multiple commits can be pushed at once.22:01
Gitbot Ilari: the githooks manpage can be found at http://git.or.cz/man/githooks22:02
minciue joined22:02
gwoo left22:02
GyrosGeier joined22:02
vmiklos joined22:02
OgMaciel joined22:02
xl0 joined22:02
hegge joined22:02
Ingmar joined22:02
daleglass joined22:02
natlus joined22:02
pcgod joined22:02
maxb joined22:02
replaca joined22:02
IRSeekBot joined22:02
incd^ joined22:02
piroko joined22:02
frsk joined22:02
yinkei joined22:02
bmalee joined22:02
xkr47 joined22:02
hgb joined22:02
majoh joined22:02
mithraic joined22:02
dionoea joined22:02
Tali joined22:02
impulze joined22:02
seb42 joined22:02
darjeeling joined22:02
madduck joined22:02
avtobiff joined22:02
janl joined22:02
ocornu but git-stash only works when there are local changes, right?22:03
Ilari ocornu: Local uncommitted changes.22:03
ocornu yes22:04
i have none22:04
i have two clean branches22:04
leanucci joined22:04
ocornu i want to switch to one branch while keeping the working tree state of the second one22:04
jimmyz2 sweet, thanks guys..22:05
qrush then just do git checkout22:05
git checkout branch222:05
ocornu qrush: that updates the working tree22:05
qrush Well, of course it does.22:05
Ilari ocornu: If you REALLY want to do that: 'git symbolic-ref refs/heads/branch2'.22:05
justatheory What is a "dirty working directory"?22:05
Ilari ocornu: If you REALLY want to do that: 'git symbolic-ref HEAD refs/heads/branch2'.22:05
qrush so you want to look at the changes in another branch?22:05
because that's what git log, git show, etc are for22:06
jerbear joined22:06
Ilari ocornu: Yeah, 'git log' accepts commit IDs and branches to show the log of.22:06
justatheory: Means uncommitted changes.22:07
hugoxrosa joined22:07
kraymer joined22:07
minciue left22:07
justatheory Ilari: Strange, I didn't have any.22:08
But realized that I had a typo in my filter-branch command, and now I don't get that error.22:08
So I'm happy.22:08
Ilari justatheory: 'git status' shows which files have uncommitted changes.22:08
justatheory Ilari: I know. I had none.22:08
But it was a typo somehow.22:08
Predominant left22:09
ocornu what i've done is that i committed a big change in one new branch (i probably shoud have stashed it instead), now i want to apply/commit piece after piece this big change in a clean way22:09
catalis left22:09
Ilari justatheory: And as hint, if you can get away using --index-filter instead of --tree-filter, use --index-filter, as it is by far faster.22:09
justatheory I'm using --msg-filter22:09
thiago_home index-filter faster?22:09
justatheory Stripping out git-svn-id: stuff22:09
thiago_home ah, checking out22:10
I see22:10
Ilari ocornu: Check out the branch, 'cherry-pick --no-commit' the big change, 'git reset --mixed' and start applying?22:11
kalle_ left22:11
kalle_ joined22:11
justatheory Can I use more than one filter command in a call to filter-branch?22:12
like --msg-filter and --tag-name-filter cat?22:12
ocornu Ilari: well, i reset it the "big change commit", stashed it, and applied it where it belongs. it works22:12
thanks for your help :)22:12
Ilari justatheory: At least according to syntax, multiple are allowed. Don't know how it would react to some combos...22:12
justatheory Well, I want to filter all messages in all branches22:13
And have it update what's in grafts22:13
Maybe I need two calls?22:13
seangrove left22:13
foutrelis joined22:13
Ilari justatheory: Some examples of suspicous combinations include stuff like using both --tree-filter and --index-filter in one call,22:13
justatheory sure22:14
Ilari justatheory: --tag-name-filter can be used with other filters.22:14
justatheory does --msg-filter hit commits in all branches, or just the current branch?22:14
I'm guessing only if I also use `--tag-name-filter cat`.22:15
Kimmie left22:15
Ilari justatheory: Yes it does, but without --tag-name-filter, tags aren't updated (or something to that effect)22:15
justatheory: Perhaps --all to rewrite everything?22:16
hax0r1337 left22:16
justatheory Yeah, that gave me errors.22:16
Ilari justatheory: What errors? "gave me errors" is not helpful.22:16
justatheory Ilari: http://rafb.net/p/YU0fnh11.html22:17
I know, i was working on the paste.22:17
Looks like it rewrote all the branches, though.22:17
grafts too, I think.22:17
Maybe I don't need the --all?22:17
Ilari justatheory: Those errors came from lack of --tag-name-filter.22:18
justatheory: Or actually warnings. They aren't errors.22:18
justatheory right, that's why I was wondering if I even needed it.22:18
right, sorry, my mistake22:18
Ilari justatheory: It even mentions it.22:18
justatheory I know.22:18
It's a good warning22:18
iratik joined22:18
justatheory I'm just trying to decide whether or not I actually need to filter tags since I'm filtering mesages.22:18
Ilari justatheory: Tags are not on any branch!22:19
justatheory: So if you don't filter them, they retain their old commit messages.22:19
justatheory Tags are just applied to particular commits, no?22:19
Ilari justatheory: Yes.22:19
justatheory Ah, I see.22:19
So a tag can be a commit in itself, or applied to an existing commit.22:20
So I'll throw in the tags stuff, just to be sure everything is covered.22:20
git filter-branch --msg-filter 'perl -0777 -pe "s/\r?\ngit-svn-id:.+\n//ms"' --tag-name-filter cat -- --all22:20
wmoxam left22:21
jerbear left22:21
justatheory tries that.22:21
Ilari justatheory: The commit is designated by its ID. And still no way to create two different commits with the same ID with feasible effort is known.22:21
justatheory I knew that.22:21
Ilari justatheory: Note that filter-branch doesn't like to run if backups from old run are still present.22:21
justatheory I was thinking of CVS, I guess, where you can tag existing commits.22:21
Ilari: Yeah, I keep rm -rf'ing and cp -rf from backup as I figure stuff out.22:22
Thanks22:22
nekrad left22:22
botanicus_ left22:23
amystrat Ilari: fixed the error: hooks/post-receive exited with error code 1 error... it was failing because we have an extra bit of script that pings hudson our CI server... which was down22:23
justatheory Bah, getting dirty working directory error again…22:23
Ilari amystrat: Yeah, extra bit of code being the problem...22:23
amystrat :)22:23
Ilari justatheory: Did you run status last time after you got that error?22:24
justatheory yeah22:24
Ilari justatheory: run status and retry the command.22:24
justatheory it was a typo in my filter-branch script again22:24
Ilari justatheory: What kind of typo?22:24
justatheory Ilari: git filter-branch --msg-filter 'perl -0777 -pe "s/\r?\ngit-svn-id:.+\n//ms"'--tag-name-filter cat -- --all22:25
See how "--tag-name-filter" has no space before it?22:25
kraymer left22:25
amystrat left22:25
Ilari justatheory: Actually, you should run 'git status' (or 'git update-index --refresh') on copy after cp'ing repos.22:26
justatheory oh? Huh.22:26
I'm about finished with my migration project, and will soon be blowing all these things away.22:27
Tricon joined22:27
Tricon left22:27
justatheory For those interested, I've been blogging my migration project here: http://justatheory.com/computers/vcs/git/22:27
seangrove joined22:28
HG` left22:28
Ilari justatheory: Otherwise some cache data will be wrong, and it could cause problems. Nowadays it hides effects from diff, but it still could cause trouble with other commands (especially dirty worktree detection).22:28
*Nowadays git hides such effects from diff...22:29
justatheory Ilari: Good to know, thanks.22:29
Ilari justatheory: Wonder why that typoed command causes dirty working tree error?22:29
kold left22:30
justatheory Ilari: Well, I had just cp -rf'd the directory from elsewhere, and it did start to work after I ran `git status`, as you said.22:30
fynn joined22:30
scarabx joined22:30
justatheory After `git-status`, I ran it again with the space missing and got:22:30
fatal: bad revision 'cat'22:30
Ilari justatheory: Yeah, I got the same error.22:31
iratiku joined22:31
justatheory So I think that it's exactly the issue you're describing.22:31
the dirty directory error just comes earlier22:31
and I didn't know that `git status` would fix the issue; I thought it was informational-only.22:31
juanjoc left22:32
Ilari justatheory: And BTW, when dealing with SVN, perhaps 'tr _ -' would be better tag name filter than cat... At least when used once.22:32
dodo_the_last left22:32
fynn how do I revert the working tree to match the index?22:32
qrush left22:33
Ilari fynn: 'git checkout .'?22:33
justatheory Ilari: Why is that?22:33
I've renamed all of the tags by this point.22:33
or, rather, created new ones and killed off SVN's old ones.22:33
fynn Ilari: hm, I thought that would revert to HEAD22:34
anyways, thanks :)22:34
Ilari justatheory: Git can have '.' or '-' in tag names, so using those is more "Git style".22:34
chris2 left22:35
justatheory I've changed the tag names from "rel_1_8_3" in svn to "v1.8.3" in git.22:35
Ilari justatheory: If you use dashes, be careful not to use stuff like em dashes. Git accepts those, but others are likely in for a nasty surprise.22:35
justatheory: Well, that works too.22:35
justatheory yeah, I'll stick to ASCII in tags and branch names.22:36
iratik left22:36
justatheory Kept all the branched named things like "rev_1_10".22:36
Ilari justatheory: I once when testing did branch that had astral character in its name. Would be real fun to use.22:36
justatheory lol22:36
I love Unicode, but not so much in filee names. Or tags or branches.22:37
But look for smart quotes in my commit logs!22:37
Will have to watch for that when I port SVN::Notify…22:37
Ilari justatheory: Well, shouldn't merges be marked properly so you wouldn't need those tags anymore?22:37
justatheory Yeah, The merge tags are deleted.22:38
I kept release tags only.22:38
I'll get this on github in the next day or two and you can see how it ended up.22:38
plasticine left22:38
seangrove left22:39
MisterN left22:40
km2 left22:41
jrmuizel left22:42
haesbaert joined22:43
Mr_Grieves| joined22:44
wwwald left22:46
boto left22:47
Mr_Grieves| I'm having trouble figuring out how to use branches. I have two branches, "master" and "branch".22:47
I'd like to put the changes in master to branch, but not the other way around.22:47
jimmyz2 in case anyone is interested, i solved my php parsing check pre commit issue with this:22:47
RandalSchwartz a branch is an endpoint, not a line22:48
jimmyz2 http://phpadvent.org/2008/dont-commit-that-error-by-travis-swicegood22:48
RandalSchwartz that's the first thing to understand22:48
Ilari justatheory: Characters unconditionally valid in git branch/tag names: !"#$%&'()+,-0123456789;<=>ABCDEFGHIJKLMNOPQRSTUVWXYZ\]_`abdefghijmnpqrstuvwxyz|} characters conditionally valid: ./@lock{22:48
RandalSchwartz do master and branch have a common ancestor?22:48
Ilari justatheory: And all characters with bit 7 set are unconditionally valid.22:48
Sho_ left22:48
Mr_Grieves| RandalSchwartz -- yes, "branch" branched off of "master" a while ago.22:49
RandalSchwartz and so master now looks like A B C X Y Z22:49
and branch looks like A B C D E F22:49
cmarcelo left22:49
RandalSchwartz what do you want to do?22:49
leanucci left22:49
RandalSchwartz what do you want branch to look like?22:49
Mr_Grieves| I want to make branch look like A B C D E F X Y Z, and leave master as it is22:50
RandalSchwartz well, it won't be X Y Z22:50
Ilari Mr_Grieves|: checkout branch and merge master to it (but don't merge the other way, it would take changes from branch)?22:50
radarek left22:50
RandalSchwartz since X is a child of C not F22:50
do you want A B C D E F X' Y' Z'22:50
hoping that X' Y' and Z' don't cause any conflicts?22:50
it'd be better to do:22:51
Predominant joined22:51
ckm left22:51
Ilari Mr_Grieves|: That makes history of branch look like A <- B <- C <- {D <- E <- F, X <- Y <- Z} <- M22:51
RandalSchwartz A B C X Y Z D' E' F'22:51
where your local changes are rebased ontop of the new master22:51
Ryback_ left22:51
RandalSchwartz that'd be:22:51
git checkout branch22:51
git rebase master22:51
RandalSchwartz waits for Mr_Grieves|22:52
Mr_Grieves| Hang on, phone call :)22:52
qrush joined22:52
hcl2 left22:53
Mr_Grieves| Hrm, it sounds like I'm going about this wrong. I want to be able to work on multiple bugs/features at once, and use master to stay up to date with other peoples changes.22:54
hyperair left22:54
Ilari Mr_Grieves|: Note that if 'branch' has been pushed somewhere (or it has been fetched/pulled), rebasing would lead to errors on push (overriding those would cause problems for others).22:54
Mr_Grieves|: Topic branches?22:54
Mr_Grieves| Ilari -- That's what I'm worried about.22:54
hpoydar left22:55
Ilari Mr_Grieves|: Does that branch even exist in upstream?22:55
Mr_Grieves| No, it is local only.22:55
RandalSchwartz keep rebasing your local changes on the remote fetches then22:55
Mr_Grieves| Topic branches sound like what I'm looking for.22:56
CardinalNumberProperNoun22:56
RandalSchwartz that makes a linear history that will merge cleanly22:56
Ilari History procuced by merge will merge just as cleanly.22:56
Mr_Grieves| RandalSchwartz -- I'm wary of rebasing, I've screwed that up too many times :)22:56
RandalSchwartz learn what it's doing first22:56
that's the key22:56
Mr_Grieves| Indeed. I tend to be lazy about those things :)22:57
RandalSchwartz if the proper workflow requires you to learn, I suggest you learn. :)22:57
gdelfino joined22:58
Ilari Mr_Grieves|: The rules are: Rebase either 1) Branches that do not exist anywhere else or 2) Branches on top of their only upstream.22:58
mugwump and only then if you didn't invest significant effort in testing the combined tree that might be invalidated by the rebase22:59
Ilari Mr_Grieves|: And for high-quality work, you need BOTH merge and rebase and to know when to merge and when to rebase.22:59
damainman856 joined23:00
Mr_Grieves| goes off to read some more docs :)23:00
Ilari Mr_Grieves|: Another more subtle problem with rebase is that it can result many new states to test (if you care about testing at that level), whereas merge will only result one.23:00
schacon left23:00
Modius_Modius23:01
Ilari Mr_Grieves|: The check push does is that the version in target repo is in set of commits within branch to be pushed. If it is, push doesn't need forcing, otherwise it does.23:02
snowman856 joined23:02
Mr_Grieves| I see -- Thanks for the tips. It'll probably take a bit of practice to get it to stick for me :)23:03
hugoxrosa left23:03
Ilari Mr_Grieves|: That is, if pushed branch includes tip of target, it updates without forcing.23:03
Mr_Grieves|: The rule of thumb with rebasing is not to let it rebase any commits that exist anywhere else. And note that publishing patches out of commits doesn't count as publishing commits.23:05
foutrelis left23:05
ceej left23:06
Mr_Grieves| Ok :)23:06
Ademan joined23:06
JohnnyL joined23:07
JohnnyL left23:07
LiamH left23:07
Alinermedia left23:08
justatheory Ilari: I think you listed most of 7-bit ASCII there. :-)23:08
Dashkal left23:08
shruggar joined23:10
Ilari justatheory: It is most of graphical characters of 7-bit ASCII. The unconditionally banned ones (out of ASCII graphical range of 32-126) are <space>:*?[^~23:11
kalle_ left23:11
Ilari justatheory: So out of 95 standard ASCII characters, its 80 unconditionally valid, 8 conditionally valid and 7 unconditionally invalid.23:12
qrush_ joined23:12
Ilari justatheory: Lower case alphabet chacarters 'l', 'o', 'c' and 'k' are only conditionally valid. This comes from combination '.lock', which can't be at the end of branch/tag name.23:13
justatheory: So 'foo-lock' and 'foo.locks' is valid branch name, but 'foo.lock' isn't.23:14
*are23:14
qrush__ joined23:15
justatheory Interesting.23:16
poseidon Can someone help me figure out what I'm doing wrong here? http://rafb.net/p/e4t0rY19.html23:16
justatheory Not sure I need to learn what locks are just yet.23:16
qrush_ left23:16
Ilari justatheory: .lock files are internally used by git. Branches with '.lock' suffix could collide with those.23:16
qrush__ left23:16
kalle_ joined23:17
justatheory ah23:17
Ilari poseidon: You didn't commit before pushing.23:17
botanicus joined23:17
javatexan left23:17
poseidon Ilari, but I added them. Do I have to add new files and commit them?23:17
robinr so we should use an otherwise invalud name for lock-files instead23:18
Ilari poseidon: Push only pushes commits, not files.23:18
poseidon: So you need to make commit to push first.23:18
fridim_ left23:19
Ilari robinr: Current rules are not strict enough. You can cause problems with stuff like 'foo.lock/bar'.23:19
poseidon k, but for when I make new files, can I simply do git commit newfile or do I have to do add then commit?23:19
damainman856 left23:19
Ilari robinr: Put 'foo' along with that...23:19
Fissure poseidon: you have to add first23:19
committing a file only works when it's already tracked23:19
Ilari poseidon: 'git commit newfile' doesn't work, but 'git commit oldfile' does....23:20
snowman856 left23:20
mfilipe_ left23:20
dotsintacks I need to track down the last time a line number changed, but it has gone through several renames.23:21
Ilari poseidon: IIRC, marking file as intent-to-add is enough to make 'git commit file' work.23:21
gdelfino Anyone knows gitosis required version of python? I have 2.4.3 and I'm having problems with "sudo -H -u git gitosis-init" under CentOS 5.323:21
dotsintacks s/line number/line/23:21
robinr dotsintacks: blame -M or -C -C23:21
could could also add -w for ignoring whitespace changes23:22
justatheory Ilari: I suppose that everything you just told me is nicely documented somewhere, yes?23:23
Ilari justatheory: man git-check-ref-format23:23
Gitbot justatheory: the git-check-ref-format manpage can be found at http://git.or.cz/man/git-check-ref-format23:23
botanicus left23:23
dotsintacks robinr: but doesn't git blame still just annotate each line with the last change?23:23
so that rename would be the last change.23:23
Ilari justatheory: Doesn't document stuff like 'foo.lock/bar' and 'foo' collding.23:23
justatheory Perfect23:23
Ilari *colliding23:23
dotsintacks unless -C /ignores/ renames23:23
justatheory Patch it?23:23
Ilari dotsintacks: Git few versions ago (1.6.2.1) had only ./ as conditionally valid, and @lock{ was in unconditionally valid list. Of course, one still could get into trouble with those (which was why those characters where made conditionally valid).23:26
loincloth joined23:26
Ilari Oops.23:26
justatheory: ^^23:26
parasti left23:27
Ilari justatheory: '@' is only "dangerous" if immediately followed by '{' later followed by '}'. Its invalid in pair '@{'.23:28
robinr non-ascii could be fun too23:28
justatheory Ilari: I am unlikely ever to run into this stuff, because I've been trained to keep tags and branches simply named by CVS and Subversion. But a discussion like this in the docs would definitely be beneficial to all.23:28
I need not be the only recipient of your wisdom. ;-)23:28
rettub_ left23:30
Ilari Of course, by meddling with repository internals, its possible to create branch names that include unconditionally invalid characters (and thus are invalid). On at least some Git versions, such names cause overt failure of some commands, and I wouldn't be surprised if some commands misbehaved on those.23:30
rettub_ joined23:30
Ilari E.g. some git version couldn't rename such branch.23:30
Dashkal joined23:31
zpoley1 left23:31
catalis joined23:32
Ilari robinr: At least such characters don't cause misbehaviour.23:32
majeru left23:32
majeru joined23:32
[intra]lanman left23:32
iso42 left23:32
SRabbelier left23:32
nis joined23:32
Ilari OTOH, some of the chararacters in unconditionally invalid list are only there for shell safety (*?[).23:33
scientes joined23:35
aziz left23:36
robinr . is for avoiding collision with the commit...range syntax23:38
sekimura left23:39
robinr or was then end of the sentence?23:39
:)23:39
quentusrex I have a git repo on a remote server,23:39
jimmyz2 left23:40
quentusrex how do I get the repo to have a copy of the files in the directory, and update the files on a git push?23:40
jrmuizel joined23:40
robinr anway, good night23:40
sekimura joined23:40
Zathrus left23:41
quentusrex Ilari: any idea how to have the files 'checked out' in a git repo? and keep the server repo updated for each push?23:41
Ilari . is because of range syntax and '.lock', '/' is because it gets translated to directory seperator (and that has its own rules), '@' is because of reflog syntax, 'l', 'o', 'c', 'k' are because of '.lock' suffix, '{' is because of reflog syntax, <space> is because space is used as separator in many places, ':', '^' and '~' are for ref syntax, '*', '?' and '[' are for shell safety.23:41
quentusrex: post-update hook.23:42
quentusrex: man githooks23:42
Gitbot quentusrex: the githooks manpage can be found at http://git.or.cz/man/githooks23:42
quentusrex right, but what is the proper way to check out the repo into the repo directory?23:42
Ilari quentusrex: Unset GIT_DIR, move one directory up and 'git reset --hard'?23:43
quentusrex: Alternatively set GIT_WORK_DIR and 'git reset --hard'.23:44
quentusrex umm, I think I've not been clear. I have on my workstation a folder called apache-settings/ it is now a git repo( I did git init) I created the files, and committed. I added a remote repo, and pushed the local to the remote repo. But the remote repo doesn't have the files in the directory like mine does on my workstation.23:44
I'm trying to get the remote repo have teh files, and in the post-update hook, update the copies of the files,23:45
Ilari quentusrex: $faq non-bare23:45
Gitbot quentusrex: Pushing to non-bare repositories is discouraged. See http://git.or.cz/gitwiki/GitFaq#non-bare23:45
quentusrex then how do I check it out in another spot?23:46
Ilari quentusrex: I gave two ways of doing the update in post-update. But beware, both make the repository unsuitable for local changes.23:46
scarabx left23:46
quentusrex Ilari: I don't want local changes at alll :)23:47
atleast no changes to be made on the server directly.23:47
Flathead joined23:48
nealinux joined23:48
Ilari quentusrex: As said, in post-update hook, either do 'unset GIT_DIR', 'cd ..', 'git reset --hard' or 'export GIT_WORK_DIR=/path/to/tree' 'git reset --hard'.23:49
quentusrex Ilari: since I'm new to git (or atleast I feel that way today) do you mind walking me through this?23:49
netoman left23:49
Ilari quentusrex: One problem doing just that it does it even for push to other branches, slowing things down.23:49
quentusrex I have a repo exclusively for the settings23:50
one repo for each 'type' of settings.23:50
mw left23:50
mw joined23:50
Ilari quentusrex: And then there's some setting you need to set, or you get nasty warnings in newest versions (and it will start failing in 1.7)...23:50
quentusrex where are the logs?23:51
Ilari quentusrex: What logs?23:51
quentusrex git logs.23:51
Ilari quentusrex: Reflogs are stored in .git/logs/23:51
quentusrex before I do the git reset --hard23:52
don't I need to check out the repo first?23:52
cpg|awaycpg23:52
Ilari quentusrex: It is implictly already checked out (with wrong contents of course).23:52
quentusrex it says it is a bare repo23:53
on the server23:53
I'm pushing to the server repo23:54
and the server is a bare repo23:54
Ilari quentusrex: 'git init --bare'? Or you forgot to unset GIT_DIR?23:54
quentusrex: Plus move one level up before reset.23:54
merlin83 left23:55
Ilari quentusrex: Can you pastebin the error message?23:55
arohner joined23:57
Modius left23:58
nealinux left23:58
Modius joined23:58

Logs Search ←Prev date Next date→ Channels Documentation