IRCloggy #git 2008-06-30

Logs Search ←Prev date Next date→ Channels Documentation

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

2008-06-30

ajonat left00:01
CrnkyGee1 joined00:03
CrnkyGeek left00:03
DrNick left00:05
DrNick joined00:06
d0k_ left00:08
elight joined00:09
gitte vmiklos: hey, sorry... GF.00:12
vmiklos: I did not have time to read Junio's answer...00:12
vmiklos: but maybe I still can help?00:12
davidfetter GFs take precedence00:14
vmiklos exactly :)00:14
especially on weekends.00:14
davidfetter my favorite toast:00:14
vmiklos gitte: i just wanted to ask if it's better to reply off-list (to you) for Junio's mail to make his load lower.00:14
davidfetter To wives and sweethearts...00:14
may they never meet ;)00:14
gitte vmiklos: no, I think by answering he asked for some response on your part.00:15
vmiklos ok :)00:15
mordaunt joined00:15
scroogemcduck left00:16
Eridius_ left00:16
evanlight_ joined00:18
mordaunt is there a way to get git to only track some file extensions? i.e. instead explicitly ignoring stuff. explicitly include stuff and ignore eveyrthing else?00:18
gitte Sure.00:18
mordaunt how?00:18
o_O00:18
gitte There are rules to exclude certain patterns with "!" in .gitignore.00:18
Also, AFAICR later patterns take precedence over earlier ones.00:19
So, "echo '*' > .gitignore; echo '!*.blub' >> .gitignore" should work.00:19
mordaunt hmm I'll try it!00:22
mordaunt hops in the gitmobile and drives off00:22
vmiklos gitte: i just noticed i can avoid a work() when calling rerere, there is already a rerere() in commit.h ;)00:22
gitte Heh.00:23
vmiklos fork()*00:23
gitte (Yes, I guessed so much ;-))00:23
mordaunt left00:23
evanlight left00:24
evanlight__ left00:27
doener joined00:28
huyx joined00:29
Ariella joined00:30
sfullenwider joined00:31
sfullenwider anybody remembere where that cool git picture is with the four repositories showing how git workflow works?00:31
marc_vw joined00:33
spearce joined00:35
gitte Hey gitney!00:35
spearce morning00:35
gitte Already in California?00:35
spearce no. still in ny00:35
i move on the 23rd of july00:36
blargh. jgit can't fetch junio's git tree from repo.or.cz over git://00:37
gitte Hm.00:37
spearce "fatal: Packfile corruption detected: unknown compression method"00:37
gitte wanted to get involved into jgit for a long time now.00:37
spearce never a message you want to see from your git implementation00:37
gitte Whic compression method might that be?00:37
s/Whic/Which/00:37
gitte curses her keyboard.00:37
vbabiy left00:38
spearce my guess is we got confused reading the pack at some point (not sure how?) and handed data to zlib that isn't zlib data00:38
hah. at least its reproducible right now so i can debug it00:39
doener_ left00:39
spearce wtf. a 7 byte annotated tag?00:41
that's so not right00:41
well, i guess that just goes to show you how good the git pack is at dealing with "corruption". even a perfectly valid pack read under buggy code is likely to claim its corrupt.00:42
oooh. "fatal: pack has bad object at offset 194489: inflate returned -3"00:44
that's c git.00:44
_wtf_00:44
sfullenwider left00:44
gitte Where does that pack come from?00:46
spearce repo.or.cz's git:// service00:47
evanlight joined00:47
spearce from gitster's alt-git.git tree00:47
in theory, none of this should be happening, even to c git00:47
huyx left00:48
elightGuest2542800:48
Guest25428 left00:48
evanlightelight00:48
evanlight_ left00:48
vmiklos unless there is a hdd corruption on repo.or.cz..00:50
huyx joined00:50
gitte tries to clone alt-git.00:50
spearce it gets better. the SHA-1 signature of the pack matches its footer.00:50
and repo.or.cz should be running a new enough git that it validates the data before it writes it into the pack, to avoid bit errors but still have a valid SHA-1 footer.00:51
mvw left00:51
gitte does not get any error, neither from the clone nor from fsck.00:52
elight left00:54
_GuidoKackwurst_ joined00:54
_GuidoKackwurst_ left00:54
elight joined00:55
jmspeex joined00:56
jordi_bunster left00:57
spearce hmmph.01:00
jordi_bunster joined01:00
spearce c git gets a different object count, and a different pack, when it fetches01:00
the c git pack ain't corrupt either01:01
gitte sighs01:01
gitte sighs at something different01:01
spearce i'm sure jgit asks for objects a little different then fetch-pack does during the commit negotiation so we may come up needing a few extra objects than c git wanted, but asking for too much (by not listing enough common commits or something) should not have caused a corrupt pack to be delivered.01:02
gitte Right.01:03
Because the pack that is delivered is still generated with pack-objects.01:03
spearce wonders if the jgit sideband multiplexer f'd up01:03
spearce err, de-multiplexer01:03
marc_vwmvw01:05
scrooloose left01:07
volante left01:11
geckosenator left01:15
SuttoL_ left01:15
albertito joined01:18
spearce haha.01:18
bug in jgit index-pack.01:18
we completed a thin pack by writing a whole object at any old offset. like on top of a delta that wanted the whole object as a base.01:19
so then when we re-read the delta, we read garbage. it was the middle of the whole object.01:19
pombreda1 joined01:19
spearce grumbles something about the stupid author of jgit's index pack, and the moron who last touched it.01:19
spearce then remembers it was him01:20
Leefmc left01:21
spearce i found it. moved code around in a stupid way when i added CRC32 support. blargh.01:22
SuttoL joined01:23
gitte Happens to me all the time. Fix something, break something else.01:25
bryanray joined01:26
VVSiz_ joined01:27
spearce sheesh. that was a f'ing dumb thing to have done01:29
gitte would not be that harsh.01:29
spearce i am on myself. :)01:29
gitte ;-)01:30
spearce jgit has too much cooking in pu and not enough merging.01:30
on the other hand, the breakage was in pu, so its fixable01:30
drizzd left01:30
gitte I have to admit that I was intimidated by the sheer size of the _single_ patches in the recent JGIT patch serieses, let alone the _number_ of patches.01:31
spearce yea, we had a couple of very large ones lately01:31
both in patch and series01:31
gitte Several versions, even.01:32
pombreda left01:32
spearce hmm. did i build this bundle wrong (and don't have the base objects it needs), or is there a bug in jgit's unbundle code?01:33
*sigh*01:33
gitte Check with "git bundle verify"?01:34
spearce says its ok01:35
gitte Then it should be okay, and it is jgit's unbundle code...01:35
_VVSiz_ left01:35
gitte (Unless it is some really internal corruption)01:35
spearce jgit wants 0e948be65d164c8f4cff78417b1138f644364dfc as a delta base for an object, and i don't have that.01:35
hmm.01:35
gitte Oops.01:37
bundle verify does not verify the pack.01:37
It only verifies the prerequisites.01:37
spearce damnit, then its useless, useless i say! ;-)01:37
gitte It is.01:37
gitte is sorry01:37
gitte forgot to squash that TODO01:38
gitte I think it should call verify-pack on the pack in the bundle...01:38
But that would involve quite some hackery on add_packed_git(), to allow packs that do not start at the beginning of a file...01:39
spearce you can't call verify-pack without an index.01:39
gitte Oh, that's right.01:39
gass left01:39
spearce running index-pack to create it is just as good as running verify-pack.01:39
kukks left01:39
gitte Yeah, but for "git bundle verify" I would not want to write anything.01:40
So maybe I'll have to pipe it to "git index-pack -o /dev/null"?01:40
spearce c git "git bundle unbundle foo.bundle" ran just fine and produced the pack and its .idx. and that's based on feeding the pack to index-pack, right?01:40
gitte is too tired for that.01:40
spearce heh. ok01:40
gitte Yes, index-pack is called.01:41
proxie left01:41
gitte (It has to, since the bundle only contains a pack, not its index)01:42
spearce well, it could call unpack-objects. :)01:42
gitte Also, the contained pack is typically thin.01:42
spearce yea, jgit is barfing in its make-it-non-thin method01:42
gitte As I guessed from you saying it looks for a delta base...01:43
SuttoL left01:43
gitte But verify-pack -v should give you an idea which delta bases are needed, right?01:43
spearce true, yes, it would01:43
spearce runs that01:43
gitte And your jgit code is probably already instrumented to show you which objects are processed, right?01:44
blowery joined01:44
spearce eh, not so much. :)01:44
oh hell.01:44
the missing object is in this pack.01:44
no wonder its "missing" but is a valid delta base.01:45
:)01:45
gitte ;-)01:45
gitte remembers vaguely that there were issues as to the position of delta bases in the pack.01:45
gitte Did Nico not say at some stage that they can be later in the pack?01:45
spearce yes, they can appear anywhere.01:45
gitte IOW that you could not incrementally build the fat pack?01:46
spearce unless its an OBJ_OFS_DELTA, which must have the base appear first01:46
this is an OBJ_REF_DELTA, so the base can be anywhere.01:46
jordi_bunste joined01:46
blowery left01:46
gitte Ah.01:47
spearce we should have code in here to handle this case; but its not getting the delta and resolving it, so we wind up with this unresolved delta at the end and go looking in the repository for the base. only the repository doesn't have it, because its in the pack.01:47
we should have paired up this delta to the base much earlier. :-|01:47
vmiklos wonders for what the IMITCNVHO acronym stands for. google gaves 0 results ;)01:53
spearce oh, i see it.01:55
this is a chain of A-B-C. A references B by name; B references C by name; C is not in the pack and must be appended to the end.01:56
only we try to resolve the A-B relationship first, and cannot find B, as the B-C one hasn't been resolved yet.01:56
doener vmiklos: it's an extended version of a rather well known acronym :-)01:56
vmiklos which is? :)01:56
doener vmiklos: try dropping some characters from the middle01:57
foca joined01:57
vmiklos if i should drop 'ITCNV', then i have no idea what 'ITC' means ;)01:58
jordi_bunster left01:58
doener I guessed for "in this case"01:58
vmiklos ah :)01:58
tricky;)01:58
doener yeah :-) never seen that before either, but was fun to decipher01:59
jscoot left01:59
agenteo joined02:00
agenteo can I leave uncommited changes in a branch, switch to another branch and working with HEAD? I am pretty sure git checkout master will port my changes there...02:01
wagle left02:01
doener agenteo: you can stash your changes, or just leave a temporary commit on your branch and amend that later02:02
agenteo doener: if I commit, I can jump to another branch and merge at anytime in the future right? I'll check stash now02:05
spearce yay. jgit bundle works. again.02:05
gcv joined02:08
sr_ joined02:10
jrdavid joined02:10
garrin joined02:11
gitte spearce: congratulations!02:13
spearce yea, i've really started to eat my own dogfood. and pay the price for it when its gross. :)02:13
*sigh*. too bad jgit doesn't recognize ~/.ssh/config and the host aliasing thing it does02:16
gitte doener, vmiklos: congratulations!02:19
wagle joined02:21
wagle left02:23
wagle joined02:23
krawek joined02:24
Leefmc joined02:25
gitte gives up in despair on trying to convince Daniel that his scenario with GIT_CONFIG and clone does not make any sense at all.02:25
imyousuf joined02:34
flaguy left02:38
spearce god i love spam bots just probing for open relays.02:40
so much fun in your mail logs02:40
jelmer left02:45
jelmer joined02:46
gcv left02:53
kanru left02:58
eternaleye left03:02
daaku joined03:05
lea_w left03:07
arun joined03:12
catdude left03:16
jordi_bunste left03:24
saintdev left03:27
Ademan joined03:29
mtodd_ joined03:30
kanru joined03:30
spool joined03:32
lea_w joined03:32
vbabiy joined03:33
gitte left03:33
spool hi, i'm trying to use 'git stash apply', but I get the error 'Cannot restore on top of a dirty state'03:34
elight left03:34
DrNick spool: what's git status say?03:34
spool nothing special03:35
I've got 1 unadded file03:36
and one file I've modified03:36
Eridius so you have a dirty tree03:36
spool mmm03:36
ok03:36
so I need to commit my modification?03:36
lea_w left03:36
spool can I ignore the unadded file?03:37
Eridius $note allan inner_six's working tree isn't on any branch. She also has a locally-modified tree. I recommend committing and rebasing against master. I also recommend updating the version of git03:37
spool: I believe so03:37
ack, wrong channel for that $note03:37
spool Eridius: :) ok I'll try03:37
Eridius: :) sweet03:38
Eridius: errr... sort of03:38
thiago spool: the problem isn't the untracked file03:39
spool the reason I hadn't commited that file is it's a blob, so now I've got a merge error :(03:39
thiago it's the modified file03:39
you can just git add the file03:39
then git stash apply will work03:40
peritus__ left03:40
spool yeah I did that, that's why I said sweet ;)03:40
thiago: git stash then automerged(?) the binary (a sqlite db)03:41
thiago: which is a longwinded way of saying thank you for your advice :)03:42
Eridius: thank you too03:42
krawek left03:44
joydivider joined03:45
mtodd left03:46
foca_ joined03:49
albertito left03:50
igorgue left03:52
madewokherd left03:56
albertito joined03:58
brosner left04:00
foca left04:06
brynary joined04:11
tjafk1 joined04:12
Ademan left04:12
saintdev joined04:14
peritus__ joined04:15
adante left04:25
freelock left04:26
Ademan joined04:28
tjafk2 left04:29
alenoosh joined04:31
freelock joined04:31
thiago left04:32
Leefmc left04:32
albertito left04:34
mtodd joined04:36
swtaarrs joined04:39
joydivider left04:40
joydivider_ joined04:40
swtaarrs left04:43
krawek joined04:48
krawek left04:50
krawek joined04:50
mbuf joined04:51
mtodd_ left04:56
Arme[0]Arme[N]05:01
joydivider_ left05:11
Modius__ left05:17
ciaran left05:17
ciaran joined05:17
EiNZTEiN left05:18
albertito joined05:24
foca_foca05:24
davidfetter left05:24
bryanray left05:27
ricky left05:29
vbabiy left05:32
srid joined05:33
srid left05:36
adante joined05:37
ricky joined05:37
sohail joined05:41
sohail hey guys, if I wanted to track another repository within my own repository, how would I do that with git?05:41
krawek left05:43
CodeOfficer left05:45
CodeOfficer joined05:45
Ademan left05:46
Ademan joined05:47
robinr sohail: git remote add <somenameforit> <otherrepo>; git fetch <somenameforit>05:48
CodeOfficer left05:48
sohail robinr, thanks!05:49
cncfanatics joined05:54
segy joined05:55
segy I just commited to code when I was on "no branch" and then switched to a branch05:55
any way to find out where that commit actually went?05:55
albertito left05:56
segy ahh, nm. git-lost-found05:57
pigeon can you do something like a git remote show but without having it to connect to the remote host?06:00
the info shown with git remote show doesn't seem to need an actual connection (or i'm wrong?)06:02
albertito joined06:05
robinr left06:10
Ilari segy: Or 'git reflog'.06:11
brynary left06:14
bobesponja left06:17
deavid joined06:18
sohail left06:20
priidu joined06:20
hashif joined06:28
hashif I made a git repo on machineOne. I pulled everything onto machineTwo and made changes to the code on both machineOne and machineTwo. Then I did a git push from machineTwo back to machineOne. But I can't figure out which command I need to type on machineOne for my code to reflect the changes. I'm sure it's something simple.06:29
l0verb0y joined06:31
_zack joined06:31
hashif (typing "git log" on machineOne shows the history of changes, but none are actually applied to the code files. There must be a way to update the files to match.)06:31
Ademan left06:31
Arjen hashif: see http://git.or.cz/gitwiki/GitFaq#head-b96f48bc9c925074be9f95c0fce69bcece5f6e7306:34
ciaran left06:35
BeerSerc OK maybe this is a really stupid question: How can I create "sub branches"? I want to create a branch like origin/bob/new_version. I am only able to create origin/bob or origin/new_version, but not origin/bob/new_version. how would I do that or whats the correct keyword for finding documentation?06:36
johan-s left06:37
bentob0x joined06:39
Pieter just use the slash in the branchname06:40
Arjen BeerSerc: You can create origin/bob/new_version if origin/bob doesn't exist yet06:40
foca left06:40
pygi joined06:41
Arjen BeerSerc: Also, they're not sub-branches. They're just a name06:41
hashif Arjen, Okay, thanks for the info. It sounds like the answer is "never do that". I'll poke around and see what the easiest way is to fix it from here.06:43
Arjen There's a link at the end of the answer with the 'correct' way06:43
hashif Arjen, well, after I used "git log" to show me that the changes were successfully back onto machineOne, machineTwo was reformatted :-)06:44
Arjen Ah :-)06:44
pflanze left06:45
hashif Arjen, but I think I can abandon the files on machineOne and just use the index, and rebuild the files from the index into another directory.06:45
bentob0x left06:45
bentob0x joined06:45
Arjen If you don't have any uncommitted changes, I think you can use git checkout06:47
Fullmoon joined06:49
Ademan joined06:52
hashif Arjen, I did, but I'm all straight now. Thx for your help!06:53
ash_ left06:53
Arjen np06:53
hashif Arjen, (I cloned into another directory, and am just keeping the .git in the original directory to be a central server kind of)06:53
ash_ joined06:53
_zack left06:55
BeerSerc Arjen: thx06:59
Ademan left07:03
metze_awaymetze07:10
johan-s_ joined07:13
Ademan joined07:14
Ilari BeerSerc: Also, if you have branch 'foo', you can't have 'foo/bar' (and vice versa).07:17
hashif left07:17
Ademan left07:19
gberdyshev joined07:19
gberdyshev left07:20
gberdyshev joined07:20
Ademan joined07:21
gberdyshevgberdyshev_07:21
BabelO joined07:22
gberdyshev_ left07:25
is_null hello everybody, how to git clone --bare a particular directory please? I checked man git-clone but i couldn't find07:31
although i'm convinced that it's possible07:31
jengelh got git 1.5.6?07:32
is_null jengelh, 1.5.4.5 does that mean i have to upgrade?07:32
jengelh right..07:33
gberdyshev joined07:34
pergesu left07:34
reel_ joined07:34
gberdyshevgberdyshev_07:35
gberdyshev_gberdyshev07:35
gberdyshevgberdyshev_07:36
gberdyshev_gberdyshev07:36
CodeWar joined07:36
ph^ joined07:36
gberdyshevgberdyshev_07:36
rraasch joined07:38
l0verb0y left07:38
sverrej left07:39
hashif joined07:39
mcella joined07:44
peritus__ left07:49
alegscogs left07:53
charon joined07:56
nud joined07:56
CodeWar left07:56
ehamberg can i make git diff show the differences in an extern viewer like kompare?08:02
is_null jengelh, i got it but i don't see any revelant change in the manual, am i missing anything?08:03
_eric joined08:03
hashif left08:03
CodeWar joined08:04
hashif joined08:04
_eric if I do a "git pull" and there are merge conflicts, is there a command I can run to take "their" version of a file?08:04
CodeWar I ve been searching for debates about branching vs patching. So far most google searches dont point me to somethign constructive. Do folks here have any fav thread or opinions08:04
jengelh is_null: strange08:05
bremner CodeWar: not understanding what patching means in a git context08:05
jengelh I see a git-clone --bare there08:05
agenteo I did a git pull, and I have some unmerged changes in a file that I want to get rid of, if I use git checkout file the file still contains the diff08:06
CodeWar mercurial style patch queues08:06
jengelh _eric: start off their branch and merge yours in, with --strategy ours or so08:06
_eric so if I've already done the pull, there isn't a simple way to fix it for a file?08:07
bremner CodeWar: do you know about stg (stacked git?)08:08
daaku left08:08
CodeWar sorry I meant to think of the philosophy not a particular SCM's implementation. perhaps I should ask in the linux kernel groups and I m not from the Linux kernel background. at first it sounded pretty apalling that people maintain a branch and then there are queues of patches being carried around. Surely there must be a justification08:10
charon_ joined08:11
anmoch joined08:14
charon left08:14
anmochcharon08:14
charon_ left08:14
agenteo cool, git checkout HEAD file08:15
janneb CodeWar: My impression is that with the advent of SCM:s with decent branching and merging such as git or mercurial, the "feature branch" style of development has become more popular. Whereas with, say, CVS or SVN where merging sucks the "head that is branched for releases" seems more popular..08:15
sbahra janneb, branching is so much more useful when you can feature branch :D08:16
easily08:16
_zack joined08:17
jdq janneb: I do both... I have a current developing head, feature branches and branches for special releases08:17
cherry picking is such a nice feature for those release branches... I dont want to miss it08:18
CodeWar jdq: by cherry picking you mean pick a subset of changes and apply it to the release branch08:19
sbahra jdq, nod08:19
jdq CodeWar: yeah08:19
sverrej joined08:21
janneb sbahra, jdq: agreed. My point being, if your SCM makes branching painful, you tend to avoid them. Hence with SVN the usual process is to do all development on head, and branch only for releases.08:21
sbahra Yes, this is what I'm using it for at the moment for any projects I work on.08:22
CodeWar So soudns like the general air is that branch if your SCM allows it for beggars use patches on the main branch08:22
sbahra Unfortunately, since branching over there is implemented the way it is, you also make the mistake of branching "sub-projects" too.08:22
jdq absolutly... two years ago, we developed a software with like 10 people and in the end more then 4000 commits to the svn... but not a single branch being made08:22
trochala joined08:22
sbahra Which really doesn't reflect the ontology, at all.08:22
Also because SVN isn't distributed, I was *forced* to give commit access to developers who should not have had commit access.08:23
I spent many hours being a maid.08:23
I really really like git. :-P08:23
dwmw2_gonedwmw208:24
ciaran29d joined08:24
koke joined08:24
peritus_ joined08:29
sverrej left08:33
charon so it seems gitk persistently refuses to restore my sash positions in the history window beyond 1190px... anyone else had this problem?08:34
it saves the correct coordinates to ~/.gitk, but the 'sash place' command apparently never gets beyond 119008:35
Bombe “sash”?08:36
sverrej joined08:36
charon_ joined08:37
charon_ left08:38
jengelh vertical divider.08:39
(or horizontal)08:39
charon_ joined08:39
charon left08:41
charon_charon08:41
Bombe Ah.08:43
Yeah, I have the same problem... at home with 1280px width the dividers are fine, at work with 1680px they are not.08:43
charon (sorry, my wlan here is terrible)08:45
i'll toy some more, but i'm more or less tcl illiterate08:45
SuttoL joined08:47
sbodo_w joined08:52
snailrails left08:52
chris2 joined08:53
sbeyer joined08:58
x-oweb joined09:02
clairvy left09:03
kraymer joined09:03
douthat joined09:03
CodeWar left09:06
snailrails joined09:06
_slacker_ joined09:07
felipec left09:11
douthat question: I have some legacy code that I imported into git. There were two installations of the same original code base that became divergent, and no history was kept. Lets call these versionA and versionB. When I initially imported these into git, I branched versionB from versionA, and worked for a few weeks without problem. However, now that I'm trying to merge versionA and versionB. I realize now that I should have imported each into "empt09:12
emdete joined09:12
d0k joined09:13
emdete hi, after a `git reset --hard HEAD` i get the message "warning: refname 'HEAD' is ambiguous." when doing `git status` and `git branch` says "* (no branch)" - whats wrong?09:14
Ilari emdete: You have branch named 'HEAD'?09:14
ebel joined09:15
douthat that should be: I realize now that I should have imported each into "empty nodes" instead of branching. How can I go back in time and tell versionB to not have a parent?09:15
fisons joined09:16
Ilari douthat: Figure out full 40 hex digit id for versionB, add it to .git/info/grafts and use 'git filter-branch versionB'?09:18
douthat Ilari: thanks, I'll give that a try09:19
reel_ left09:20
reel_ joined09:21
douthat left09:21
spearce left09:22
pilif|awaypilif09:24
emdete Ilari: isn't that some default?09:25
Ilari: and: no i havent09:26
georgyberdyshev joined09:32
gberdyshev_ left09:32
georgyberdyshevgberdyshev_09:32
ciaran29d does git have a feature similar to the new svn “changelists”?09:37
bremner ciaran29d: maybe you could tell us what they are?09:38
ciaran29d bremner: basically it’s a way that I can set up a shortcut to perform operations on set lists of files. E.g. I can say that a.txt and b.txt are part of changelist "text", and then svn status --changelist text, or svn commit --changelist text09:39
mxey File aliases, so to speak?09:40
ciaran29d a group of file aliases, yes09:42
Man-erg joined09:42
paakku Does git cherry do anything with the "(cherry picked from ...)" lines added by git cherry-pick -x?09:46
Fullmoon left09:53
markkalderon joined09:54
peritus_ left09:54
highandwild joined09:55
highandwild hi all09:55
how do I create a branch so that if a file is modified in master, the change also reflects in this branch ?09:55
or do I have to manually merge them ?09:55
agenteo left09:56
Mikachu joined10:01
janm joined10:02
Ilari emdete: 'git for-each-ref | grep HEAD' might be helpful in locating the second (conflicting) HEAD reference...10:02
bremner ciaran29d: sounds nice. the only thing that occurs to me is git-stash, but that is about snapshots of contents, not names10:04
Ilari highandwild: Yes, either manually merge them or rebase the brnach (assuming the new branch is private).10:04
fhobia left10:04
Ilari ciaran29d: Something similar would be to script 'git update-index' (or even 'git add', altough that isn't 'scripting grade').10:05
hashif left10:05
hashif joined10:05
hashif left10:05
ciaran29d I suppose I could fiddle something with aliases but then I’d have to do one for each command…10:05
hashif joined10:06
bremner ciaran29d: or shell variables, if you are desperate. list="foo/bar fubar"10:06
ciaran29d yeah10:06
not repo-specific then though10:07
Ilari Turn extended globbing on, and one gets glob patterns as powerful as regular expressions...10:07
highandwild Ilari: but wouldn't rebase overwrite any conflicts ?10:07
Ilari highandwild: Rebase essentially makes patches out of the branch, resets the branch away and reappiles patches to recreate the branch...10:08
highandwild: And yes, rebase can run into conflicts...10:08
highandwild Ilari: ok, so I think merge is the way to go for me10:08
Ilari: thanks10:08
Ilari highandwild: Merge leads to sightly worse history, but doesn't mess with existing history (important on published branches).10:09
highandwild: Which is way to go actually more depends on what that branch is for...10:15
bremner ciaran29d: you could make a wrapper script for git that expands changelists and then calls git (changelists could be stored as git config)10:15
bremner hopes that last suggestion was awful enough that someone will think of something good :-)10:16
highandwild Ilari: well working on an version 2.0 of a web app10:17
Ilari: specifically working on the UI only10:17
Ilari: so I want any non-UI changes in master to be merged into the UI branch while I'm working on it10:17
Ilari highandwild: That sounds like it will be 'published', so merging is the right way...10:19
emdete left10:19
highandwild Ilari: yes, i expect that UI will be finished and published at some point10:20
its not a throwaway branch10:20
hashif left10:20
Ilari highandwild: 'Published' here refers to branch being available for fetch/pull by others...10:21
highandwild Ilari: ah sorry10:22
Ilari: its not an open-source project, so no it won't be published like that10:22
bremner highandwild: open source is not the point.10:22
Ilari highandwild: Well, if there are multiple devs working on it, then it likely will be 'published' in sense I descibed.10:22
highandwild well, I'm a single-user on this project10:23
single-dev rather :)10:23
Ilari highandwild: So 2.0-UI is topic branch?10:23
highandwild well, sorry I'm not familiar with the topic term10:24
but basically, once 2.0 is finished, I'd merge it to master, since its a web app and I wouldn't really have anyone using 1.010:25
but my initial concern was that _while_ I was working on the branch, I'd also be making changes in 1.0 that would need to be reflected in 2.010:25
Ilari highandwild: Based on what you have described, updating by rebase could be better than update by merge...10:26
highandwild But then note that some changes in 2.0 might also affect the master - that I would not want to merge until I finish work on 2.010:26
So no its not a strict topic branch. It would affect some of the non-UI code10:27
Am I making sense ? I'm sorry to be dense, but I'm relatively new to git10:27
Ilari There's actually another point: If stuff in master changes radically, you could need to do lots of fixing up in topic branch also (since interfaces have changed).10:28
highandwild ah10:28
Ilari With merge, you only need to fix up stuff once per breakage...10:28
highandwild no I would just be adding functions and views, not _changing_ the existing api10:28
Ilari ...And not having to fix older stuff...10:28
highandwild i.e in master10:28
Another point - does a tracking branch help my situation ?10:29
Ilari highandwild: If app is properly seperated, i.e. UI code is in seperate files, then both rebases and merges should autoresolve conflicts...10:29
highandwild Ilari: its a rails app, they're in separate files, but changing the views that I way intend to, will affect the controller code as well10:30
sr left10:32
sr_sr10:33
highandwild but definitely, there won't be many changes to master, just a few. The bulk of the work will be in UI10:33
peritus_ joined10:37
hashif joined10:38
peritus_ left10:38
Ilari As long as changes aren't very extensive, the conflicts should remain fairly rare...10:39
highandwild right - I am beginning to understand rebase now10:40
how do I check what the conflict in a merge would be without actually doing a merge. Doing a diff, right ?10:40
so I can do a git diff, and if I think there's no conflict, I can git rebase10:41
if there's a complicated conflict, I can use merge10:41
bremner highandwild: git merge --no-commit ?10:42
highandwild bremner: thanks10:42
Ilari Or just attempt the merge and rebase and if it goes sour, abort/undo it?10:43
highandwild right10:43
ok, I think this is good10:43
Appreciate your patience, guys10:43
hendry joined10:46
MichaelRaskin_ joined10:47
hendry i accidentally added a file in git. how do i unadd? git reset or git update-index --force-remove ?10:47
Mikachu the first10:48
doener git reset -- file or git rm --cached file10:48
hendry Mikachu: thanks10:48
yofel joined10:51
hendry doener: thanks for pointing out that odd '--' syntax.10:54
nothingmuch joined10:54
Xyri0 joined10:54
nothingmuch i want to migrate from SVK to git-svn for a project10:55
huyx left10:55
nothingmuch my problem is that it has lots of top level sub projects, each with it's own trunk/branches/tags10:55
each of these needs it's own git checkout10:55
and mirrorring the whole thing will take me forever10:55
mithro left10:55
nothingmuch is there a better approach than just git svn clone for every subproject?10:56
avar I don't know but you should only have to clone the repository once to your machine10:56
bremner nothingmuch: maybe http://kitenet.net/~joey/code/mr/ is interesting to you10:57
nothingmuch: there are also submodules, but I'm against them this week :-)10:57
nothingmuch okies =)10:58
avar: git svn clone is only copying the subset of the revs applying to the tree, so i think actually not10:58
it's once per branches/tags/trunk tuple10:58
but not once per SVN repository10:58
doener nothingmuch: how many revisions does that repo have?10:58
nothingmuch several thousands10:59
i think about 10k10:59
not sure10:59
hendry left10:59
nothingmuch ideally i could abuse ~/.svk which already has a mirror of the whole thing10:59
aha! http://utsl.gen.nz/talks/git-svn/intro.html#howto-fetch-convert11:00
mugwump++11:00
doener I cloned a 11k repo two days ago, using 1.5.6.1 + git-svn fixes, that only took maybe 2 hours?11:00
nothingmuch it took me about an hour to git svn clone just one of the subprojects11:01
about 1500 revs11:01
doener which git version?11:01
nothingmuch 1.5.6.111:01
roham[rt] joined11:01
nothingmuch what I linked to should be OK11:01
doener note that that versions two bugs, one that leaves tmp files around (eventually slowing down things due to lots and lots of files in /tmp)11:02
if /tmp runs out of space, you also get a corrupted cloe11:02
s/cloe/clone/11:02
and the other is a memory leak, if you're short on memory, that might cause your box to swap... (although for 1500k revs, it should "only" eat about 100-150MB, I guess, depending on the contents of the svn repo)11:03
ehrm s/1500k/1500/11:03
for 1500k it would likely eat a PB or so :-)11:03
Pieter 1500k should be doable though11:04
oh well, better use something else then11:04
doener nothingmuch: there are fixes for both bugs in git.git master11:04
Xyrio left11:05
Xyri0Xyrio11:05
doener oh, and in maint, of couse11:05
s/couse/course/11:05
nothingmuch doener: good to know11:05
doener so if possible use one of those11:05
nothingmuch will do11:05
i compiled git from a checkout11:05
i just checked out the tag for 1.5.6.111:05
i guess checking out maint is prefferred?11:06
doener ok, re-reading what I wrote, all those stupid typos tell me I and some coffee... brb11:06
nothingmuch: I'm running master here all the time, but if you're the cautious type of user, use maint11:06
master is already supposed to be reliable (most of the time)11:07
nothingmuch i guess i could use master11:07
MichaelRaskin_ left11:07
nothingmuch i'm not a heavy user11:07
but I suppose strange new devs will be done in branches11:07
so that master should be OK11:07
btw, asciidoc seems utterly broken on OSX11:08
xmlto is too11:08
(none of the deps installed without futzing, and the xslt is still not working)11:08
so I can't build the manuals11:08
is this a known issue?11:08
doener might be the asciidoc version, IIRC there's a Makefile variable for certain versions11:09
nothingmuch asciidoc needed --unsafe to be passed11:09
Pieter it's only broken with macports I think11:09
nothingmuch i installed asciidoc, xmlto and getopt from their respective tarballs11:09
Arjen I just get the built docs from the man and html branches :-)11:09
doener nothingmuch: and in git.git, there are branched with the docs pre-built11:09
adante left11:09
nothingmuch doener: i think I tried to use that11:10
but didn't see them11:10
highandwild left11:10
nothingmuch maybe I did it wrong11:10
nothingmuch is still a n00b11:10
roham[rt] left11:11
doener nothingmuch: there's a quick-install-doc make target11:11
nothingmuch ah11:12
doener nothingmuch: and you can see the branches with "git branch -r" (remote branches) or "git branch -a" (all branches)11:12
nud left11:12
kukks joined11:16
imyousuf left11:18
emachado joined11:20
priidu left11:23
priidu joined11:24
peritus_ joined11:28
x-owebX-Blade11:29
tmz left11:30
georgyberdyshev joined11:32
gberdyshev_ left11:32
georgyberdyshevgberdyshev_11:32
paakku Does git have some command to show how many years, months and days passed between two tags?11:33
mithro joined11:34
lamont joined11:34
lamont left11:34
lamont joined11:35
gitte joined11:36
nothingmuch bremner: where is the extrension for git-svn support in mr?11:37
i can't find it on the page11:37
koke left11:37
jordi_bunster joined11:40
radarek joined11:43
guardian joined11:44
guardian hi11:44
does rebase automatically fetch ?11:44
warlock_mza joined11:46
paakku no but there is git pull --rebase11:46
mithro left11:46
alenoosh left11:47
bremner nothingmuch: you are right. I was just thinking about the "many git repos" issue.11:50
nothingmuch bremner: actually the mr page mentions an extension11:50
oh11:51
found it11:51
mr.git/lib11:51
jordi_bunste joined11:51
bremner nothingmuch: cool, I love when I am helpful by mistake11:51
jordi_bunst joined11:52
felipec joined11:54
sids joined11:57
betagan joined11:57
betagan hi11:58
charon left11:59
lorandi joined12:00
mxey left12:01
cannonball joined12:03
madewokherd joined12:07
guardian left12:07
Mikachu left12:08
jordi_bunster left12:09
jordi_bunste left12:09
guardian joined12:09
data`_ left12:09
pflanze joined12:11
Helios joined12:12
felipec left12:12
VVSiz_VVSiz12:12
metze left12:12
metze joined12:15
data` joined12:15
kraymer hi there! i have a problem with git-svn: i mirrored part of a svn repo (~400 revisions) then made some (~10) local git commits. when i did the dcommit, the first three commits went fine, then the dsl connection got interrupted12:16
i thought i could just restart dcommit but my local repo is in an 'unexpected' state12:17
it has all the modification from all missing commits as a local, uncommited change12:17
i guess i could just git-commit, then git-svn dcommit it but this isn't what i intended to do in the first place12:17
anyone experience with that? or ideas on how to solve?12:17
..or both? ;)12:17
Helios` left12:18
hashif left12:20
hashif joined12:20
jast here's what probably happened: dcommit did a rebase and that got interrupted. see if git rebase --abort helps (though i'm not sure whether git-svn actually uses that part of rebase).12:22
otherwise, find the right state of your branch in git reflog and then git reset --hard <the name of that reflog entry, e.g. HEAD@{123}>12:22
(but do make a backup before doing reset --hard)12:23
Man-erg left12:24
jordi_bunster joined12:25
kraymer hey jast. git rebase doesn't work. it says there was no rebase in progess12:25
i'll have a look at the revlog thing, thanks12:26
jast i suspected as much, to be honest12:26
git-svn uses rebase in an interesting way12:26
alegscogs joined12:26
peritus_ left12:28
koke joined12:28
kraymer mokay, so i found thath head@{12} is the newest revision that got into the svn repo12:30
jast that's not what matters12:30
is_null left12:30
jast what you want to do is find the newest commit of those that are not in svn yet12:30
kraymer ok, that would be head@1112:31
so I'll hard-reset there12:31
doener kraymer: you can also look at the reflog for your branch: git reflog show $branchname12:31
jast so what sort of things do 10..0 point to?12:31
doener that's sometime easie12:31
r12:31
oops12:31
jordi_bunster left12:35
grahal joined12:35
EmilMedve joined12:36
kraymer hm, 10..0 are all rebase actions12:36
doener: thanks for the hint12:37
doener kraymer: you should now reset --hard back to the state that you were at when you started your dcommit, then svn rebase and then try to svn dcommit again12:38
(doesn't hurt to verify the history after the svn rebase ;-)12:38
kraymer ok, will do12:38
i guess so ;)12:38
doener the rebase step should cause those commits that already got dcommitted to be replaced by the new commits (those with the git-svn-id lines in the commit messages)12:39
otherwise, you _might_ end up with those commits duplicated. git-svn might be smart enough to avoid that, but I never tried, and don't intend to *g*12:40
hashif left12:40
jordi_bunst left12:42
kraymer wow. thanks guys, it worked12:44
so i went back to that ref via reset, git-svn fetched and rebased again (because it complained my revision was out of date), then dcommited12:44
doener yeah, sounds good12:45
kraymer i would never have got there!12:45
doener fortunately didn't have to do that yet12:45
kraymer git has steep learning curve ;)12:45
but well, I'm to blame for using it with svn i guess :)12:46
doener I'd probably go and look at the svn repo for hours to check for any corruption on that end...12:46
kraymer: right!12:46
:-)12:46
kraymer well, it's for mplayer. i just wanted to try git on something 'real' and not just locally12:47
doener heh12:47
kraymer diego will kick my butt if i screwed with mplayer repo now :)12:48
but i think it all worked12:48
CIA-50 left12:48
kraymer anyway. thanks again!12:49
nothingmuch is there any way of setting up aliases for svk heads, like st, br etc?12:49
i keep getting an error from git st when I mean to type git status12:49
csc` left12:49
nothingmuch it's in muscle memory by now =P12:50
doener nothingmuch: git config alias.st status12:50
nothingmuch ta =)12:50
doener nothingmuch: or better add --global12:50
nothingmuch hai12:50
doener otherwise, it's only for your current repo12:50
nothingmuch *nod*12:51
trochala left12:51
CIA-2 joined12:57
peritus_ joined12:57
csc` joined12:58
sergiodj joined12:59
wagle_ joined13:02
wagle_ left13:02
cmarcelo joined13:03
spool left13:11
brynary joined13:11
Beket joined13:13
charon joined13:14
flashwolf joined13:15
flashwolf hi there13:16
zorglu__ joined13:16
Arme[N]Arme[0]13:18
bartocc joined13:19
bartocc hi13:19
I've rebased and push on another branch something that I had already commited13:19
how can I move the previously pushed branch forward ?13:20
alegscogs left13:21
vbabiy joined13:22
bartocc ok, I figured it out13:22
sids left13:22
markkalderon left13:23
brynary left13:23
zorglu__ left13:25
seezer left13:30
seezer joined13:31
georgyberdyshev joined13:31
gberdyshev_ left13:32
georgyberdyshevgberdyshev_13:32
bryanray joined13:35
joydivider joined13:35
alegscogs joined13:36
aroben joined13:36
joydivider_ joined13:38
joydivider left13:38
lea_w joined13:39
rraasch left13:41
joydivider_ left13:44
_zack left13:45
foca joined13:48
clairvy joined13:48
scel left13:48
zedr0n joined13:51
zedr0n hi13:51
does git handle hard links?13:51
Tv it will consider them just regular files13:52
tchan Has something changed in git that would break the permissions needed for gitweb.cgi to run correctly? Updated to git-1.5.6.1 and now after every commit to a git repo, gitweb says "No Commits" until I manually run "git gc"13:52
zedr0n ah, that's why I have problems13:52
flashwolf left13:53
zedr0n I store the headers to my library in separate directory using hard links13:53
Tv zedr0n: sounds like you wouldn't want to version control those, as they aren't really source..13:53
zedr0n yes13:53
how do I untrack them?13:53
Tv git rm --cached13:53
zedr0n thx13:53
I was debugging it for several hours before it occured to me13:54
the class definitions were different in the linked object file from the library and the source file where I used the library13:55
deavidsedice joined13:59
Yuuhi joined14:00
_zack joined14:01
Tv zedr0n: most people would have used symlinks or /usr/bin/install14:04
zedr0n hm, I think I needed hard links because CMake doesn't handle symlinks14:04
dotsintacks_ joined14:05
spearce joined14:08
thiago joined14:10
spearce left14:12
zedr0n hm, can I clone a repository from the local machine so that the clone is an exact copy and isn't connected with the original in any way?14:12
will just copying do?14:13
i want to test some merging but don't want to mess up the repository14:13
blowery joined14:15
charon copying is fine14:15
adante joined14:15
Ilari zedr0n: After copying, you might want to run 'git status' in the copy to fix up cached working tree status data...14:16
zedr0n ok, I'll try that14:16
madewokherd left14:18
dotsintacks left14:22
ebel left14:22
glommer joined14:24
davidfetter joined14:25
kevwil joined14:26
ebel joined14:26
_zack left14:26
douthat joined14:34
douthat left14:34
tmz joined14:35
tchan Does anyone have an idea on what to look for in a git repo that was working fine with gitweb but after the recent bump to 1.5.6.1 from 1.5.5.4, that same repo has problems being viewed by gitweb - "No Commits". Problem goes away temporarily if I run "git gc" on the repo but the problem comes right back after the next commit to the repo.14:35
tmz_ joined14:35
EmilMedve left14:37
tmz_ left14:37
lamont` joined14:38
^Beket| joined14:41
cncfanaticscnc|away14:42
paakku tchan: you might try deleting .git/gitk.cache; although I don't know if it is possible to corrupt that in such a way that your symptoms would appear.14:45
_zack joined14:45
mxey joined14:45
hendry joined14:46
lamont left14:47
lamont`lamont14:48
Fullmoon joined14:50
Ilari tchan: Also, file permissions might be messed up...14:50
tchan: Especially modes of objects/<2 hex digits> and objects/pack directories.14:50
bloweryblowery`afk14:53
Beket left14:57
tchan I checked and there is no .git/gitk.cache file.14:59
Ryback_ joined15:00
tchan What should the file permissions of objects and objects/pack directories be ?15:00
_zack left15:00
Ilari tchan: What are they currently?15:01
tchan .git/objects is drwxrwxr-x+15:02
.git/objects/pack is drwxrwxr-x+15:02
paakku the + indicates an extra ACL, right?15:02
Ilari tchan: That looks fairly sane (except the .git part)... There are no dirs like objects/52?15:03
paakku To find out which part of gc temporarily fixes the problem I suggest you run git pack-refs separately.15:04
queso joined15:04
tchan nothing like objects/52 because the git gc finished okay15:04
bobesponja joined15:04
Ryback_ left15:05
tchan its not really .git, as I left off the extraneous path stuff like /home/tchan/moonbase.git/.git/objects/pack15:05
Ilari tchan: Shouldn't it be something like '/home/tchan/moonbase.git/objects/pack'?15:06
Arme[0]Arme[N]15:06
johan-s_ left15:07
l0verb0y joined15:07
Modius joined15:07
tchan Ilari: It isn't here. /home/tchan/moonbase.git is my working repo and it does have a .git subdir that contains objects/pack. So /home/tchan/moonbase.git/.git/object/pack is working here.15:08
Ilari tchan: Usually working repos are named something like 'foo' instead of 'foo.git'...15:09
foucist joined15:10
paakku Possibly some such assumption in gitk then?15:10
foucist i just did a git pull and it scrolled off my screen buffer, how can i see all the changed files etc again15:11
mbuf left15:11
tchan I didn't think gitweb uses gitk. Does it ?15:11
jengelh not at all15:11
Ilari foucist: 'git diff HEAD@{1} HEAD'?15:11
nachof joined15:11
paakku tchan: oh sorry, I misread and thought you had trouble with gitk15:12
didn't see the gitweb part15:12
Ilari foucist: (assuming that the merge was actually successful).15:12
foucist Ilari: doesn't look like that15:12
git diff HEAD@{1} HEAD just shows all the content differences15:13
bdiego joined15:13
foucist i just want to see the files not the content15:13
i want to see roughly what git pull shows15:13
paakku diff --stat perhaps15:13
nachof is there a way for git to preserve the timestamp of files? I have a bunch of files and their creation time is an important piece of information; how can I preserve that?15:14
Ilari nachof: There's no space to put that information. :-/15:15
nachof: (Well, outside working tree itself).15:15
hendry left15:15
nachof Ilari, I suspected that, but I wanted to confirm it; well, I guess I'll take the time to copy that info inside the files themselves; thanks!15:16
Ilari nachof: Why is creation time important information?15:16
zedr0n left15:16
foucist git diff HEAD^..HEAD --stat is showing changes to files that were changed a long time ago.. i.e. git diff HEAD^..HEAD <specific file> ain't showing anything at all15:17
chris2 nachof: there is some too to preserve metadata in a dotfile15:17
*tool15:17
zedr0n joined15:18
nachof Ilari: I want to use git to manage a bunch of short stories I wrote; many of them a while ago; the newer ones have the date info at the bottom, but the older ones don't (I didn't think at the time that it would be somehting I might want to know later)15:18
chris2: that could be useful too15:18
chris2 i think it's called etckeeper15:18
mtodd_ joined15:19
nachof chris2: thanks, I'll google it15:20
clairvy left15:20
davidfetter left15:21
tchan paakku: Okay, added a commit to my git repo, gitweb again says "No commits". Running "git pack-refs" does not fix the problem. If I run "git gc" then gitweb correctly displays the repo.15:26
krh joined15:28
Tv nachof: why don't you add the times at the bottom now?15:31
foucist left15:31
georgyberdyshev joined15:31
gberdyshev_ left15:31
georgyberdyshevgberdyshev_15:32
_zack joined15:32
nachof Tv: I will, I just wanted to save the work :)15:32
Tv nachof: etckeeper is going to be more work15:32
digitalhobbit joined15:33
Tv nachof: you can always for for a in *.txt; do stat --format=%z "$a" >"${a%%.txt.timestamp}"; done15:34
err15:34
bgerber left15:34
Tv for for a in *.txt; do stat --format=%z "$a" >"${a%%.txt}.timestamp"; done15:34
cnc|awaycncfanatics15:34
mtodd left15:35
bgerber joined15:35
cardioid Hope you haven't messed with the files since the stories were written15:35
nachof Tv, you're right; I didn't think of automating it, thanks :D15:36
cardioid Isn't %z the file size?15:36
xet7 joined15:37
paakku tchan: well, try renaming /home/tchan/moonbase.git to /home/tchan/moonbase; perhaps it'll work then15:38
quesoqueso|away15:40
rdavila joined15:42
kumbayo joined15:42
lea_w left15:44
queso|awayqueso15:44
paakku gitweb does $git_dir = "$projectroot/$project" in several places, and sub git_cmd then uses '--git-dir='.$git_dir;15:45
jordi_bunster joined15:45
brosner joined15:45
paakku so if $project is the name of a directory that contains a .git subdirectory, I don't think git will know to look there.15:46
krawek joined15:46
paakku yet git-instaweb is supposed to work with a non-bare repository15:47
nachof left15:48
nachof joined15:49
foca_ joined15:49
Ademan left15:50
cedricv joined15:50
Ademan joined15:51
krawek left15:53
tvachon joined15:55
charon left15:57
EmilMedve joined15:59
krawek joined15:59
matled- joined16:00
krawek left16:01
matled left16:04
matled-matled16:04
jargan joined16:04
gebi_ joined16:04
mtodd_ left16:04
^Beket| left16:04
ricky left16:04
Gitzilla left16:04
Strogg left16:04
ferdy left16:04
Arjen left16:04
hacim left16:04
jamesjb left16:04
cebewee left16:04
reuss left16:04
Tali left16:04
ftehw left16:04
djpig left16:04
udoprog left16:04
Leonidas left16:04
chrizz left16:04
gk left16:04
Pieter left16:04
gebi left16:04
up_the_irons left16:04
rphillips left16:04
slack left16:04
ehamberg left16:04
dionoea left16:04
jast left16:04
mountie`` left16:04
kanru left16:06
hacim joined16:06
ehamberg joined16:06
foca left16:07
nachoffoca16:07
focanachof16:07
dwmw2dwmw2_gone16:07
jordi_bunster left16:08
Arjen joined16:08
jamesjb joined16:08
mtodd_ joined16:08
^Beket| joined16:08
ricky joined16:08
Gitzilla joined16:08
Strogg joined16:08
ferdy joined16:08
mountie`` joined16:08
Tali joined16:08
djpig joined16:08
reuss joined16:08
dionoea joined16:08
chrizz joined16:08
rphillips joined16:08
udoprog joined16:08
gebi joined16:08
Leonidas joined16:08
cebewee joined16:08
gk joined16:08
Pieter joined16:08
ftehw joined16:08
up_the_irons joined16:08
slack joined16:08
ftehw left16:08
gk left16:08
ferdy left16:08
gk joined16:08
ftehw joined16:08
ricky left16:08
ferdy joined16:08
ricky joined16:08
udoprog left16:09
udoprog joined16:09
blowery`afkblowery16:09
byronvf joined16:09
krawek joined16:10
blowery left16:10
byronvf I believe there is a tool that displays a branch view of git's log at the command line, anyone know the name of it?16:10
RandalSchwartz git log ? :)16:10
git log branchnamehere16:11
or was this some sort of trick question16:11
byronvf But also displays a ascii art like graph16:11
RandalSchwartz ahh!16:11
like gitk16:11
byronvf yes16:11
RandalSchwartz without all the fancy graphics16:11
blowery joined16:11
RandalSchwartz hold on let me find it16:11
foca_foca16:12
RandalSchwartz git show-branch16:12
guardian left16:13
krawek left16:14
RandalSchwartz did that help?16:14
k0001 joined16:14
RandalSchwartz byronvf?16:14
byronvf Hmm, well, sorta, I remember seeing something on the web that was a little better in the ascii art department :) if that makes sense16:15
But I forgot the name.. I'm looking at git-show-branch now16:15
Ilari byronvf: git-forest?16:16
byronvf: (not included in standard distribution AFAIK).16:16
byronvf Ahh, yes, I think it's git-forest16:16
RandalSchwartz ahh16:18
that's why I hadn't seen it16:18
nbrunson joined16:19
gebi left16:20
byronvf Randal, Ilari: thanks for the help16:20
cncfanatics left16:20
k0001 left16:21
fhobia joined16:21
ReinH Damn you OS X case insensitive filesystem16:23
nachof left16:23
RandalSchwartz blame english for that.16:23
not OSX. :)16:23
ReinH I have a branch with a file FOO. In another branch that's been changed to foo16:23
RandalSchwartz Yeah, that's gonna hurt16:23
sbodo_w left16:23
ReinH I can't git checkout another branch because of this16:23
RandalSchwartz if you have to maintain that, create a case-sensitive HFS+ DMG16:24
ReinH the fail will be of enormous magnitude... there is no escaping </mooninites>16:24
RandalSchwartz or even a UFS DMG16:24
and then unload the project in there16:24
ReinH RandalSchwartz: I just want it to not break this one time.16:24
RandalSchwartz that's what I do16:24
ReinH yeah, fun eh16:24
I basically want to make this change once and then not maintain it again16:24
RandalSchwartz Blame NeXT. :)16:24
although that may also be an homage to OS9 too16:25
quesoqueso|away16:25
sbodo_w joined16:25
RandalSchwartz at least on OSX, you can work around it16:25
that'd be harder on windows16:25
Ilari Actually, case insensitivity isn't the worst part about some Mac OS X filesystems...16:26
RandalSchwartz so thank the maker you're not on windows16:26
Yeah - the UTF8 handling is atrocious16:26
ReinH RandalSchwartz: I'll thank me, thank you very much ;)16:26
RandalSchwartz if you made yourself, you're a better man than I am. :)16:26
ReinH RandalSchwartz: I made myself chose OS X ;)16:26
RandalSchwartz OK - I'll give you that one. :)16:27
ReinH RandalSchwartz: but back to the issue... what's the least painful way to correct this? git update-index or etc?16:27
I basically want this file to be foo everywhere insetead of FOO, where everywhere is a small number of braches16:27
RandalSchwartz you'll need to make that change on a case-sensitive filesystem16:28
ReinH oh joy.16:28
heh16:28
cedricv left16:28
ReinH ok, so I can do it on my server16:28
RandalSchwartz hence my suggestion of creating a DMG16:28
ReinH right, got it16:28
makes sense16:28
RandalSchwartz I have a 8GB UFS DMG that I mount after every reboot16:28
ReinH smart16:28
RandalSchwartz just to handle possible conflicts with "classic" unix16:28
lea_w joined16:28
ReinH oh hey, tpope is on a case sensitive filesystem. joy.16:28
tpope yes16:29
RandalSchwartz since UFS works "normal". No alias files, etc.16:29
ReinH RandalSchwartz: smart :)16:29
RandalSchwartz And most of my git mirrors mirror there16:29
ReinH word16:29
paakku How do people usually import a tarball into an existing branch?16:29
ReinH It still amazes me that anyone ever thought a case insensitive filesystem is the Right Way16:29
RandalSchwartz don't go there16:30
tpope I join you in laughing at ReinH's filesystem, randal16:30
ReinH :(16:30
RandalSchwartz that's "emacs" vs "vi" by proxy16:30
ReinH RandalSchwartz: ha, I go there pretty much daily16:30
RandalSchwartz or "bsd" vs "gpl"16:30
ReinH heh yes16:30
byronvf left16:30
RandalSchwartz or "gnome" vs "kde"16:30
no winners, anywhere. :)16:30
perl v python v ruby v haskell v ...16:31
ReinH I retract my statement in the interest of not starting ragnarok16:31
(Ruby)16:31
RandalSchwartz I clearly prefer smalltalk to ruby16:31
ReinH RandalSchwartz: heh :) I am a big fan of st16:31
RandalSchwartz have you seen my blog?16:31
ReinH RandalSchwartz: no sir, but I would like to16:31
garrin left16:32
RandalSchwartz MethodsAndMessages.vox.com16:32
ReinH heh word16:32
RandalSchwartz: You're familiar with SmallTalk Best Practice Patterns?16:32
RandalSchwartz of course16:32
I've quoted it16:32
built courseware around it16:32
even exchanged email with Beck about it16:32
ReinH RandalSchwartz: I'm co-authoring Ruby Best Practice Patterns with Beck :)16:32
RandalSchwartz Ahh! you're the crazy guy!16:32
I heard about that16:33
ReinH :/16:33
crazy guy :(16:33
RandalSchwartz he also did Java patterns recently too16:33
tpope I can confirm16:33
RandalSchwartz seaside will probably make rails irrelevant in a few years16:33
ReinH RandalSchwartz: Or MagLev16:33
maks_ joined16:33
RandalSchwartz that too16:33
maks_ how can i edit author and email aftwards of an commit?16:33
RandalSchwartz but once people discover that maglev can still run smalltalk...16:33
mikearr left16:34
maks_ git commit --amend drops me in for the commit msg16:34
RandalSchwartz and even interoperate...16:34
the ruby people will come back into the smalltalk fold. )16:34
ReinH RandalSchwartz: We're quite excited about MagLev at Hashrocket16:34
RandalSchwartz "come back. we forgive you."16:34
ReinH RandalSchwartz: and I personally would love to do more paid SmallTalk work16:34
and by "more" I mean "any"16:34
RandalSchwartz well - help me push Seaside then16:34
kanru joined16:35
RandalSchwartz have you seen smalltalkjobs.dabbledb.com16:35
lots more jobs, every week16:35
ReinH :)16:35
RandalSchwartz and first learn, it's not SmallTalk16:35
ugh!16:35
zedr0n left16:35
ReinH woops.16:35
RandalSchwartz that's like "Postgre"16:35
ReinH heh.16:35
RandalSchwartz it's a clue you're not "in the know"16:35
cncfanatics joined16:35
RandalSchwartz or "PERL" for that matter. :)16:35
ReinH or HashRocket16:35
:p16:35
RandalSchwartz see16:35
ReinH consider it a typo16:35
RandalSchwartz we all have our secret handshakes16:35
ReinH ;)16:35
RandalSchwartz anyway - read my blog from the first post (reverse order)16:36
and see what I've been doing with smalltalk16:36
and promoting seaside16:36
seaside *is* the next rails16:36
hacim left16:36
comp maks_: well .. you can change the author via --author16:37
maks_ saw16:38
doing together with rebase -i and edit16:38
but not practical for a bunch of commits ;) comp16:38
comp hehe16:38
k0001 joined16:38
Pieter you can't spell "postgresql" without "perl"16:39
bartocc left16:39
ReinH RandalSchwartz: I've got a lot of joy out of smalltalk and translating st best practices into the ruby idiom has been very rewarding16:42
*gotten16:42
There are some significant differences, though, that lead me to prefer Ruby on a day to day basis.16:43
charon joined16:44
Pieter speed! ;)16:44
ReinH And I certainly wouldn't ever advance the claim that Rails is an exemplar of the kind of idiomatic Ruby I talk about in my book16:45
In some ways it's very much not idiomatic ruby16:45
Ian00 left16:45
mcella left16:49
krawek joined16:50
chris2 left16:51
sbodo_w left16:51
fhobia left16:51
robinr joined16:53
sbodo_w joined16:54
foucist joined16:55
eikonos left16:57
rubydiamond joined16:58
eternaleye joined16:58
foucist left17:00
rubydiamond left17:00
rubydiamond joined17:01
pombreda1 left17:01
_slacker__ joined17:04
Arme[N]Arme[0]17:04
warlock_mza left17:06
pygi left17:06
metzemetze_away17:06
ketralnis joined17:07
timocratic joined17:07
sverrej left17:07
reel_ left17:07
ketralnis left17:08
bronson_ joined17:08
queso|awayqueso17:11
eikonos joined17:12
statim left17:12
p4tux joined17:12
_slacker_ left17:13
_zack left17:13
douthat joined17:15
CodeOfficer joined17:16
kanru left17:17
kanru joined17:19
joydivider joined17:19
douthat left17:19
alegscogs left17:22
Fullmoon left17:23
juanjoc joined17:24
joydivider left17:25
tvachon left17:25
ebel left17:28
joydivider joined17:28
joydivider left17:29
joydivider joined17:29
georgyberdyshev joined17:31
betagan\b17:31
gberdyshev_ left17:31
georgyberdyshevgberdyshev_17:32
\bbetagan17:32
joydivider left17:33
tvachon joined17:34
joydivider joined17:34
ketralnis joined17:34
SuttoL_ joined17:35
joydivider left17:35
shd left17:36
joydivider joined17:36
Eridius|work joined17:37
nud joined17:37
Eridius|work_ joined17:38
deavid left17:39
joydivider left17:39
joydivider joined17:40
cedricv joined17:41
cedricv left17:41
sbodo_w left17:43
ckoehler joined17:43
joydivider left17:43
_slacker__ left17:43
CIA-2 left17:44
joydivider joined17:45
les joined17:45
joydivider left17:45
joydivider joined17:46
les I have a question about setting up someone else's github repo as a remote for an existing local repo.17:46
quabbles left17:46
les Basically, I was wondering if anyone could help me with the correct syntax for my .git/config?17:46
quabbles joined17:47
doener les: just "git remote add somename repo-url"17:48
tpope git remote add myfriend git://github.com/myfriend/repo.git17:48
Eridius|work_ les: `sudo gem install defunkt-github --source http://gems.github.com && github track myfriend/repo`17:48
joydivider left17:48
joydivider joined17:49
joydivider left17:50
lolage0 joined17:51
SuttoL left17:52
lwhacker joined17:53
sbodo_w joined17:53
Eridius|work left17:53
les Thanks guys... trying it out17:53
pygi joined17:53
joydivider joined17:54
ketralnis left17:55
Fullmoon joined17:55
les tpope: thanks, that worked wonderfully!17:56
drizzd joined17:57
joydivider left18:01
joydivider joined18:02
sbodo_w left18:02
pombreda joined18:03
kdubois joined18:05
Eridius|work_Eridius|work18:09
davidfetter joined18:12
ketralnis joined18:12
statim joined18:16
alley_cat joined18:20
joydivider left18:22
jerbear joined18:23
CIA-2 joined18:27
douthat joined18:27
douthat left18:28
bentob0x left18:28
mxey left18:29
mxey joined18:29
warthog9 left18:31
lea_w left18:31
kdubois left18:32
catdude joined18:32
david_koontz joined18:33
cworth left18:33
cworth- joined18:34
mxey left18:34
mxey joined18:34
kdubois joined18:36
foca left18:36
ciaran joined18:38
redinger joined18:39
redinger left18:39
Tigerchen left18:40
BugeyeD joined18:41
is_null joined18:43
davidfetter apart from hosted git and gitosis, what are some options for making writeable repos available to a developer community?18:45
is_null hello everybody, how to clone --bare a sub-dir of a project managed with git 1.5.6.1? I did not found it in man git-clone18:45
BugeyeD hi all. following gittutorial, i cd into my project directory and issue 'git init ; git add . ; git commit' ... the commit fails with "fatal: exec <snip>/.git/hooks/pre-commit failed" ... this is on openbsd 4.3. any pointers? i'm very new to git.18:45
mxey_ joined18:46
mxey left18:46
bremner is_null: AFAIK, you need some voodoo like git filter-branch to clone a subdir18:46
paltman joined18:47
paakku How would one go about getting a tag signed by multiple persons?18:48
felipec joined18:48
paakku There doesn't seem to be git tag --amend.18:49
felipec paakku: git tag --force18:49
paakku felipec: Doesn't that lose the previous GPG signature?18:49
When multiple persons endorse a commit, are they supposed to create different tags each?18:50
felipec paakku: I don't know abut GPG signatures, but isn't the purpose of the signature to avoid modifications?18:50
paakku felipec: Well yeah, but there ought to be a way to have multiple signatures for the same signed content.18:51
donomo joined18:51
donomo whats the equivalent for 'svn info', i want to see what repo this git repo was cloned from.18:51
felipec paakku: so you want git tag --amend so you can add another signature?18:51
paakku felipec: That was my thought.18:52
felipec donomo: git remote -v is the most similar to that I guess18:52
koke left18:52
kdubois left18:52
donomo felipec: thx18:52
felipec paakku: ah, then somebody else should answer that18:52
bentob0x joined18:52
eikonos left18:53
paakku Of course if the Tagger in the tag object is supposed to match the name and email address listed in the key that matches the signature, then it'll get tricky.18:54
Is there any such assumption now?18:54
murmel joined18:54
donomo left18:54
warthog9 joined18:54
thannoy joined18:54
cnk Not clear if this is a git or a github issue, but I have a project that uses submodules. I am trying to clone to a new machine and getting an error saying "ERROR: Permission to cnk/empcms denied to cnk/restful-authentication." empcms is a private github repository and restful-authentication is a public fork of the normal repo. I can use the url from the submodule config file to checkout my restful-authentication fork on its own. Any guesses on what is going on?18:54
Pieter that's a github issue18:55
looks like you used deploy keys18:55
those should be unique18:55
you used the same on two repositories18:55
murmel I have a noobish question18:55
rubydiamond left18:56
murmel I need to clone a public repo and publish my own copy of it and am not sure how to do it with remote branches etc.. should I use github, gitorious or repo.or.cz?18:56
and what is the best way to track upstream changes, via "fetch remote-branch"?18:57
cnk Pieter: thanks I don't think I used any deploy keys - which might be my problem18:58
lwhacker left19:03
Wraithan joined19:04
alley_cat left19:04
felipec a branch that has 'master' + one patch can be called a floating branch, right?19:05
and I'll have to rebase it all the time19:05
tzafrir_laptop left19:05
RandalSchwartz a branch doesn't really "have" master. :)19:06
you have a branch that is one commit away from the branch you call master19:06
and yes, you can rebase that commit to a different commit, such as when you've updated master19:06
I don't recall the term "floating branch" being used within git before19:07
perhaps that's a term from a different SCM19:07
felipec RandalSchwartz: a branch points to a commit, right? so I think it's reasonable to assume a branch has in it all the commits parent to that commit19:07
johan-s joined19:07
RandalSchwartz well - that's not the terminology we use19:08
a branch is a name for a commit19:08
not the parentage of it19:08
the *commit* knows its parentage19:08
but that's nameless at that point19:08
it's just "the parent(s) of a commit"19:08
so in git a branch is an endpoint, not a line19:09
koke joined19:09
RandalSchwartz simply a name for a commit of interest19:09
bdiego left19:09
RandalSchwartz that's why it's cheap and frequent to create and delete "branches"19:09
those are simply "commits of interest at the moment"19:09
cardioid left19:10
cardioid joined19:10
aggiejy joined19:11
felipec RandalSchwartz: yeah, I know that a branch is a ref, but a "branch" in english means something that deviates from the trunk19:12
adamm joined19:12
snailrails left19:13
bdiego joined19:13
felipec RandalSchwartz: in the design it makes sense to threat a branch just like a ref to a commit19:13
_zack joined19:13
RandalSchwartz well - you're also presuming that there's a "trunk" then too19:13
ckoehlerwecbot19:13
RandalSchwartz but there's nothing special about the letters "m a s t e r"19:13
at all19:14
they're all completely interchangable as far as git cares19:14
jengelh shows RandalSchwartz the trunk19:14
RandalSchwartz it's just a bunch of named commits, ready to accept a new commit on top of them19:14
pasky (though actually, "master" should've been called "trunk" ;))19:14
RandalSchwartz perhaps19:14
jengelh it should not19:14
felipec RandalSchwartz: I know that, it can be "trunk" or "main", or whatever19:15
jengelh pasky: the git inquisition will squash any svn19:15
pasky it's just that it's nicer word :)19:15
felipec but if branches are not meant to be treated as master then why call them that way?19:15
why not heads?19:15
jengelh they are, actually, heads.19:15
see refs/heads/19:15
RandalSchwartz this is why I'm telling you this19:15
it's just a bunch of heads19:15
jengelh a hydra!!19:16
kevwil left19:16
RandalSchwartz "branch" in git doesn't mean what "branch" means in other SCM19:16
I think I *started* with that statement19:16
felipec jengelh: yeap, exactly19:16
wecbotckoehler19:16
RandalSchwartz why is it taking you so long to understand. :)19:16
jengelh then19:16
should not we s/branch/head/g all over the git documentation, to avoid this confusino?19:16
RandalSchwartz no - we just need to beat people up who come into #git :)19:16
jengelh RandalSchwartz: Confucious says violence is not a solution19:17
pasky I think the branch concept is actually reasonably good approximation of the head concept19:17
felipec RandalSchwartz: I understand that a branch is a head, so I'm asking: why name it head instead of branch?19:17
er, the other way around19:17
RandalSchwartz Confuscious say - "I'm dead! Why people still listen?"19:17
koke left19:18
pasky (or rather, you can define something that's intuitively a branch if you have 2+ heads ;)19:18
but it's all just play with words19:18
aggiejy left19:18
jengelh but we ain't playing scrabble19:18
RandalSchwartz I'm not sure what your question is felipec?19:18
I'm describing how it works19:18
using the terminology within git19:18
pasky felipec: are you proposing some change in the documentation? or something else?19:19
RandalSchwartz if you want to cloud those names with other notions, feel free to be confused at your leisure.19:19
felipec pasky: no19:19
RandalSchwartz I will not share responsibility for your confusion. :)19:19
pasky felipec: then I'm lost too19:20
RandalSchwartz local branch = a name under .git/refs/heads naming a given commit as a place that will accept new commits19:20
Wraithan left19:20
murmel left19:20
RandalSchwartz remote branch = a name under .git/refs/remotes tracking commits named on remote repos19:20
felipec all I'm saying is; internally a branch is a head, right? So why name it branch? A branch implies a series of commits, well, because from a head you can find the branch, so it doesn't matter how it's handled internally, you can find the branch (the series of commits)19:20
Ilari Branches in Git can be nonlinear.19:21
RandalSchwartz felipec - it's because it *almost* acts that way19:21
but if you think of it as *only* acting that way, you limit your understanding19:21
git maintains a directed graph of commits19:21
some of those commits are interesting19:21
we call those "branches"19:21
some of those branch heads have roughly linear parents19:22
you could casually call that a "branch", but that's not precise19:22
lea_w joined19:22
RandalSchwartz and limiting your thinking to that will confuse you when we talk about "lightweight" or "topic" branches.19:22
or rebasing. :)19:22
does that help?19:22
the parent of a commit that we call "master" is not on any "branch" necessarily19:23
it's just the parent of a commit. :)19:23
so the names really do apply only to the heads.19:23
felipec Ilari: right, s/series/bunch/19:23
johnw joined19:23
quabbles left19:24
felipec RandalSchwartz: I know how things work internally, I know what a ref is, and what a symbolic ref is, why branches are cheap, and why topic branches are a good idea19:25
RandalSchwartz then you should easily accept that "branch" means "head", and move on. :)19:25
felipec RandalSchwartz: when somebody is introduced to git, he doesn't *need* to how what a branch really _is_, just what a branch _means_19:27
xkr47 left19:27
felipec RandalSchwartz: sure, it helps to know about refs and all that stuff, but that's not required19:27
pasky when somebody is introduced to version control, I believe "alternative line of development" is sufficient definition19:28
for a layman :)19:28
Sonderblade joined19:28
Ilari And looking at POV of "light cones" from SR, it can also be defined as "alternative history".19:29
RandalSchwartz SR?19:29
ElAngelo joined19:29
ElAngelo ! [rejected] master -> master (non-fast forward)19:29
when i get this...19:29
what does it mean?19:30
Ilari ElAngelo: Did you rebase, amend or filter-branch carelessly?19:30
ElAngelo no19:30
Ilari ElAngelo: Maybe do 'git fetch oriign19:30
felipec RandalSchwartz: for example, if you use monotone, do you really need to know that a branch is a revision cert, and what is a revision cert? that multiple developers can set different key values for the same cert and so on?19:30
Ilari ElAngelo: Maybe do 'git fetch origin' and 'gitk master...origin/master' to investigate?19:30
RandalSchwartz I can't answer that, not being a monotone user19:30
but if it's important to the model, then yes, I need to know19:31
and I think coming into git thinking "branch" means "CVS branch" destroys good practices19:31
Ilari At least CVS actually had "branches"... :-)19:31
georgyberdyshev joined19:31
gberdyshev_ left19:31
georgyberdyshevgberdyshev_19:32
RandalSchwartz what tool generated that message, ElAngelo?19:32
I don't recognize it19:32
is that the output of git show-branch?19:33
felipec googles for git jargon19:33
RandalSchwartz google for gogopuffs!19:33
felipec I can't find a glossary of git jargon, just that the "GitSurvey2007" said "Less jargon", "Try to avoid jargon"19:35
RandalSchwartz yeah - always a good goal. rarely achievable in any discipline19:36
ElAngelo RandalSchwartz: just a git-push19:36
git 1.5.619:36
RandalSchwartz imagine if two doctors said "you know, the bone that's just above the knee, ahh - push19:37
ElAngelo git push ssh://elangelo@foo-projects.org/var/git/lunar/moonbase.git master:master19:37
RandalSchwartz yeah - pushes must be fast forward19:37
ElAngelo ?19:37
RandalSchwartz you need to update your local branch first19:37
pasky felipec: Documentation/glossary.txt could give a good general idea?19:37
ElAngelo i just did a git pull19:37
RandalSchwartz so that your commit is based on the current head of the remote19:37
ElAngelo there is nothing19:37
hmmm19:37
RandalSchwartz ignore that19:37
ElAngelo now it craps out on git-pull as well19:37
RandalSchwartz is your current commit you want to push a fast forward of the remote?19:38
ElAngelo i don't understand what a "fast forward" is19:38
Ilari ElAngelo: 'git pull ssh://elangelo@foo-projects.org/var/git/lunar/moonbase.git master'?19:38
ElAngelo i'm coding... not git'ing19:38
RandalSchwartz when you're adding commits to the end of a commit19:38
felipec branch: A "branch" is an active line of development. The most recent commit on a branch is referred to as the tip of that branch.19:38
RandalSchwartz ElAngelo . if the remote has commits a-b-c19:39
and you have a-b-c-d-e-f19:39
then it's a fast forward19:39
ElAngelo ah19:39
ok19:39
i get it19:39
RandalSchwartz but if the remote has a-b-c-1-2-319:39
and you have a-b-c-d-e-f19:39
then f is not a descendant of 319:39
felipec pasky: thanks ;)19:39
_zack left19:39
RandalSchwartz so you can't push19:39
you need to fetch and rebase19:39
or merge19:39
ElAngelo ok19:40
now it worked19:40
thnx19:40
at least i understand why now :)19:40
RandalSchwartz bows19:40
RandalSchwartz hits head on table19:40
RandalSchwartz ouch!19:40
jengelh pasky: where to dump my files?19:40
stillLotR joined19:43
mikearr joined19:47
daaku joined19:48
emachado left19:48
vasudeva joined19:49
LotR left19:49
vasudeva i've just done an accidental 'git reset --hard' from my bash history. can i undo that?19:49
Eridius|work no19:50
vasudeva damnit19:50
emachado joined19:51
thiago you only lost your uncommitted changes19:52
ckoehlerwecbot19:53
snailrails joined19:53
xkr47 joined19:54
wecbotckoehler19:55
Bombe Hmm... git-svn is segfaulting on one machine but not on another. Both machines have identical versions of git, svn, and neon installed. The only difference I can think of is the 32/64 bit issue.19:56
Is there any other, more sensible, explanation for that? :)19:57
thiago MacOS X?19:57
Ilari Bombe: Segfaulting on clone? Git configuration?19:57
rtomayko joined19:57
Bombe Both machines run Gentoo, segfaulting on fetch.19:57
thiago build everything in debug mode and valgrind19:58
Bombe Well, only one machine segfaults on fetch, the other runs perfectly fine.19:58
thiago, that’s the “I don’t really care” answer, isn’t it? :) I remember a thread on the git-list about that problem and even people that were a lot more proficient in perl than me could not find the problem, as it seems.19:59
So I’m a bit hesitant.19:59
nbrunson vasudeva: read http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#recovering-lost-changes, I don't know if it will really help in your case, but you could play around with what they talk about in this section.19:59
thiago Bombe: valgrind will tell you where the problem is20:00
it could be perl or svn or git20:00
freelock ok, now I'm really confused...20:00
thiago more likely svn or neon20:00
Bombe So I need to rebuild them all, I guess?20:00
Hmm hmm...20:00
freelock I've created some bare repositories using git svn to clone the source repositories...20:00
Got 3 different projects I'm mirroring, but only one is actually getting new updates with git --bare svn fetch20:01
the other two have up to ~20 revisions that haven't been fetched, but git --bare svn fetch doesn't get them...20:01
Bombe Okay, crap.20:02
It’s something in my config, as it seems.20:02
SRabbelier left20:02
freelock If I go to a repo with a working copy, git svn rebase gets them just fine20:02
Bombe git-svn fetch runs fine with a freshly created user.20:02
Damn.20:02
sverrej joined20:02
Ilari It could even be something in SVN config... :-/20:02
Eridius|work perl version? version of libraries? maybe it's the svn libs and the swig bindings?20:03
Bombe Okay, removing ~/.subversion did not change a thing...20:04
vasudeva left20:04
Ilari And hopefully there aren't any libs installed in home directory of that user... Library version incompatiblities can cause all sorts of trouble...20:04
k0001 left20:06
k0001 joined20:06
thiago Bombe: try stracing20:06
maybe it will hint to where the problem is20:06
Bombe No, strace did not help, just a bunch of munmaps before the SIGSEGV.20:07
Also, ~/lib does not contain anything of neon, svn, or git.20:07
zacharyc left20:09
aroben left20:09
aroben joined20:10
SRabbelier joined20:10
thiago gdb or valgrind then20:10
try valgrinding anyways, maybe it shows something useful20:10
eikonos joined20:11
pasky jengelh: huh?20:12
lloop joined20:14
eikonos left20:14
lloop how do i import a local repo to a remote repo?20:15
I'm trying to convert from svn. git-svn pulled down changes and I have a git repo setup20:15
eikonos joined20:15
Pieter Ah, I found something better than git20:17
Dioblo 3 \o/20:17
CodeOfficer left20:18
seanius left20:19
snailrails left20:20
elight joined20:20
seanius joined20:20
felipec Pieter: better? you should integrate them :)20:21
Pieter git-whirlhi20:22
git-whirlwind :)20:22
sharp15 joined20:22
Bombe Hmm, now it doesn’t even segfault on a fresh clone of another project so I guess the repository I’m trying to git-svn-fetch into is somehow b0rked.20:23
Fullmoon left20:23
stillLotRLotR20:23
ElAngelo Your branch is ahead of the tracked remote branch 'origin/master' by 9 commits.20:23
emachado left20:23
sharp15 i accidentally added more files than i wanted to (using git-add). i wanted to put a commit message for each file. no commit has been done. is it simple to undo this or not?20:23
ElAngelo what does this mean?20:24
Ilari Not just Neon, SVN or Git related stuff... Perl related stuff might break it also (actually pretty much if it loads any badly built library from there)...20:24
ElAngelo: You have 9 commits you haven't pushed into origin yet...20:25
ElAngelo hmmm20:26
awkward20:26
then why doesn't git-push reveal that to me?20:27
Ilari ElAngelo: Was that one push one-off as you put full URL there?20:27
ElAngelo $ git-push-master20:27
Everything up-to-date20:27
$ cat ~/bin/git-push-master20:27
git push ssh://elangelo@foo-projects.org/var/git/lunar/moonbase.git master:master20:27
felipec sharp15: git status tells you what to do20:27
Ilari ElAngelo: 'git push origin'?20:27
ElAngelo $ git push origin20:27
Everything up-to-date20:27
ketralnis_ joined20:28
felipec sharp15: (use "git reset HEAD <file>..." to unstage)20:28
Ilari ElAngelo: Maybe try 'git fetch origin'?20:28
Cacher joined20:28
Ilari ElAngelo: Using URLs to refer to repositories which also have nicknames (like 'origin') is not recommended.20:28
Cacher so I am on master branch, I make a couple of changes, don't add or commit yet, and I decide that these changes I just made could go on a new branch. . . how is this done?20:29
ElAngelo normally i only use full urls20:29
Sho_ left20:29
thannoy_ joined20:29
Ilari ElAngelo: Full URLs are pretty much only for one-off operations and for registering remote repo nicks...20:30
ElAngelo: And also for communicating to others...20:30
ElAngelo i still prefer it honestly20:30
sharp15 felipec: thank you. i hadn't really understood what that did.20:30
ElAngelo i just have a bunch of scripts that i should use20:30
jordi_bunster joined20:30
felipec sharp15: perhaps a git-unstage command would make sense, I might do write it sometime :)20:31
Yuuhi left20:31
Bombe Cacher, if you haven’t committed them yet, just create a new branch with "git branch <new-branch>", your changes will be left in the working tree and you can commit them to the new branch.20:31
Ilari ElAngelo: That it displayed that message about being 9 commits ahead was apparently git getting confused because one pushed by URL instead of by nick...20:32
Cacher thanks Bombe, i thought that would error20:33
Sho_ joined20:33
thannoy left20:33
Bombe Cacher, it would only refuse to switch branches if the new branch already exists and already contains the files you changed.20:33
Cacher, oh, you need to "git checkout <new-branch>" after creating it, sorry. Forgot that. :)20:34
jacobat joined20:35
l0verb0y left20:36
noTV joined20:37
dasil003 joined20:38
paakku Bombe: there's also git checkout -b which creates the branch and checks it out right away.20:39
Bombe paakku, indeed there is.20:40
Didn’t think of that.20:40
dasil003 Can anyone tell me the proper way to `git reset --hard -- path/to/file`?20:41
Ilari dasil003: 'git checkout HEAD -- path/to/file'.20:41
dasil003 thanks20:42
ketralnis left20:43
sergiodj left20:45
xkr47^ joined20:45
xkr47^ left20:46
thannoy_ left20:46
|Ryan52 joined20:49
janm left20:49
vbgunz left20:49
|Ryan52 I have a directory mirrors/debian that is under revision control using git. I want all of mirrors/ to be. How do I do that?20:50
bloweryblowery`afk20:52
thiago keeping the same repository?20:53
|Ryan52 ya.20:53
thiago cd mirrors/debian; mkdir debian; mv * debian; mv .git ..; cd ..; git add *; git commit20:54
^Beket| left20:54
thiago oh, you will want to move debian/debian back to debian before doing the git add20:54
|Ryan52 ya, I get it. I was just wondering if there was some cool git way.20:55
thiago this is it20:55
there's a more complex way but it's unnecessary pain20:55
|Ryan52 oh.20:56
p4tux left20:59
p4tux joined21:00
CIA-2 left21:00
cannonball left21:04
Fullmoon joined21:05
chrisb joined21:05
CIA-2 joined21:06
raalkml joined21:08
felipec left21:08
lorandi left21:09
Eridius|work left21:09
blowery`afkblowery21:09
lwhacker joined21:10
csc` left21:12
d0k left21:13
ijcd joined21:14
elight left21:14
shd joined21:15
csc` joined21:15
d0k joined21:15
scrooloose joined21:18
Eridius|work joined21:18
Sonderblade left21:20
lloop left21:21
Eridius|work left21:22
Eridius|work joined21:23
cncfanatics left21:24
sharp15 left21:25
peritus_ left21:25
SRabbelier left21:25
peritus_ joined21:26
clairvy joined21:26
SRabbelier1 joined21:26
SRabbelier1SRabbelier21:26
foca joined21:28
artisonian joined21:28
rdavila left21:29
SRabbelier left21:30
ketralnis_ left21:30
rdavila joined21:30
SRabbelier1 joined21:30
SRabbelier1SRabbelier21:30
ketralnis joined21:30
jordi_bunster left21:31
elliottcable left21:32
Eridius|work_ joined21:33
kraymer_ joined21:34
trochala joined21:34
yatiohi joined21:34
yatiohi left21:35
lea_w left21:35
|Ryan52 left21:37
peritus__ joined21:40
Eridius|work left21:41
Eridius|work_Eridius|work21:41
rdavila left21:41
kraymer left21:41
alegscogs joined21:42
krawek left21:45
peeja joined21:45
plopix was "git push --mirror" broken in 1.5.4.3?21:45
vbabiy left21:45
peritus_ left21:48
Ilari plopix: No idea. What kind of 'breakage' are you seeing?21:48
SuttoL_ left21:48
krawek joined21:49
trochala left21:51
nbrunson left21:52
SuttoL joined21:52
ebel joined21:53
kumbayo left21:55
eMBee good morning21:56
peeja_ joined21:57
peeja left21:57
raalkml left21:58
plopix Ilari: I am getting the help page if I add -v21:59
aroben left22:01
aroben joined22:01
eMBee git clone --no-hardlinks does not do what is expected if the source is itself a shared clone.22:03
krh left22:03
eMBee how can i make a clone that is not shared from a shared repo?22:03
eMBee is now faking it by running ssh through localhost22:03
vmiklos why not file:///?22:03
eMBee hmm?22:04
file:/// as opposed to just the path?22:05
Pieter yes22:05
eMBee ok, i didn't know about that option22:05
and even if i knew i would not have thought that this would make a difference22:08
Ademan left22:09
kraymer_ left22:10
eMBee how much of git depends on perl?22:10
i just installed git on the xo which does not have perl installed (and i forced rpm to ignore the depencendy on perl)22:11
RandalSchwartz the XO?22:11
git-svn needs perl22:11
eMBee the olpc project22:11
RandalSchwartz I think that's the only part of git that left22:11
I know what XO is :)22:12
just amazed you're using one22:12
eMBee ah, heh22:12
RandalSchwartz the XO has Squeak too22:12
queso left22:12
eMBee nods22:12
RandalSchwartz so 100K new kids now have exposure to Smalltalk22:12
this is good22:12
eMBee has been playing with squeak already a few years ago, teaching some kids. unfortunately i could not keep up with them so they lost interest22:13
eMBee git on the xo is 1.5.3 and it has a perl dependency on git-core22:14
ph^ left22:14
paakku git-relink and git-add--interactive are in Perl22:14
eMBee but git-svn is extra, so maybe that dependency is a bug22:14
paakku gitweb too22:16
eMBee ok, but gitweb should also be an extra package22:16
paakku and many tests and contribs and steps in the build system22:16
bentob0x left22:16
peritus__ left22:17
paakku hm, there is @@PERL@@ in git-bisect.sh too22:17
Pieter who pays $59 for a subversion client :/22:17
Arrowmaster left22:17
Arrowmaster joined22:18
eMBee ok, the xo is prepared to do some offline development while traveling. time to pack and leave22:20
Arrowmaster left22:21
njal joined22:24
njal when I do "git reset --hard HEAD" in a branch, git status is supposed to be empty?22:24
deavidsedice left22:24
paakku there might be files that are not in the index; IIRC git reset --hard does not delete those, but you can get them with git clean22:25
cardioid That might not affect untracked files22:25
What paakku said22:25
gebi_gebi22:25
njal hmm.. ok, because I changed branches from my branch to master and back again, and got a ton of files listed under "# Changed but not updated:" when using git status, but nothing shows up for a "git diff"22:27
"git clean -f" didnt seem to do anything either, so now Im completely fumbled and dont know what to do. git diff shows no output at all, but git status gives a huuuge list of all files I've touched in my branch + a few more that has been changed in master during my work on my branch22:29
BabelO left22:30
paakku might that be caused by the clock skipping backwards? possibly git add -u would help?22:31
is that in a local directory or something like NFS?22:32
peeja_ left22:32
njal its over nfs22:33
peeja joined22:33
njal doing a git add -p -u now22:33
csc` left22:34
njal and its basically printing a ton of "diff --git a/.... b/....", but nothing more22:34
and git still puts the files under "changed, but not updated"22:34
gitster try "git update-index --refresh" first. It is never needed but I am suggesting this only for diagnosing what is broken in your environment.22:35
njal seems like its NFS that is borking it for git.. ssh'd to the server I'm mounting it from, and it seems to be ok there22:35
huh.. "git update-index --refresh" ran instantly and it's back to where I was hoping it would be22:36
csc` joined22:36
eikke left22:36
bloweryblowery`afk22:38
_zack joined22:38
njal on second thought, it doesnt seem that update-index had anything to do with it, but going into the server with the nfs share and writing "git status" seems to fix whatever is broken22:40
powr-toc joined22:41
lolage0 left22:43
_zack left22:43
p4tux left22:49
artisonian left22:50
daniel_b joined22:54
insin joined22:55
cousin_it joined22:56
peeja left22:58
juanjoc left22:59
SRabbelier left22:59
clairvy left23:00
slink joined23:01
slink left23:02
njal next (and hopefully last) question of the night: when I've done a successful git rebase, my branch and the remote tracked branche have diverged.. do I just do a git push -f, or is there something more graceful?23:02
pygi left23:03
pygi joined23:03
gitte njal: you avoid pushing rewritten history.23:03
njal so my error was pushing before the rebase?23:04
gitte (IOW: you neither push -f, nor try to play cute games)23:04
njal: well, keep in mind: everybody pulling from you, who pulled what you have now rewritten, will either have a totally bogus merge and eternally have a divergent local copy of your branch, or will have to do a lot of cleanup to do herself.23:05
njal hmm.. well, I was told I could do whatever with my branch by my workmate, and he wanted me to push stuff so he could see what I was up to23:06
gitte But yes, if you tell people that you rebased that branch, and that they should make sure that they rebase their stuff on top of your new version, you can "push -f".23:06
cousin_it left23:06
njal so in this case, the branch is supposed to be just that: complete work in progress23:06
gitte Well, then.23:06
push -f is as graceful as it gets.23:07
johnw_ joined23:08
Fullmoon left23:09
johnw left23:10
johnw__ joined23:10
sbahra "I was wondering if version 1.5.6 would be alright on this. I took a look at 1.5.6.1 and it seems to have introduced a number of bugs in the configure script, causing the relocation of the install to do some odd things. 1.5.6 appears to work correctly though. Please let me know if that sounds reasonable and I'll go ahead with that version."23:11
Is this a known issue?23:11
hpa_ joined23:12
gitster heh, gitte writing in Python --- that's a change ;-)23:13
vbabiy joined23:13
gitte Hey, I have a hard time already ;-)23:13
s/already/&, give me a break/23:13
spearce joined23:14
gitster I am not complaining. Looking forward to another importer from you, this time in Ruby ;-)23:14
hpa_ A feature request: an option to git-apply/git-am to apply a patch to a specified subtree23:14
eternaleye left23:14
hpa_ with patch(1) one just cd's to the subdirectory before applying23:14
I don't think that works with git23:14
ijcd left23:14
gitster Yeah, I've heard that one before. What should be the interface?23:15
gitte gitster: don't tempt me, or you'll end up with an importer in PostScript.23:15
ijcd joined23:15
gitster "git apply -p$n" can chomp leading paths after a/ and b/; but...23:15
hpa_ gitster: How about git {am|apply} --root=foo/bar23:15
charon left23:15
gitster So the assumption/limitation is that everything in that patch is rooted at the same "elsewhere"?23:15
hpa_ Yes23:15
That's the common case23:16
sbahra hpa_, I am not yet this experienced with git. Noting this, how is that different than cherry-pick?23:16
gitte Sort of a "-s subtree"?23:16
sbahra: hpa is working with patches.23:16
sbahra: they are no commits yet.23:16
sbahra ahh23:16
ok23:16
gitster Sounds good. "sed -e '/^diff --git/s|[ab]/|&foo/bar/|' patch | git apply"?23:16
aroben left23:17
hpa_ So in the case of "it apply --root=foo/bar -p2" a hunk with a/baz/quux/xyzzy.c" would be applied to foo/bar/quux/xyzzy.c23:17
gitster: Yup, pretty much; except you have to change the +++ and --- lines and so on23:18
gitster Sounds sane enough and simple enough to explain to the users.23:18
hpa_ :)23:20
gitte Actually, I think that this "-p" takes precedence over "--root" makes the patch harder.23:23
pygi hey spearce :)23:23
spearce hey pygi23:23
nud left23:24
hpa_ gitte: Actually you need *both*23:24
robinr spearce: pls double check that I didn't screw up master (I don't think I did , but...)23:24
spearce robinr: i'll take a peek in a second.23:25
gitte hpa_: sorry, I did not mean precedence.23:25
robinr there were more branches than I'm used to23:25
spearce i've been busy with relocating my domain between servers and half the net caught up today so i just found half my email spread around. yay.23:25
gitte hpa_: I meant "is applied before", but as I am not a native speaker, I cannot express myself.23:25
hpa_ gitte: Ah yes23:25
Yes, and it really does need to work that way23:26
robinr or maybe, not come think of how many I have at work, but then I don't rebase tgere23:26
gitte hpa_: and I am full of sh*t... find_name() must be patched, and you're done.23:26
hpa_ Heh23:26
zenspider joined23:26
ckoehler left23:26
spearce robinr: at least you have my index pack data corruption fix in there. :-)23:27
zenspider what is the git equivalent to: `svn up -r PREV; ...; svn up` ? meaning, I want to back up at least 1 revision, do stuff, and then move forward as normal. The move forward as normal is `git pull`, but that doesn't work if I use `git reset` to do the backing up.23:28
moving by date would be fine too23:28
robinr I've been using jgit to push sometimes now.23:28
johnw_ left23:28
zenspider (all I want to do is simulate having an out of date clone)23:29
spearce robinr: me too actually. been using it a lot at day-job and missing your console password prompt thing. you are right, using awt is damn annoying.23:29
RandalSchwartz you mean you want to commit based on the parent commit of the current upstream head?23:29
robinr impressive work shown23:29
spearce robinr: i think master looks good. i'm diffing it against what i had locally (and expected to see) and it looks good23:29
robinr s/a/23:29
decostop joined23:29
eternaleye joined23:29
RandalSchwartz git checkout -b mywork origin/master^23:30
not sure why you'd want to base on downrev stuff though23:30
spearce most of the push code is zawir's, i just patched in dumb transport support.23:30
the s3 stuff has been nice lately. i'm backing up my server's /etc/ through git to s3, encrypted. yay.23:30
robinr spearce: yes, true23:30
zenspider RandalSchwartz: I'm not committing anything... I'm just rolling back in time to simulate work to be done in a CI system23:30
RandalSchwartz I don't know what CI is23:31
robinr would push over smb be hard?23:31
RandalSchwartz so I can't tel if that would help23:31
mithro joined23:31
spearce robinr: not if we had an SMB client in java, no23:31
robinr i.e. without mounting shares23:31
zenspider RandalSchwartz: continuous integration build/test system23:31
I just want to back up in time N commits23:31
spearce robinr: we have two very different protocols already supported. its only about 200 lines of code for both push and fetch, if we have a library to read/write files for us.23:31
RandalSchwartz N of your comits23:31
or upstream commits23:31
spearce robinr: the S3 code took more because i had to do a full s3 client23:32
georgyberdyshev joined23:32
gberdyshev_ left23:32
zenspider again, I'm not committing ANYTHING, ever... so upstream sounds right23:32
RandalSchwartz since commits aren't linear, N doesn't make sense then23:32
georgyberdyshevgberdyshev_23:32
robinr spearce: jcifs is LGPL23:32
RandalSchwartz given a directed graph of parent commits, what do you want to see?23:32
spearce robinr: so can we link to it with our bsd code? :)23:32
RandalSchwartz since the top-level commit remotely could in fact have N parents23:32
robinr spearce: yes23:33
zenspider they're linear in git log... I don't really care how it is described... I just need to back up23:33
RandalSchwartz they have the illusion of being linear in git-log23:33
zenspider RandalSchwartz: ok. let me descibe it differently... I need to execute SOMETHING such that my checkout will guarantee to do SOMETHING when I do 'git pull'23:33
elight joined23:34
Bryson joined23:34
RandalSchwartz other than create an artificial merge?23:34
robinr we should be able to get the push and pull into IRC or something too :)23:34
RandalSchwartz because that's what pull will do if you have something old checked out23:34
spearce pack files in irc aren't user friendly. base 64 encode them first? :)23:34
RandalSchwartz and that might even conflict23:34
I guess I need to udnerstand your goals better23:34
robinr spearce: bundles?23:35
zenspider RandalSchwartz: what's artificial about it? I thought that was the point of git pull?23:35
RandalSchwartz git-pull is not always a safe operation23:35
no23:35
zenspider how can it conflict if I've NEVER committed anything?23:35
RandalSchwartz in fact, I suggest people stay away from git-pull23:35
spearce robinr: yes, we can support a bundle now. we just can't do it in push, for the same reason C Git doesn't do push to a bundle.23:35
RandalSchwartz pull = fetch + *merge*23:35
gitte robinr, spearce: why not fast-export format?23:35
RandalSchwartz do you really want to merge?23:35
or just fetch, and then check out the latest?23:35
spearce gitte: because we don't need one right now? and we have bigger fish to fry?23:35
insin left23:36
gitte spearce: I thought you wanted to push into IRC... /me shuts up.23:36
zenspider in the case of a clone with zero local commits, does it even matter?23:36
RandalSchwartz Yes23:36
paakku I'm tweaking a script that makes elinks-*.tar.gz. I'd like to give users an easy way to find the commit ID from which the archive was made. I see git-archive can put this info in a pax header; however the tar file needs to contain also generated files that are not in git, so I can't use git-archive directly. I tried adding a similar header with GNU tar but --format=pax makes it also store unnecessary atime info for every file. Then23:36
I tried adding the commit id as .git/HEAD but that broke Debian's git-import-orig script. So I'm thinking the commit ID needs to go in a regular file not in .git/. Is there a conventional name for such a file?23:36
RandalSchwartz again = pull = fetch + *merge*23:36
spearce gitte: i won't stop someone from contributing the code (so long as its reasonably well written), but i want to focus on things like merge that impact most users. i did S3 support because _I_ wanted to use it as a backup solution, and it looked really easy once I had sftp push done, which I did as a proof of concept to show that marek's work was extensible to other protocols.23:36
robinr spearce: we need some negotiations. Maybe easier to do in jabber23:37
spearce (and thus validate his design)23:37
zenspider RandalSchwartz: goal: have some work for the continuous build system to do. At this point, I don't care how.23:37
RandalSchwartz if you create a merge commit, you'll have to commit it23:37
zenspider where a unit of work == a commit23:37
RandalSchwartz imagine the following scenario23:37
(and now to come up with it)23:37
a b c d e23:37
gitte spearce: I think it is nice. But why not use Google App? ;-)23:37
RandalSchwartz where c is actually a merge with x y23:37
so c = y + b23:37
ok23:37
spearce gitte: google app isn't bulk data storage like s3 is. :-)23:37
RandalSchwartz hard to draw linear23:37
now you check out a23:38
build with it23:38
and it's time to pull new work23:38
gitte spearce: but you get some space for free, no?23:38
RandalSchwartz that would be f23:38
but you'll end up with a merge between a + f23:38
gitte spearce: I dream of a gmail backend...23:38
RandalSchwartz because it's not a "fast forward" from a to f23:38
vmiklos gitte: what's the recommended way to check if an sha1 (unsigned char[20]) is set? it's a global variable so i know it's zeroed out till it's not set, but maybe it's still better to use an int is_foo_set helper variable?23:38
proxie joined23:38
agib left23:38
spearce gitte: true, 500M, but you must write python code to talk to the storage layer and bridge the java/c client into it. s3 is a straight http service, with no additional smarts.23:38
gitte vmiklos: is_null_sha() I believe.23:38
RandalSchwartz anyway, what you want is "fetch + checkout latest"23:38
gitte vmiklos: is_null_sha1().23:39
spearce gitte: i actually am waiting for google app engine to support java. then we can run jgit there, and have smart git hosting on their cluster hardware. even if code.google.com doesn't.23:39
robinr well, I'm in another time zone. good night.23:39
RandalSchwartz git fetch; git checkout origin/master23:39
like that23:39
spearce night robinr.23:39
vmiklos gitte: aah, great! :)23:39
spearce thanks for updating master.23:39
RandalSchwartz no PULL23:39
ever23:39
gitte spearce: right.23:39
vmiklos: np23:39
Ilari Pull is handy thing if configured correctly...23:39
zenspider RandalSchwartz: origin/master is the latest, right?23:39
RandalSchwartz it might be23:39
depends on your upstream23:39
and how they are setting things up23:40
ebel left23:40
RandalSchwartz the names are all arbitrary23:40
just saying the default names23:40
go ask your upstream :)23:40
zenspider RandalSchwartz: so how do I checkout 3 previous to origin/master?23:40
elight left23:40
robinr spearce: you might want to try the update site now23:40
zenspider will HEAD~3 work there?23:40
RandalSchwartz "3 previous" doesn't make sense23:40
it's not linear23:40
suppose origin/master is a merge23:40
which parent do you use?23:40
elight joined23:40
RandalSchwartz git maintains directed graphs23:40
robinr left23:41
RandalSchwartz not linear lines23:41
it's like asking "I want the third child directory of /"23:41
doesn't make sense23:41
since / can contain more than one dir23:41
and each of those can contain more than one dir23:41
Arrowmaster joined23:41
drizzd left23:41
RandalSchwartz think "DAG"23:41
k0001 left23:42
EmilMedve left23:42
paakku will it necessarily be dAg if there are grafts?23:42
RandalSchwartz wonders why this is such a hard concept for people to get23:42
CodeOfficer joined23:42
zenspider RandalSchwartz: I'm fine with DAGs, I just think you're mentarbating a scenario I don't need to deal with. The reality is that there IS a linear flow here even if it is collected into a DAG. Hypothetically, yes... Realistically, no.23:43
RandalSchwartz paakku - troublemaker. :)23:43
zenspider To pretend there isn't a flow of time in this repro is useless. I want to check out every commit upstream and test it and report the results... this isn't rocket science.23:44
RandalSchwartz zenspider - i think you have to think of the general though, to keep from making presumptions that *sometimes* will not be true23:44
so that you can come up with a pattern that will always work23:44
paakku oh well, I'll put the commit id in a "git-commit-id" file; I couldn't decide whether the file should be hidden or in all caps, so I guess it should be neither.23:44
d0k left23:44
RandalSchwartz "every" upstream will require doing some sort of node traversal23:44
so work out a strategy for that23:45
depth-first? likely not23:45
pergesu joined23:45
RandalSchwartz so breadth-first, probably23:45
zenspider RandalSchwartz: I'd rather not, honestly. I'd rather have something I can get done today that is good enough. We don't have a clusterfuck development model, so I think it is fine to treat this as linear.23:45
RandalSchwartz then don't ask me. work it out using your own presumptions.23:45
zenspider If we did have branching and merging going on all over the place, I'd understand the need for the extra effort, but we don't23:45
RandalSchwartz I can only speak for how to do it properly23:46
not for your own narrow assumptions23:46
Eridius|work zenspider: by "we don't have a clusterfuck development model" do you mean "we don't use branches"?23:46
RandalSchwartz since I don't know your particular flow23:46
you asked me how to do something with git23:46
I'm answering how to do it with git23:46
zenspider Eridius|work: no, I mean we've got a lot of discipline in how our tree is structured. and how it is merged23:47
RandalSchwartz if you have a particular way of misusing git, then you need to address that within your own thinking.23:47
radarek left23:47
RandalSchwartz but in general, presuming some sort of "linear development" with git for a general tool is likely to smack you full speed into a wall at some point23:47
Eridius|work zenspider: but you are using merges?23:47
RandalSchwartz and I won't help you with that.23:47
zenspider RandalSchwartz: that's a bit presumptuous... I asked the channel what the equivalent of a very basic svn command was.23:47
RandalSchwartz: that's fine. I understand. thanks.23:48
Eridius|work zenspider: but there's no 1-to-1 equivalence23:48
RandalSchwartz it may be that there's no equivalent23:48
zenspider *nod* and I suspected that might be the case23:48
RandalSchwartz it's like asking "what's the equivalent to 'pull back on the stick in my airplane' for a car?"23:48
it's a non-starting question23:48
zenspider the cheapest way for me to do this is to copy off the repo I have and wait a day23:49
RandalSchwartz and presumes a broken view of the world23:49
I was trying to correct that view.23:49
cmarcelo left23:49
RandalSchwartz perhaps you are uncorrectable. :)23:49
foca left23:50
zenspider Eridius|work: I'm doing pulls off of our master currently, but need to be able to "back up" in time so I can test out the latest changes to my script against some units of work (commits)23:50
RandalSchwartz: given your broken metaphor, quite possibly.23:51
Eridius|work zenspider: what exactly do you want to do?23:51
vbabiy left23:51
Eridius|work HEAD~3 will give you the commit 3 down the tree from HEAD, following only the first parent23:51
if you want the 3rd commit down the tree, going purely in date order, try `git rev-list HEAD --date-order -n4 | tail -1`23:52
zenspider Eridius|work: I'd like to back up my repo to a previous state. N commits in git log for example. but do so in such a way that the rest of my script can go unchanged. I'm currently using `git pull` to grab updates from upstream23:52
RandalSchwartz keeping in mind "date order" is expensive23:52
zenspider RandalSchwartz hinted that might be a bad thing to do, but given that this is a read-only depot, I'm guessing that it is still ok23:52
priidu left23:52
Eridius|work N commits in git log? git rev-list -n# | tail -123:53
zenspider expensive is fine... this is bound by CPU on the test side23:53
powr-toc left23:53
powr-toc joined23:53
Eridius|work the real question here is how you want to handle merges when going backwards23:53
zenspider Eridius|work: yes, that identifies it, but I want it to be the current state in the depot...23:54
bryanray left23:54
powr-toc I get an error when I try to do a merge from a remote branch: remote: error: remote: unable to find 9a8d3...remote:23:54
any ideas?23:54
Eridius|work git reset --hard `command to get sha1 here`23:54
zenspider at this stage, I think holding off for a day and doing rsync's might be easier...23:54
Bryson left23:54
zenspider Eridius|work: I've got that currently, but that totally borks a subsequent git pull23:54
Bryson joined23:55
Eridius|work well yeah, because the pull will try and merge23:55
RandalSchwartz and that's why I said "do not do a pull"23:55
Eridius|work well, probably fast-forward23:55
RandalSchwartz and I'll repeat that again23:55
Eridius|work why the hell are you trying to back up and then pull? it doesn't make sense23:55
RandalSchwartz git fetch; git checkout $SHA123:55
your job is to compute SHA123:55
you really *are* untrainable.23:55
since you don't pay attention to the things I'm saying, even when I'm trying to make sense and not just tell you you're off in the deep end.23:56
RandalSchwartz stops trying to teach the pig to sing23:56
zenspider RandalSchwartz: actually, what you missed telling me until now was the git checkout $SHA1 part... since that isn't in the help output it wasn't obvious.23:57
so that'll help, thanks.23:57
RandalSchwartz do I need to scroll back23:57
VVSiz zenspider: don't listen to RandalSchwartz, he's definitely over-complicating things!23:57
RandalSchwartz .... git fetch; git checkout origin/master23:57
dammit said it23:57
pay f'ing attention23:57
read the scroll23:57
it's in there23:57
zenspider RandalSchwartz: quit being a bitch. I can search backwards just fine.23:58
RandalSchwartz so don't say "you didn't say it"23:58
VVSiz if git bisect can effectively bisect between two revisions, then why not check out any revision between those two points23:58
zenspider origin/master is not the same, is it? I even asked and you gave me another non-answer.23:58
RandalSchwartz because it might not be correct23:58
you'll have to ask upstream23:58
and I said THAT TOO23:58
ASK YOUR UPSTREAM WHAT THE LATEST IS23:58
how much clearer do I need to make that?23:58
I've now gone from generic, to a sample specific, with qualifications for why the specific might be wrong23:59
and I've done that twice23:59
powr-toc Any idea why I get the following error when doing a fetch on a remote branch? remote: fatal: remote: unable to get type of object 9a8d39...remote: remote: aborting due to possible repository corruption on the remote side.23:59

Logs Search ←Prev date Next date→ Channels Documentation