| 2007-11-11 |
|
iabervon
| That's very odd. | 00:00 |
| ← dshep left | 00:03 |
|
kelvie
| can you add a fork as a ref to an existing repo? | 00:05 |
|
diacritical
| by fork i think you mean "branch" ? then its already a ref | 00:07 |
|
kelvie
| naw... say repo.git is a fork of git.git | 00:07 |
|
diacritical
| what is a fork? | 00:07 |
|
kelvie
| can I make repo.git a ref inside my existing git.git repo? | 00:07 |
|
| well it's essentially a branch :P | 00:07 |
|
vmiklos
| add repo.git as a remote then you can fetch it | 00:07 |
|
kelvie
| but located elsewhere | 00:07 |
|
diacritical
| anyway with git-push in 1.5.3.5 right now i'm having to git-push each branch explicitly. --all doesnt seem to work | 00:07 |
|
kelvie
| ah.. how dyou add a remote? | 00:07 |
|
| manually? | 00:07 |
|
| (i.e. editing .git/config) | 00:08 |
| → ebel joined | 00:09 |
|
kelvie
| ah git-remote does that | 00:10 |
|
diacritical
| one bad move with git-remote usually means editing manually anway :p | 00:11 |
|
kelvie
| hehe.. yeah | 00:14 |
|
| it seems it won't let me git-pull | 00:14 |
| ← meandtheshell left | 00:18 |
| ← metafollic left | 00:20 |
| → metafollic joined | 00:21 |
|
iabervon
| dia: you're not using --tags, are you? | 00:22 |
|
diacritical
| iabervon indeed i was. *smacks head* of all the combinations I tried, i missed dropping --tags | 00:30 |
|
iabervon
| Right. --tags counts as a refspec. | 00:31 |
| → jkimball4 joined | 00:42 |
| → robfitz joined | 00:51 |
| → ebel_ joined | 00:54 |
| ← ebel left | 00:54 |
| ebel_ → ebel | 00:54 |
| → marcheu joined | 00:57 |
| ← marcheu left | 00:58 |
| → meandtheshell joined | 00:58 |
| ← krawek left | 01:02 |
| ← greendale left | 01:02 |
| ← robfitz_ left | 01:06 |
| ← ShadeHawk left | 01:07 |
| → ShadeHawk joined | 01:08 |
| ← Sonderblade left | 01:11 |
| ← vmiklos left | 01:12 |
| → vmiklos joined | 01:12 |
| ← ShadeHawk left | 01:17 |
| ← devogon left | 01:21 |
| ← mithro left | 01:22 |
| ← diacritical left | 01:22 |
| → FunkeeMonk joined | 01:23 |
| ← meandtheshell left | 01:24 |
| → alley_cat joined | 01:25 |
| ← djpig left | 01:25 |
| → djpig joined | 01:30 |
|
bobesponja
| hey | 01:40 |
| → DrNick joined | 01:44 |
| ← jlh left | 01:45 |
| → jlh joined | 01:46 |
| → dashepar joined | 01:52 |
| ← Ryback_ left | 02:01 |
| ← RobotDeathSquad left | 02:02 |
| → \ask joined | 02:07 |
| ← cmarcelo left | 02:08 |
| → mutex joined | 02:10 |
| → ebel_ joined | 02:20 |
| ← ebel left | 02:22 |
| ebel_ → ebel | 02:22 |
| ← ferdy left | 02:28 |
| → RobotDeathSquad joined | 02:36 |
| → priidu joined | 02:37 |
| ← myrizio left | 02:38 |
| ← HackyKid_ left | 02:43 |
| ← orospakr left | 02:44 |
| ← djpig left | 02:51 |
|
\ask
| I know it's the FAQ of all FAQs, but take this as another vote for "git reset/revert really needs fixing". I can NEVER remember how to just revert a single darn file. | 03:02 |
| ← mutex left | 03:04 |
| → mwalling joined | 03:04 |
|
iabervon
| You mean "checkout"? | 03:05 |
| → mutex joined | 03:06 |
| ← bobesponja left | 03:08 |
|
vmiklos
| \ask did i say i never tried to use git revert for something it's not supposed to? ;) | 03:09 |
| ← ebel left | 03:11 |
| ← alley_cat left | 03:11 |
| ← context left | 03:12 |
| → context joined | 03:12 |
|
iabervon
| I understand people not finding the way to get one file back to the last committed state, but it should be easy to remember than it's neither of the obvious things... | 03:12 |
|
Tene
| iabervon: you mean checkout? | 03:14 |
|
iabervon
| Yeah. When people can't find that checkout does that, they think it's either reset or revert, but think they've forgotten which. | 03:17 |
|
context
| iabervon: git co filename ? | 03:18 |
|
| oh nm | 03:18 |
|
| iabervon: just takes a little time to stray from old habbits. ;) | 03:19 |
|
iabervon
| I still remembered "cvs checkout filename" from way back when, and I'd mostly used arch in between, and never figured out how to do it with arch, so I was not confused. | 03:20 |
|
| I bet if we made it "git retrieve filename", it would be perfectly sensible, and yet drive new users totally mad. | 03:21 |
| ← dashepar left | 03:23 |
| → spearce joined | 03:27 |
| → jhmoore719 joined | 03:31 |
| → bdiego joined | 03:36 |
| ← fdr- left | 03:39 |
| → fdr- joined | 03:40 |
| → orospakr joined | 03:43 |
| → Sonderblade joined | 03:48 |
| ← fdr- left | 03:52 |
| → fdr- joined | 03:53 |
|
mithraic
| Maybe it should be "git oh oops give me the old one" | 03:56 |
| ← jkimball4 left | 03:59 |
| → ramza3 joined | 04:10 |
|
ramza3
| strange task ahead for me. | 04:10 |
|
| I branched a project in subversion and they are several months apart. I was thinking I might use git to actually merge them as opposed to subversion. Does that question even make sense? | 04:11 |
| ← mutex left | 04:12 |
|
arw
| yes it does, i've heard of some people using svk or git as a merge replacement in svn, because svns merge sucks so much. | 04:13 |
|
| but i've never really done that myself. | 04:13 |
|
ramza3
| arw: merge in svn sucks hard | 04:13 |
|
iabervon
| I think so, although I'm not sure how to do svn imports with branches. | 04:14 |
|
ramza3
| actually, I may just remove all the svn stuff and just create two new git projects | 04:14 |
|
arw
| my only experience in subversion was a completely hosed source tree when somebody forced me to work on a windows box with only tortoisesvn installed. | 04:15 |
|
| i really never want to repeat that week, ever :) | 04:15 |
|
ramza3
| I could be wrong (and I have been using svn for 4 years), I consider subversion as a source repository not that good a source control system | 04:16 |
|
| but then again, that applies to CVS and a lot of the other tools out there | 04:16 |
|
iabervon
| If you can get the history, it'll make the merge a whole lot better. | 04:17 |
|
arw
| having the history is always nice. | 04:18 |
|
iabervon
| Although maybe you should just make tar files of each of the latest commits in the branches, and one of the point where they forked, and import each of those into git, in the appropriate organization. | 04:18 |
|
arw
| i would really recommend against that. not for technical reasons, just because you never ever want to throw your development history away. | 04:19 |
| G_SabinoMullane → Z_SabinoMullane | 04:19 |
|
ramza3
| arw: hmm, the git/svn tools are pretty good? | 04:20 |
|
arw
| having that history available opens a bunch of very precious possibilities like bisect you would otherwise not have. | 04:20 |
|
| ramza3: mostly, yes. there are some corner cases, but just give it a try, mostly it will just work. | 04:21 |
| → zapnap joined | 04:21 |
| ← sgrimm left | 04:21 |
|
\ask
| iabervon: yeah, I always think it's reset (because I have learned what revert does), but that I just don't remember which option to use. :-) | 04:22 |
|
ramza3
| arw; hmm, I wonder if there is a svn to git export, keeping the svn information on the initial import into git and then removing it afterwards. I dont plan on using svn after it is into git | 04:22 |
|
iabervon
| After you import into git with "git svn", you can just discard the extra info for the translation. | 04:24 |
| ← fdr- left | 04:26 |
|
arw
| git svn should just import all your commits, the history should look the same as in svn. | 04:26 |
|
tpope
| may want to map those usernames to email addresses though | 04:28 |
| → fdr- joined | 04:28 |
|
ramza3
| all I can do is try it | 04:32 |
| ← Z_SabinoMullane left | 04:42 |
| → jp_n9 joined | 04:44 |
| → mutex joined | 04:54 |
| ← jhmoore719 left | 05:00 |
|
ramza3
| hmm, git-svn doesnt seem to work on local working directories | 05:01 |
|
iabervon
| No, it needs the actual repository, which is what has the history. | 05:02 |
| ← saintdev left | 05:07 |
|
tchan
| git-svn actually needs access to a svn server. A local svn repo has history in it. Most local users don't have their local repos setup to use a local svn server. | 05:09 |
| ← mithraic left | 05:09 |
| → mutex_ joined | 05:11 |
| ← mutex left | 05:11 |
| ← orospakr left | 05:19 |
|
ramza3
| well, I meant some applications can process the data from the .svn working directory. Some dont | 05:21 |
| → orospakr joined | 05:22 |
| mutex_ → mutex | 05:26 |
| ← rkaway left | 05:27 |
| ← bdiego left | 05:28 |
| → rkaway joined | 05:29 |
| → sgrimm joined | 05:35 |
| ← defunkt left | 05:38 |
|
ramza3
| is it possible to run git-daemon without any args, is there a default repository directory git-daemon will look for "/pub/scm"? | 05:42 |
| → mithraic joined | 05:45 |
|
tpope
| it has a --verbose option, why not try it and find out | 05:51 |
|
up_the_irons
| ramza3: i think the default is to use the current directory, but i might be wrong | 05:53 |
| → jhmoore719 joined | 05:53 |
| → mithraic_ joined | 05:54 |
|
iabervon
| Default is to not limit based on path, it looks like. | 05:55 |
| ← kukks left | 06:04 |
| ← mithraic left | 06:10 |
| ← jhmoore719 left | 06:11 |
| → saintdev joined | 06:15 |
| → cehteh joined | 06:20 |
| → mutex_ joined | 06:32 |
| ← mutex left | 06:33 |
| mutex_ → mutex | 06:33 |
| ← mutex left | 06:40 |
| → mutex joined | 06:41 |
|
spearce
| i hate how git makes me work harder at writing the commit message than at writing the code. its too easy to write a *good* commit message, and even easier to find one later to better understand the code. | 07:01 |
|
| spearce just spent like an hour writing a commit message for a 1 line fix. | 07:01 |
|
iabervon
| More useful than writing a long cover letter for a 1-patch series... | 07:01 |
| ← glommer left | 07:05 |
| ← madewokherd left | 07:24 |
| → jerbear joined | 07:29 |
| → SuttoL joined | 07:30 |
| ← priidu left | 07:34 |
| ← Sho_ left | 07:38 |
| → aroben joined | 07:49 |
| → priidu_ joined | 07:55 |
| → male joined | 08:01 |
| ← FunkeeMonk left | 08:04 |
|
bdowning
| spearce: aroundp? | 08:08 |
|
spearce
| yup | 08:08 |
|
bdowning
| Is there any way to quote filenames for the rename and copy commands in fast-import so they can have spaces? | 08:08 |
|
spearce
| use "" with c-style quoting. | 08:08 |
|
| e.g. "" with \", \\, \n to escape. | 08:09 |
|
bdowning
| Ah, excellent. Thanks. | 08:09 |
|
spearce
| at a minimum you need to escape those three (", \ and LF) but otherwise you can dump the raw data into the string. or escape more if you want. it understands a lot of escapes. | 08:09 |
|
bdowning
| Geez, it's right here in the man page too. How embaressing. | 08:10 |
|
spearce
| its also one of the biggest man pages in git. :) | 08:10 |
|
bdowning
| I'm toying with a monotone2git, mostly because I'm bored. It never ceases to amaze me just how slow monotone is. | 08:11 |
|
spearce
| they really haven't improved its speed? i know linus looked at it and rejected it for performance reasons. | 08:12 |
|
bdowning
| Not so much. (caveat: I'm using whatever's in Gutsy, which is two minor versions behind). Pulling the repo for monotone itself took about 15 minutes of cpu time (!) | 08:13 |
|
| I think that is actually much better than when Linus saw it too. | 08:13 |
|
spearce
| i couldn't imagine running the git of today on a 486 with 16M of memory. but git is pretty quick. :) | 08:14 |
|
bdowning
| I think the main problem mtn has is that is was simply designed to have any part of it replaced and hacked on without affecting the other parts. So data goes through three or four translations between database and usage. | 08:15 |
|
spearce
| yea, flexiblity like that will always bite you on performance. | 08:16 |
|
| good for tinkering though. | 08:16 |
| ← orospakr left | 08:19 |
|
bdowning
| I suppose, if you like Boost-heavy C++. I found hacking on Git extremely clean and refreshing, personally, but maybe that's just me. :) | 08:19 |
|
spearce
| no, me too. one of the reasons i hack on git is because its pretty clean and easy. | 08:19 |
| → jerbear_ joined | 08:34 |
| ← jerbear_ left | 08:35 |
| ← samsarin left | 08:45 |
| → tcoppi joined | 08:47 |
| → Odd_Bloke joined | 08:48 |
|
Odd_Bloke
| Hey guys, I accidentally committed to the wrong branch. How can I revert the branch to the state it was in before the commit? | 08:48 |
|
thiago_home
| first, have you already committed to the right branch? | 08:49 |
|
cehteh
| (cherry pick would do that) | 08:49 |
|
Odd_Bloke
| thiago_home: I forgot to create the branch before committing. I have now done so, so the correct branch has the revision. | 08:50 |
| ← tcoppi left | 08:50 |
|
tpope
| git-reset can do it | 08:50 |
|
thiago_home
| ok, so use git-reset to reset your branch to what it should have been | 08:50 |
|
cehteh
| Odd_Bloke: git checkout -b newbranch | 08:50 |
|
tpope
| unless you have great faith in your skills, I'd do git diff HEAD^ > /tmp/my_changes.patch first | 08:50 |
|
cehteh
| wil then create the new branch for you with that commit | 08:50 |
|
| after that you switch back to the old branch with git checkout oldbranch | 08:51 |
|
thiago_home
| tpope: that's why I asked him if he had committed to the right branch first | 08:51 |
|
cehteh
| and do a git reset --hard HEAD^ | 08:51 |
|
| but be careful ..when done wrong you loose the commit | 08:51 |
|
tpope
| really, what would be wrong with git reset --soft HEAD^; git checkout target_branch | 08:52 |
|
Odd_Bloke
| 'git reset --hard HEAD^' has done the trick. | 08:52 |
|
| Thanks guys. :) | 08:52 |
|
tpope
| then you'd get your changes over to the right branch automatically | 08:53 |
|
cehteh
| tpope: maybe .. didnt thought about that | 08:53 |
|
tpope
| grep 'reset --hard' ~/irclogs/freenode/\#git.log|wc -l # 144 | 08:54 |
|
| grep 'reset --soft' ~/irclogs/freenode/\#git.log|wc -l # 8 | 08:54 |
|
| --soft strikes me as almost as useful as hard, I'm just wondering why the former comes up so much more often | 08:55 |
|
thiago_home
| because, I guess, people don't remember the difference between --soft and --mixed | 08:56 |
|
| whereas --hard is easy to remember | 08:56 |
| ← jerbear left | 08:58 |
|
tpope
| I suppose | 09:03 |
|
| git reset --mixed sounds a lot like git rm --cached | 09:05 |
|
halorgium
| tpope: cause --hard is used for removing the commits | 09:05 |
|
tpope
| hard reverts the working tree too though | 09:06 |
|
| generally, if I want to remove the commit, it's because I want to modify it or apply it elsewhere. very seldom do I want to do "discard my work. no really, discard it" | 09:07 |
|
| (soft removes commits too) | 09:09 |
| ← Ademan left | 09:13 |
| → kahmalo joined | 09:17 |
|
kahmalo
| I have PATH="/home/Kalle/prefix/i686-pc-linux-gnu/bin:/home/Kalle/any-arch/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games" and EDITOR="emacsclient --current-frame". /usr/bin/emacsclient does not understand --current-frame but /home/Kalle/prefix/i686-pc-linux-gnu/bin/emacsclient does. Now when I run "git commit" in Git 1.5.3.1, it prepends /usr/bin to $PATH and runs the wrong emacsclient. Is this a bug and has it been fixed | 09:19 |
|
| in a later version? | 09:19 |
|
| The git binaries are in /usr/bin. | 09:20 |
|
spearce
| its a feature. we always force gitexecdir (in your case apparently /usr/bin) to the front of PATH so we can find all of the git plumbing tools. | 09:21 |
|
kahmalo
| If I run git-commit directly it works OK. | 09:22 |
|
| Couldn't you explicitly use $gitexecdir/whatever instead of relying on PATH? | 09:23 |
|
| Or would that again break when running e.g. git-commit directly... | 09:23 |
|
spearce
| not without breaking a lot in the process. so we went with shoving $gitexecdir in the front and suggesting distros set that to a location that isn't /usr/bin, and only installing git into /usr/bin. apparently your distro didn't do that. | 09:24 |
|
kahmalo
| This is Debian but the package is a bit old. | 09:24 |
|
spearce
| what about setting $EDITOR to the right emacsclient path? | 09:24 |
|
| the debian maintainer is relatively active. he's quite responsive to bugs filed against the git package. | 09:25 |
|
kahmalo
| Well I have to set $EDITOR from within ~/.emacs.d/init.el to get sane behaviour and I'd prefer not putting architecture-specific directories there. | 09:26 |
|
| rather rely on $PATH set in .bash_profile. | 09:26 |
| → mithro joined | 09:27 |
|
kahmalo
| http://packages.debian.org/sid/git-core/i386/filelist shows it's being installed in /usr/bin in the latest Debian package too. | 09:28 |
|
| Where is this recommendation about not installing into /usr/bin? | 09:28 |
|
spearce
| apparently the mailing list archives. its not exactly documented in the source tree to use gitexecdir to avoid installing into /usr/bin | 09:29 |
|
kahmalo
| In fact git-1.5.3.4/INSTALL suggests prefix=/usr. | 09:31 |
|
spearce
| well prefix isn't gitexecdir. we default gitexcdir=$(prefix)/bin so i guess we implicitly are suggesting /usr/bin. *sigh* | 09:32 |
| ← iabervon left | 09:39 |
| ← DrNick left | 09:41 |
| → tcoppi joined | 09:43 |
| → HackyKid joined | 09:44 |
| → smartbhai joined | 09:45 |
|
smartbhai
| hello people im new to git, how can u use git such that it doesnt hang when the network connection is lost | 09:46 |
|
thiago_home
| by using it | 09:47 |
|
| since it doesn't use the network unless you're pushing or pulling, it couldn't care less about the network | 09:47 |
| → nessundorma joined | 09:49 |
|
smartbhai
| im using git-clone | 09:49 |
| → csc`` joined | 09:49 |
|
thiago_home
| ok, once it's cloned, the network isn't used | 09:49 |
| → aroben_ joined | 09:51 |
| ← aroben left | 09:58 |
| aroben_ → aroben | 09:58 |
| ← csc` left | 09:59 |
| → Sho_ joined | 10:02 |
| → Oejet joined | 10:02 |
| → Ademan joined | 10:06 |
| → devogon joined | 10:06 |
|
smartbhai
| hi im totally new to git, im using this git-clone git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git when i start downloading files the git speed gets reduced ( n if i kill the instance and start again it downloads all the files againaturally) and it doesn respond after that | 10:11 |
|
| hi im totally new to git, im using this git-clone git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git when i start downloading files the git speed gets reduced ( naturally) and it doesn respond after that.. if i kill the instance and start again it downloads all the files again | 10:11 |
| → gitte_ joined | 10:16 |
| → pennyk_ joined | 10:16 |
|
gitte_
| spearce: still awake? | 10:16 |
|
spearce
| yup | 10:16 |
|
gitte_
| wow | 10:16 |
|
cehteh
| :) | 10:17 |
|
gitte_
| spearce: so will this week also be too much work for you? | 10:18 |
|
spearce
| well, i got quickfetch out. again. :) | 10:19 |
|
gitte_
| Heh. | 10:19 |
|
| I did not have time to review it, at all. | 10:19 |
|
spearce
| but maybe things will slow down a bit for me. at least i'm paid by the hour. | 10:19 |
|
gitte_
| Nice thing. | 10:19 |
|
spearce
| good catch on the free thing though. i totally missed taht. | 10:19 |
|
gitte_
| Don't remember. | 10:19 |
|
spearce
| "a = NULL; free(a)" is a really bonehead mistake. | 10:20 |
|
gitte_
| Ah, but that was just a swap. | 10:20 |
|
| I do that all the time. | 10:20 |
|
cehteh
| mhm | 10:20 |
|
| cehteh does that only when a is intended to be reused | 10:21 |
|
gitte_
| ;-) | 10:21 |
|
spearce
| othewise you don't bother to free the value in a ? :) | 10:22 |
|
gitte_
| RAM is cheap ;-) | 10:22 |
|
cehteh
| meant the null'ing | 10:22 |
|
spearce
| tell that to sun, whose $#@!*@#$(@!#(! jvm won't start when you have 7G free and only need 64M. | 10:22 |
|
gitte_
| Hehe. | 10:22 |
|
| I _know_ that problem. | 10:22 |
|
cehteh
| haha signed size crap? | 10:22 |
|
gitte_
| But didn't they solve that in Java6? | 10:23 |
|
spearce
| this is java 6. | 10:23 |
|
| f'ing pile o' crap that jvm. | 10:23 |
|
gitte_
| cehteh: no, it is a totally bogus 64/32-bit problem. | 10:23 |
|
cehteh
| sure | 10:23 |
|
gitte_
| At least it's GPL. | 10:23 |
|
| Which is something. | 10:23 |
|
spearce
| have you read the source to the vm? its uh, not pretty like git. | 10:23 |
|
gitte_
| I have read parts of them. | 10:24 |
|
| But git did not exist by then, so I was not spoilt. | 10:24 |
|
cehteh
| mhm .. | 10:24 |
|
| cehteh looks up the source of the yap prolog vm .. just for reference :) | 10:24 |
|
cehteh
| http://www.pipapo.org/gitweb?p=yap-cvs;a=blob;f=C/absmi.c;h=d0c50b6194a78a6f70685299f1b88e94f4aa1af3;hb=43cb20694d5c600f317eb2e2e5604034b1382dc7#l543 | 10:25 |
|
| ... which line does that function end? :) | 10:25 |
|
| cehteh runs | 10:26 |
|
spearce
| i want whatever they were smoking when that was written. | 10:26 |
|
gitte_
| Hehe. | 10:26 |
| → |ODIN| joined | 10:26 |
|
cehteh
| well .. if you know its history it has some reason | 10:26 |
|
Ilari
| I suppose it is worse than that 900-line switch statement I wrote once... | 10:26 |
|
spearce
| heh. | 10:27 |
|
gitte_
| What was it that Theo wrote the other day? "You must have been smoking something very mind altering, and you should share it." | 10:27 |
|
spearce
| i once worked with a guy who wrote a perl script to generate a b-tree in if/else statements. | 10:27 |
|
| to match a value in a range 0-16384. | 10:27 |
|
cehteh
| it was once translated from asm to C .. in the mid 80's ... and it is the fastest prolog vm out there | 10:27 |
|
spearce
| he choked when i told him a switch would have been nicer. | 10:27 |
|
cehteh
| it needs some love and refactoring .. but well as all such projects its sparse of developer resources | 10:27 |
|
gitte_
| cehteh: probably automated translation... | 10:27 |
|
cehteh
| gitte_: nope .. by hand :) | 10:27 |
|
gitte_
| cehteh: oh. Not fun. | 10:28 |
|
| spearce: you shoulda told him what is the only sane thing: lookup tables. | 10:28 |
|
| spearce: in 16-bit you need half a segment for that ;-) | 10:28 |
|
spearce
| this was java. all bets were off anyway on memory/perforamnce. :) | 10:28 |
|
gitte_
| At that time, yeah. | 10:29 |
|
spearce
| he did this huge nasty if/else thing to avoid a virtual function call. | 10:29 |
|
gitte_
| Until kaffe kicked their but. | 10:29 |
|
spearce
| i was like "wtf!" | 10:29 |
|
gitte_
| But that was not mid 80s | 10:29 |
|
HackyKid
| i think even java has a switch that uses a jump table or something | 10:29 |
|
spearce
| yea, it does | 10:29 |
|
| you should have seen him trying to debug the inner part of the output file. "column 19,890, line 200,019" ... :) | 10:30 |
|
HackyKid
| hehe :-) | 10:30 |
|
gitte_
| Aaargh. I'm almost ready to write a patch to builtin-add which automatically calls git-remote when the file "remote" does not exist and you say "git add remote"! | 10:31 |
|
swetland
| hacky: java provides two switch opcodes, one which is a sorted value/addr table, one which is a direct indexed table of addresses | 10:31 |
|
gitte_
| spearce: *lol* | 10:31 |
|
spearce
| gitte: i do that a lot and expect git to dwim... | 10:31 |
|
HackyKid
| swetland: yeah, i thought so :-) | 10:31 |
|
gitte_
| Is git.kernel.org down or what? | 10:32 |
|
swetland
| timing out for me | 10:32 |
|
gitte_
| Yeah, me too. | 10:33 |
|
|ODIN|
| Hi there, I need some help: Trying to commit with GIT, but it says that I have suspicious path lines, and then it lists me some just changed files saying that there are trailing white spaces, while actually there aren't. It refuses then to commit. What should I do in this case? | 10:33 |
|
gitte_
| Windows? | 10:33 |
|
|ODIN|
| no, Gentoo | 10:33 |
|
swetland
| I need to figure out how to get send-email to do something sane | 10:33 |
|
gitte_
| Seems it automatically activates your hook. | 10:33 |
|
swetland
| it is currently the bane of my existence ^^ | 10:33 |
|
gitte_
| |ODIN|: try chmod a-x .git/hooks/* | 10:33 |
|
|ODIN|
| yes, it works!! :) | 10:34 |
|
| Thanks.. could You explain me quickly what happened? I'm stil at the beginning with this | 10:34 |
| → greendale joined | 10:34 |
|
gitte_
| |ODIN|: there are quite a number of hooks in git. | 10:35 |
| → iXce` joined | 10:35 |
|
gitte_
| These are small scripts that get called whenever you do a certain action. | 10:35 |
|
| Something like pre-commit. | 10:35 |
|
|ODIN|
| i see | 10:35 |
|
gitte_
| Those scripts live in .git/hooks/ | 10:35 |
|
| They are activated by chmod +x | 10:36 |
|
| I have the problem on a network share, mounted via cifs. It has problems with keeping track of the +x bit, and so I regularly do "rm -rf .git/hooks" on that share. | 10:36 |
|
|ODIN|
| is a check on the trailing whitespaces so essential? | 10:37 |
|
gitte_
| It is convenient, since those things invariably tend to get fixed. In one monster commit. | 10:38 |
|
|ODIN|
| Would be bad to delete the script which chechs them? I think it happens quite often to forget a whitespace somewhere, without having troubles from theat | 10:38 |
|
| I see | 10:38 |
|
gitte_
| I do not recall off the top of my head where the templates are stored, but you'd have to change it in .../templates/hooks/. | 10:39 |
|
HackyKid
| gitte_: btw, i removed generated stuff from the msys-perl thingy, and split up their changes into seperate patches: | 10:39 |
|
| Import interesting stuff from perl-5.6.1-MSYS-1.0.11-src.tar.bz2. - 97 files changed, 2557 insertions(+), 748 deletions(-) | 10:39 |
|
| Import .def files from perl-5.6.1-MSYS-1.0.11-src.tar.bz2 - 19 files changed, 3496 insertions(+), 0 deletions(-) | 10:39 |
|
| Import test changes from perl-5.6.1-MSYS-1.0.11-src.tar.bz2 - 80 files changed, 1652 insertions(+), 361 deletions(-) | 10:39 |
|
| Import CYGWIN-PATCHES/ from perl-5.6.1-MSYS-1.0.11-src.tar.bz2 - 166 files changed, 68875 insertions(+), 0 deletions(-) | 10:39 |
|
| you only need the first one to compile | 10:40 |
|
gitte_
| HackyKid: oh darn, I meant to send you a remark on what I did Friday night... | 10:40 |
|
HackyKid
| not sure what the .def files are for.... they don't seem to be used | 10:40 |
|
| oh? :O | 10:40 |
|
gitte_
| In CYGWIN-PATCHES, there is a patch called "perl-5.6.1-2.patch". | 10:40 |
|
| Appears to me that the diff after applying that is pretty small. | 10:41 |
|
| But I think it did not compile. | 10:41 |
|
| So your work is definitely not in vain. | 10:41 |
|
| spearce: I'll hold off that builtin-add patch until I completely built in git-remote. | 10:42 |
|
HackyKid
| i also fixed it so you don't need to overwrite your libc.a and libm.a | 10:42 |
|
gitte_
| Very good! | 10:42 |
|
| How? | 10:42 |
|
HackyKid
| (well, actually that was just a cherry pick from my previous attempts) | 10:42 |
|
| there's a "fix issues linking with -lm" there that prevents the need for this overwriting | 10:43 |
|
gitte_
| Ah. | 10:43 |
|
| BTW it's a really cool thing that you set up something quilt-like. | 10:44 |
|
HackyKid
| :-) seemed easiest at the time | 10:45 |
|
gitte_
| And indeed it is, but not only that time. | 10:46 |
|
HackyKid
| yeah, indeed | 10:46 |
| → meandtheshell joined | 10:47 |
|
swetland
| is there some way to generate the mail bodies that git-format-patch + git-send-email would generate without actually sending the email? | 10:47 |
|
spearce
| you mean git-format-patch ? :) | 10:47 |
|
gitte_
| --mbox? | 10:48 |
|
swetland
| git-format-patch doesn't put the author's From: line in the "body" of the generated message | 10:48 |
|
gitte_
| That's news to me. | 10:48 |
|
spearce
| oh. | 10:48 |
| → ferdy joined | 10:48 |
|
spearce
| if the author isn't you it leaves the from in the mbox position. | 10:48 |
|
| send-email must be moving it down into the body. | 10:49 |
|
swetland
| yeah | 10:49 |
|
gitte_
| Ah, I misread. | 10:49 |
|
iXce`
| pasky: ping | 10:49 |
|
gitte_
| swetland: but why do you need that? | 10:49 |
|
swetland
| because git-send-email is a little crazy with the cc'ing and mangles the encoding of the name of my coworker who I'm submitting patches from ^^ though the latter looks like there is a fix in the works for | 10:50 |
|
| I need to roll up my sleeves and start poking around in the git sources one of these days | 10:50 |
| → kumbayo joined | 10:53 |
|
swetland
| I think part of the issue is just a workflow flaw on my side... I'm posting my patches from my work email address (since it's stuff done for work), but the address I use for the actual sign-off, patch authoring, etc is a neutral one (since this linux work will likely outlive my employment) | 10:54 |
| ← \ask left | 10:54 |
|
gitte_
| Maybe there is a --dry-run? | 10:54 |
| → Eludias joined | 10:54 |
|
swetland
| there is, and it has helped a bit figuring out what's going on | 10:54 |
|
gitte_
| spearce: http://git.pastebin.com/m1a2415a | 10:55 |
|
cehteh
| does git-cvsimport store some metadata somewhere? .. i try to reset a tree to a older commit | 10:55 |
|
| and then rerun it with a fixed AUTHORS file .. one new got added | 10:56 |
|
| just resetting master and rerun cvsimport breaks history | 10:57 |
|
gitte_
| You need to reset origin, not master. | 10:58 |
|
cehteh
| i have only master :P .. blame me but thats the way this repo was set up | 10:59 |
|
gitte_
| Umm. Sorry. Then I'm out of clues. | 10:59 |
|
cehteh
| heh well master/origin are just names | 11:00 |
|
| $ git fsck --full | 11:01 |
|
| error27: 118a4a6085f4fbf1d597d9248c9d86444f93826c: invalid sha1 pointer in cache-tree | 11:01 |
|
| missing blob 28009dc12bc54f54b5917aa972d57849bb81aa7e | 11:01 |
|
| ... | 11:01 |
|
| uhm | 11:01 |
|
gitte_
| Ouch. | 11:02 |
|
| cache-tree should be either in sync with the objects in the index, or invalidated. | 11:02 |
|
cehteh
| .. and many many more | 11:02 |
| → \ask joined | 11:02 |
|
cehteh
| well i am working on a copy .. checking the original repo now | 11:02 |
|
gitte_
| Easiest "fix" is to "git reset --mixed HEAD". | 11:02 |
|
| But I wonder how that could happen. | 11:03 |
|
| cehteh too | 11:03 |
|
cehteh
| i just cp -a the repo | 11:03 |
| ← nessundorma left | 11:04 |
| → tzafrir joined | 11:06 |
|
cehteh
| ok main repo is ok | 11:10 |
| → redondos_ joined | 11:10 |
| ← daveinthesky left | 11:11 |
| ← spearce left | 11:11 |
| ← redondos left | 11:13 |
| redondos_ → redondos | 11:13 |
| ← \ask left | 11:14 |
| → nud joined | 11:14 |
| ← pigeon left | 11:16 |
|
cehteh
| mhm | 11:19 |
|
| somehow history got chopped | 11:21 |
|
| *shrug* | 11:21 |
|
| non important mirror .. but still | 11:21 |
|
gitte_
| AFAIR it's the committer date that cvsimport uses to determine what is still to be fetched. | 11:24 |
|
HackyKid
| yay, now compiling even works with spaces in your $PATH | 11:27 |
|
gitte_
| Cool. | 11:28 |
|
HackyKid
| now i can do 'MSYSTEM=MSYS && ./Configure -de && make' to compile | 11:28 |
|
gitte_
| Hey, another idea: how about moving /perl to /share/msysPerl, and have a single script there which checks if it still needs to download/unpack/patch/build? | 11:29 |
|
| Maybe even more... install/update-msysgit? | 11:30 |
|
cehteh
| gitte_: well somehow the whole thing got borked | 11:31 |
|
gitte_
| :-( | 11:31 |
|
tzafrir
| Is there anything better than running: git-update-index <every file that has changed> #before commiting? | 11:31 |
|
HackyKid
| hmmm, we could do that | 11:31 |
|
tzafrir
| I use git-1.4.4.4-2 from Debian Etch | 11:31 |
|
cehteh
| tzafrir: update instantly :) | 11:31 |
|
gitte_
| HackyKid: and then... git-svn! Yeah! | 11:32 |
|
tzafrir
| cehteh, thanks for the hint. I guess I'll just dump git | 11:32 |
|
cehteh
| the debian etch version is stone age | 11:32 |
|
Pieter
| cehteh: backports has an up-to-date version | 11:33 |
|
cehteh
| there where tons of user interface and documentation improvements in 1.5.x | 11:33 |
|
gitte_
| tzafrir: if you update, there is "git add -u". | 11:33 |
|
tzafrir
| cehteh, I heard "upgrade" even on the version in Sid :-p | 11:33 |
|
Pieter
| tzafrir: http://packages.debian.org/etch-backports/git-core | 11:33 |
|
tzafrir
| I'd like to keep my system clean of backports | 11:33 |
|
cehteh
| tzafrir: dunno .. the backports version should suffice .. but i build it on my own, git is easy to build | 11:33 |
|
Ilari
| tzafrir: Lenny has 1.5.3.4... | 11:33 |
|
cehteh
| tzafrir: seriously 1.4.x is very different to 1.5.x from a users experience i really cant recommend to use 1.4.x | 11:34 |
|
| that are not just a few cosmetic changes ... | 11:35 |
|
tzafrir
| anyway, thanks for your replies | 11:37 |
| ← tzafrir left | 11:37 |
|
cehteh
| mhm restoring backup, rinse, repeat | 11:39 |
| ← fultilt left | 11:45 |
|
HackyKid
| hmm, seems /git/perl should be in @INC so it can find Git.pm | 11:45 |
|
gitte_
| HackyKid: but does not every perl script set this itself? | 11:48 |
|
| use lib (split(/:/, $ENV{GITPERLLIB} || "/home/gitte/lib/perl5/site_perl/5.8.8")); | 11:48 |
|
| (The second line in my git-remote script) | 11:49 |
|
HackyKid
| hmm, right | 11:49 |
|
| ah, i see | 11:49 |
|
| my perl install is now using different paths from what git thinks it uses | 11:49 |
| → LotR joined | 11:50 |
|
halorgium
| HackyKid: use PERL_PATH='/usr/bin/env perl' ./configure | 11:50 |
|
gitte_
| HackyKid: just set GITPERLLIB to the new path. | 11:51 |
|
| (The environment variable, that is.) | 11:51 |
|
HackyKid
| hmm, but my Git.pm didn;t actually change location | 11:53 |
|
cehteh
| bah | 11:56 |
|
| something in git-cvsimport is broken | 11:56 |
|
telmich
| good morning | 12:02 |
|
gitte_
| Good noon! | 12:02 |
|
telmich
| in the update hook, can I somehow get the name of the projectdir? | 12:02 |
|
gitte_
| You mean the working directory? | 12:02 |
|
telmich
| gitte_: yep | 12:02 |
|
gitte_
| Or the repository directory? | 12:02 |
|
telmich
| hmm.. | 12:02 |
|
| I'm not sure, where git is. | 12:03 |
|
gitte_
| In general, you cannot get the working directory. | 12:03 |
|
| "which git"? | 12:03 |
|
telmich
| let me explain the problem: I've some projects, that mail their commits to an mailinglist: http://l.schottelius.org/pipermail/eof/2007-November/thread.html | 12:03 |
|
| the problem is that the standard update hook, which I've on the server, does not say to which project | 12:04 |
|
| I see the project=$(cat $GIT_DIR/description) variable at the beginning and I'm thinking about whether that makes sense to include in the subject | 12:04 |
|
gitte_
| I think what you want is more like $(basename "$GIT_DIR") | 12:05 |
|
| (Probably followed by "test .git = "$name" && name = $(basename "$(dirname "$GIT_DIR")")") | 12:05 |
| → samsarin joined | 12:06 |
|
telmich
| gitte_: sounds pretty like what I want :-) | 12:06 |
|
gitte_
| telmich: denkbrett ;-) | 12:06 |
|
telmich
| gitte_: yep, the notebook I'm hacking on :-) | 12:06 |
|
gitte_
| I would never have guessed ;-) | 12:07 |
|
telmich
| well, I always give names, that match the computer I'm on | 12:07 |
| → drizzd joined | 12:07 |
|
telmich
| some information about that strange idea: http://tech.schottelius.org/history/README.html | 12:07 |
|
gitte_
| mine is called racer. | 12:07 |
|
telmich
| a fast one, I guess? | 12:10 |
|
robinr
| mine is lathund ("lazy dog") | 12:11 |
| → exon joined | 12:14 |
|
gitte_
| Nope, racer is a slow dog. Mainly because it only has 512MB. | 12:16 |
|
| But I'll get an EEE, hopefully this week. | 12:16 |
|
| telmich LOVES the shell! | 12:20 |
|
gitte_
| So you're happy as a clam? ;-) | 12:20 |
| → alley_cat joined | 12:20 |
|
telmich
| gitte_: the basename/dirname trick does not work 100% and I love to omit basename/dirname | 12:21 |
|
| name="${GIT_DIR##*/}" | 12:21 |
|
| test .git = "$name" && name="${${GIT_DIR%%/.git}##*/}" | 12:21 |
|
| that's so lovely | 12:21 |
|
LotR
| gitte_: won't the eee be slower? | 12:21 |
|
gitte_
| LotR: probably. But it has more RAM. | 12:21 |
|
telmich
| gitte_: who's clam? | 12:22 |
|
HackyKid
| a ghost! | 12:22 |
|
gitte_
| telmich: it's an expression in English, and a clam is an animal, having a shell. | 12:22 |
|
| LotR: RAM++ => swap-- => real_speed++ | 12:23 |
|
telmich
| gitte_: ah, ok | 12:23 |
|
| gitte_: hmm, is it possible, that GIT_DIR is not absolute, bute relative? | 12:24 |
|
| s/bute/but/ | 12:24 |
|
LotR
| gitte_: *nod* (and the swap on eee wouldn't be on harddisk either) | 12:24 |
|
telmich
| http://l.schottelius.org/pipermail/eof/2007-November/000021.html <== | 12:24 |
|
gitte_
| LotR: exactly! | 12:24 |
|
LotR
| gitte_: I'm not sure I'd like a 7" screen though.. | 12:25 |
|
gitte_
| I do. | 12:25 |
|
| telmich: GIT_DIR=. is possible. You'll have to replace it with $(pwd) in that case... | 12:25 |
| ← kahmalo left | 12:26 |
|
telmich
| gitte_: I'm doing pwd -P general now | 12:26 |
|
| telmich has to read the documentation of the hooks | 12:27 |
|
telmich
| NARF. a search for git hooks on google.ch matches my own site as first hit... | 12:28 |
|
robinr
| what's -P? | 12:28 |
|
gitte_
| Resolve symlinks, AFAICT. | 12:29 |
|
robinr
| man pwd doesn't say anything | 12:29 |
|
| nor info | 12:29 |
|
telmich
| gitte_: ack | 12:30 |
|
| robinr: read posix, everything else is not thrustworthy | 12:30 |
|
| robinr: http://www.opengroup.org/onlinepubs/009695399/utilities/pwd.html | 12:30 |
|
segher__
| robinr: pwd is a bash builtin, so try "help pwd" | 12:31 |
|
| "man pwd" works fine on most of my systems, fwiw | 12:31 |
| ← meandtheshell left | 12:37 |
|
telmich
| narf, although [ "$name" ] || name="${${$(cd "$GIT_DIR"; pwd -P)%%/.git}##*/}" seems not supported on posix shells | 12:41 |
| ← smartbhai left | 12:51 |
|
gitte_
| I think ${...} needs a variable name. | 12:52 |
|
telmich
| ack | 12:52 |
|
gitte_
| You need something like this: name="$(cd "$GIT_DIR"; pwd -P)" && name="${name%/.git}"; name="${name##*/}" | 12:53 |
|
| Ugly. | 12:53 |
|
telmich
| actually, I've exactly that :-) | 12:54 |
|
| yep, that's really ugly. the love to shell has been suspended now. | 12:54 |
|
| yeeeees | 12:55 |
|
| http://l.schottelius.org/pipermail/eof/2007-November/000023.html | 12:55 |
|
| telmich will send a request to the austin group of posix, perhaps they change it | 12:56 |
| ← Sho_ left | 12:58 |
| ← aroben left | 12:59 |
|
gitte_
| I'm sure you could write something elegant with "expr". | 13:00 |
|
telmich
| gitte_: I guess more to sed | 13:00 |
|
gitte_
| sed is not builtin, expr is. | 13:00 |
|
| At least in bash. | 13:00 |
|
telmich
| bash is evil [tm] | 13:01 |
|
| and expr is an utility, says posix: http://www.opengroup.org/onlinepubs/009695399/utilities/expr.html | 13:01 |
| ← Tali left | 13:01 |
|
telmich
| that's the reason why I always use posix, as bash is so fscking unportable | 13:02 |
|
gitte_
| Well, POSIX does not get any love from this developer. | 13:02 |
|
| telmich loves it, because scripts run on dsh, ksh, bash, zsh and even csh in sh mode | 13:02 |
|
robinr
| can't you run bash anywhere? | 13:02 |
|
gitte_
| I tend to dislike meetings, thus people who love meetings, thus POSIX. | 13:02 |
|
robinr
| "a camel is a horse designed by a committee" | 13:03 |
|
gitte_
| And things break by relying on POSIX, and meeting a shell which has a subtle "bug" with regards to POSIX. | 13:03 |
|
| robinr: lol | 13:03 |
|
telmich
| robinr: I use zsh as user shell and dash as /bin/sh; on my freebsd systems bash is installed as /usr/local/bin/bash for the co-workers, but thus /bin/bash as shebang does not work - and nobody uses /usr/bin/env in their shebang for bash | 13:03 |
|
gitte_
| robinr: but actually, that is too much honour: a camel is a functional system. | 13:03 |
|
telmich
| robinr: ok, that's true | 13:03 |
|
gitte_
| telmich: dash gave me too much grief to like it. | 13:04 |
|
robinr
| I use #!/bin/bash. If anyone wants to change that, fine, but then that person has to change and verify as I cannot | 13:05 |
| → meandtheshell joined | 13:05 |
|
robinr
| would #!bash work? | 13:05 |
| → Sho_ joined | 13:06 |
|
telmich
| robinr: well, /bin/bash breaks on almost all non-linux systems | 13:06 |
|
gitte_
| It works quite well in MSys, thankyouverymuch. | 13:07 |
|
robinr
| as I said, I cannot verify that my scripts works outside linux/cygwin | 13:07 |
|
telmich
| robinr: sounds somehow arrogant to me, if people use /bin/bash, although I'm a deep hearted pinguin | 13:07 |
|
gitte_
| zsh is utterly ugly. So I never use it. | 13:07 |
|
telmich
| robinr: well, you can simply install ksh/dsh/mksh or whatever as /bin/sh and focus on posix | 13:07 |
|
robinr
| i fact, I'm, almost certain that they don't work without explicitly verifying it | 13:07 |
|
telmich
| gitte_: zsh is so powerful. that's the reason why it has no sense to put it to /bin/sh | 13:07 |
|
robinr
| hence #!/bin/bash is a "watchout!" | 13:07 |
|
gitte_
| I never test my scripts for non-bash-ability. | 13:08 |
|
| But then, I follow the advice of a long time shell scripting expert. | 13:08 |
|
| Junio. | 13:08 |
|
telmich
| robinr: sorry, cannot agree with you. I would recommend using /bin/sh and checking $SHELL if you really insist on bash | 13:08 |
|
gitte_
| So I should be safe. | 13:08 |
|
| The nicest shell ever is busybox, anyway. | 13:09 |
|
robinr
| I don't *insist* on bash, I *say* it's not tested with nothing but bash | 13:09 |
|
gitte_
| _Everything_ is builtin. | 13:09 |
|
robinr
| first one to test and say it's portable, then we change | 13:09 |
| ← HackyKid left | 13:14 |
| → HackyKid joined | 13:14 |
|
robinr
| gitte_: yea, maybe we should standardize on busybox | 13:21 |
| → vin` joined | 13:29 |
| → G_SabinoMullane joined | 13:32 |
|
pennyk_
| hi, all | 13:36 |
|
| It seems that git.kernel.org is down. | 13:36 |
|
| Anybody can confirm this? | 13:36 |
|
gitte_
| pennyk_: scroll back. | 13:36 |
|
pennyk_
| gitte_: oh, I didn't notice that. Thx | 13:37 |
|
gitte_
| Hmm. I thought it was only a temporary glitch. Maybe somebody should notify hpa. | 13:38 |
| → rhalff joined | 13:39 |
|
rhalff
| hi I like the combination trac + svn, is there a similar setup with git ? | 13:40 |
|
segher__
| gitte_, telmich: $(...) isn't POSIX either | 13:41 |
|
gitte_
| Ha! | 13:41 |
|
doener
| segher__: it's not? http://www.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_06_03 | 13:45 |
|
| rhalff: trachacks has a gitplugin, no idea how well that works, but OLPC seems to be using it (well, or some other plugin) | 13:50 |
| → FunkeeMonk joined | 13:51 |
|
segher__
| doener: that's the 2004 version, it's not what is generally refered to as "POSIX" | 13:52 |
|
| (the 1996 edition is) | 13:53 |
|
| more importantly, many systems don't yet implement it | 13:53 |
|
rhalff
| doener: thanks | 13:54 |
|
exon
| segher: $() is too damn nice to be without though. Could you name a few systems where it isn't available? | 13:54 |
|
segher__
| exon: solaris, hpux, aix. i bet one doesn't :-) | 13:55 |
|
exon
| segher: "I bet" doesn't really count. If there are reports of it breaking for people, there's a chance it gets changed. Otherwise, why bother? | 13:56 |
| ← SuttoL left | 13:56 |
| ← Philantrop left | 13:56 |
|
segher__
| exon: otoh, if you require all these newfangled features, you can as well just require base | 13:56 |
|
| bash | 13:57 |
|
exon
| segher: why? Plenty of other shells support them too. It's much better to just say /bin/sh and hope the user has something sane. When it turns out to break, the people for whom it break can submit a few patches, or at least report the error | 14:00 |
|
segher__
| the pragmatic approach :-) | 14:00 |
|
| it would make sense to decide what exactly is required, but this works too, sure :-) | 14:01 |
| → Philantrop joined | 14:02 |
|
exon
| segher: It's fairly decided already; A shell which handles $(command) and ${var##*delim} | 14:06 |
|
| segher: check the mailing list archives for the past week for a more structured document (CodingGuidelines would be good to search for) | 14:08 |
|
segher__
| ah cool | 14:10 |
|
gitte_
| It was even discussed a little in this channel. | 14:11 |
| ← mithro left | 14:14 |
|
corecode
| who said that $() isn't yet [sic] supported by many systems | 14:17 |
|
segher__
| corecode: i did. and i said _some_ systems | 14:20 |
|
| corecode: at least for GCC we still cannot use it | 14:20 |
|
| i don't know the exact details | 14:20 |
| → semi_ joined | 14:20 |
|
semi_
| there's git-remote add, should there perhaps also be git-remote remove? | 14:21 |
|
corecode
| i guess this rumor is kind of worthless without documents proving it as a fact | 14:22 |
|
| for the unix community and as a greater good | 14:22 |
|
semi_
| when some public repo you are tracking gets removed | 14:22 |
|
corecode
| for instance | 14:22 |
|
gitte_
| semi_: there is. Only it is called rm. | 14:23 |
|
| semi_: and I think it is only in master as of now, not released. | 14:23 |
|
semi_
| oh, ok | 14:23 |
|
| I'll upgrade then :) | 14:24 |
| → kukks joined | 14:28 |
|
ttf
| hi.. if I clone a svn repo from the net and want to do development in it (in head) would I open a new branch for that or would I develop directly in master? | 14:28 |
|
semi_
| if you do everything in master, you lose the benefit of topic branches altogether | 14:29 |
| → mithraic joined | 14:30 |
| ← mithraic_ left | 14:30 |
|
drizzd
| What's the difference between pull . <branch> and merge <branch>? | 14:30 |
|
ttf
| semi_: I have come across the term topic branches before but don't know exactly what it means. care to elaborate or a pointer to some documentation? | 14:31 |
| → mithraic_ joined | 14:32 |
| ← mithraic left | 14:32 |
|
semi_
| ttf: when ever you start working on a new task, you start by branching, no matter how small the task is | 14:32 |
|
| ttf: and then you can work on different tasks easily even if some of them are totally broken | 14:32 |
|
| because they have their own branches | 14:33 |
| ← mithraic_ left | 14:33 |
|
exon
| ttf: That branch you create is your topic branch, and the end result of it is then a topic which you merge into your main release branch. It's quite useful once you get used to it. | 14:33 |
|
semi_
| but since you are dealing with svn, branches need some specific care | 14:34 |
| → mithraic joined | 14:34 |
|
ttf
| "main release branch != master" I suppose but yet another branch? | 14:34 |
| → bdiego joined | 14:36 |
|
ttf
| semi_: ^ | 14:38 |
|
semi_
| you choose your release policy | 14:39 |
|
hliusv561
| semi_: :-) | 14:39 |
|
gitte_
| drizzd: http://colabti.de/irclogger/irclogger_log/git?date=2007-11-07,Wed#l1690 | 14:41 |
|
ttf
| semi_: s/I suppose but/I suppose or/ | 14:41 |
|
drizzd
| gitte_: thanks | 14:41 |
|
gitte_
| drizzd: you're welcome. | 14:41 |
|
ttf
| it sounds smarter to me use a seperate branch for release or is it very common to have master being the release branch? | 14:42 |
|
| means would it have any advantages (I'm not aware of)? | 14:42 |
| ← csc`` left | 14:43 |
| → csc`` joined | 14:44 |
| ← mithraic left | 14:44 |
|
semi_
| well you could have your bleeding edge in master and then merge things to some release branch after they pass enough testing | 14:44 |
| → mithraic joined | 14:44 |
| ← samsarin left | 14:45 |
| ← mithraic left | 14:46 |
| → mithraic joined | 14:46 |
| → kanru joined | 14:48 |
| ← gitte_ left | 14:51 |
| → mithraic_ joined | 14:54 |
| ← mithraic left | 14:54 |
| → Tali joined | 15:03 |
|
exon
| Has anyone in here managed to get git-svn to import tags properly? | 15:03 |
|
drizzd
| how do I 'undo' a git add, the way I can do it with git gui by clicking in the staged changes box? | 15:09 |
| ← mithraic_ left | 15:09 |
| → mithraic joined | 15:10 |
|
drizzd
| Ok, that was a silly question | 15:13 |
| ← FunkeeMonk left | 15:14 |
|
drizzd
| Does git actually track renames, or does it simply detect them in retrospective? | 15:15 |
|
Tali
| drizzd: it only detects them while you are interested in it | 15:15 |
|
drizzd
| ok, so there is no difference between the following command sequences: cp a b; rm a; git rm a; git add b; | 15:17 |
|
| and git mv a b; | 15:17 |
|
Tali
| exactly | 15:17 |
| → bobesponja joined | 15:17 |
|
Tali
| that way it can taylor the detection routine on the information you want to know | 15:18 |
|
| you can e.g. trace back not only files renames but also code moves from one file to another | 15:19 |
|
drizzd
| yeah, makes sense. I was just hesitant about unstaging renames and adding them again, because I wasn't sure if that could undermine git-mv | 15:19 |
| ← bdiego left | 15:23 |
| → bdiego joined | 15:23 |
|
tsuna
| Hey guys. I have a project in Git with 15 years of history and I'm trying to find which commit introduced a given comment. I can blame the file, look at that line, then look at the commit that last changed that line, find out that the line was moved from somewhere else, blame that older revision and start again the process until I find the real commit that introduced the comment. This is inefficient, what would you recommand? | 15:25 |
|
| recommend, even :) | 15:26 |
| → mithraic_ joined | 15:31 |
| ← mithraic left | 15:31 |
|
drizzd
| tsuna: blame -M doesn't do what you want? | 15:33 |
|
doener
| tsuna: git log -p --reverse -S'comment goes here' | 15:34 |
|
tsuna
| drizzd: how to use it exactly? | 15:34 |
|
| doener: yes I found the commit with -S indeed | 15:35 |
| → mithraic joined | 15:35 |
| ← mithraic_ left | 15:35 |
|
doener
| :-) | 15:38 |
|
tsuna
| It's odd, the commit is 2d5c3abead3f72c457d886b92b3fbd977d273191 in autoconf (http://git.savannah.gnu.org/gitweb/?p=autoconf.git) but gitweb doesn't seem to be able to show it (it's like if that commit didn't exist in gitweb) | 15:38 |
|
| argh | 15:38 |
|
| no | 15:38 |
|
| it's in automake | 15:38 |
|
| err | 15:38 |
|
| looking at the wrong repo doesn't help, obviously | 15:38 |
|
doener
| heh | 15:39 |
|
drizzd
| tsuna: git blame -M filename should also show the original commit which introduced the line. But doener's solution is better. | 15:39 |
|
doener
| drizzd: hm, maybe with -C, too? In case that it moved from file to file? | 15:40 |
| → grahal joined | 15:40 |
|
drizzd
| yeah, actually -C implies -M I think | 15:41 |
|
| doener: is git-log -S an undocumented features? I can't find it in man git-log | 15:42 |
|
doener
| drizzd: no, it's just well hidden. git-log(1) tells you that it accepts all options for rev-list and diff-tree. And diff-tree(1) has -S. | 15:43 |
|
drizzd
| oh, I see | 15:44 |
| → jartz joined | 15:44 |
|
doener
| someone already complained about that not too long ago. It's sub-optimal, but nobody cared enough to come up with a better solution than the cross-ref | 15:45 |
|
| simply moving or duplicating -S seems bad, and showing all available options in git-log(1) seems scary | 15:45 |
|
drizzd
| yeah well, I don't have a better solution either | 15:46 |
|
doener
| :-) welcome to the club | 15:46 |
| → madewokherd joined | 15:48 |
| ← mithraic left | 15:54 |
|
tsuna
| git.kernel.org[0: 140.211.167.38]: errno=Operation timed out | 15:58 |
|
| is it me or git.kernel.org is down? | 15:59 |
|
robinr
| from my horizon it is down | 16:00 |
|
| but it might be that it is only down when we try to access it.. | 16:00 |
|
tsuna
| http://cacti.kernel.org/graph.php?action=zoom&local_graph_id=215&rra_id=1&view_type= | 16:01 |
|
| seems to confirm that it's down | 16:01 |
|
| git.kernel.org is poseidon.kernel.org | 16:01 |
|
| that's where git is great, I'll just fetch another copy of Git from my own computer ;o | 16:02 |
|
Ilari
| There's also repo.or.cz. It has mirrors of both git and Linux kernel. | 16:05 |
| ← alley_cat left | 16:12 |
| → alley_cat joined | 16:13 |
| → GyrosGeier joined | 16:15 |
| → ebel joined | 16:16 |
| ← greendale left | 16:17 |
| → mithraic joined | 16:24 |
| → KirinDav joined | 16:32 |
|
yann
| d'oh - there is no mirror of gitk.git on repo.or.cz ... | 16:33 |
| ← priidu_ left | 16:39 |
| → priidu joined | 16:39 |
|
Ilari
| yann: Fairly recent version can be extracted from git.git history... | 16:40 |
|
yann
| Ilari: yes, but I precisely wanted to know if there was anything not in git.git :) | 16:41 |
| ← pennyk_ left | 16:42 |
|
Ilari
| yann: I think the answer is negative. | 16:43 |
| → samsarin joined | 16:46 |
|
Ilari
| I read the repository reference files from www.kernel.org, and newest in them is 7388bcbc5431552718dde5c3259d861d2fa75a12, which can be found from git.git. | 16:46 |
| ← alley_cat left | 16:46 |
| → alley_cat joined | 16:53 |
| → fhobia joined | 16:55 |
| ← kumbayo left | 17:11 |
| ← bdiego left | 17:14 |
| → nessundorma joined | 17:17 |
| ← nessundorma left | 17:23 |
| ← alley_cat left | 17:30 |
| → raalkml joined | 17:40 |
| → mithraic_ joined | 17:40 |
| → mtg joined | 17:41 |
| ← priidu left | 17:45 |
| → alley_cat joined | 17:45 |
| ← mithraic left | 17:57 |
|
raalkml
| git.kernel.org[0: 140.211.167.38]: errno=Connection timed out | 18:11 |
|
| fatal: unable to connect a socket (Connection timed out) | 18:11 |
|
tsuna
| What's the easiest / fastest way of knowing whether the index contains changes to be committed (that is, whether it's `dirty' or not) | 18:11 |
|
raalkml
| anyone knows what happening? | 18:11 |
|
tsuna
| raalkml: yeah, it seems to be down. You can use the mirror at repo.or.cz | 18:11 |
|
raalkml
| quite some time already... | 18:12 |
| → orospakr joined | 18:12 |
|
Tv
| tsuna: maybe git diff-index --quiet | 18:13 |
|
| err, git diff-index --quiet HEAD | 18:13 |
|
tsuna
| --quiet doesn't seem to be supported by diff-index so I think I'll use git diff-index --name-only HEAD and discard its output | 18:13 |
|
raalkml
| git diff --quiet --cached | 18:13 |
|
Tv
| tsuna: you're git is old, then.. | 18:14 |
|
| s/'re/r/ | 18:14 |
|
| yeah --cached looks good too | 18:14 |
|
tsuna
| er, no, it's just that git diff-index -h doesn't mention --quiet :/ | 18:14 |
| csc`` → csc` | 18:15 |
|
tsuna
| thanks | 18:15 |
| ← mithraic_ left | 18:17 |
| → mithraic joined | 18:18 |
| ← mtg left | 18:19 |
| ← alley_cat left | 18:20 |
| ← zapnap left | 18:20 |
| → alley_cat joined | 18:20 |
|
heipei
| git.kernel.org[0: 130.239.17.7]: errno=Connection refused | 18:22 |
|
| anyone else getting that, or did i bork something here? | 18:22 |
|
raalkml
| the errno is different | 18:22 |
|
| but yes | 18:22 |
|
| seem to be restarted now | 18:23 |
| ← RobotDeathSquad left | 18:24 |
|
heipei
| hmm, no | 18:24 |
|
raalkml
| worked here. git1.kernel.org | 18:25 |
|
| git2 still down | 18:25 |
|
heipei
| hmm, i have the newest version anyway, so i can wait ;) | 18:26 |
| → z3om joined | 18:31 |
| → bdiego joined | 18:32 |
| → aroben joined | 18:34 |
| → gitte_ joined | 18:36 |
| → cmarcelo joined | 18:37 |
| ← alley_cat left | 18:44 |
| → alley_cat joined | 18:47 |
| ← gitte_ left | 18:49 |
| ← mithraic left | 18:49 |
| ← orospakr left | 18:49 |
| ← bobesponja left | 18:49 |
| ← Tali left | 18:49 |
| ← exon left | 18:49 |
| ← Eludias left | 18:49 |
| ← vmiklos left | 18:49 |
| ← metafollic left | 18:49 |
| ← FauxFaux left | 18:49 |
| ← ribas left | 18:49 |
| ← tarrybone left | 18:49 |
| ← masterdriverz left | 18:49 |
| ← swetland left | 18:49 |
| → bobesponja joined | 18:50 |
| ← zeom left | 18:51 |
| z3om → zeom | 18:51 |
| → gitte_ joined | 18:52 |
| → mithraic joined | 18:53 |
| → orospakr joined | 18:53 |
| → Tali joined | 18:53 |
| → exon joined | 18:53 |
| → Eludias joined | 18:53 |
| → vmiklos joined | 18:53 |
| → FauxFaux joined | 18:53 |
| → swetland joined | 18:53 |
| → ribas joined | 18:53 |
| → tarrybone joined | 18:53 |
| → masterdriverz joined | 18:53 |
| → ead joined | 18:53 |
| → kupsch joined | 18:53 |
| ← FauxFaux left | 18:53 |
| → metafollic joined | 18:53 |
| ← ribas left | 18:53 |
| → ribas_ joined | 18:53 |
| → cupsh joined | 18:53 |
| ← swetland left | 18:54 |
| ← kupsch left | 18:54 |
| ← Tali left | 18:55 |
| → Tali joined | 18:55 |
| ← tcoppi left | 18:55 |
| → tcoppi joined | 18:56 |
| ← alley_cat left | 18:56 |
| → vovo joined | 18:56 |
|
vovo
| git clone git://git.kernel.org/pub/scm/git/git.git - what will this do? | 18:56 |
|
gitte_
| ATM nothing... git.kernel.org seems not to respond | 18:56 |
|
raalkml
| a copy of git.git with local name "git" | 18:56 |
| → asdx joined | 18:57 |
|
raalkml
| git1's ok | 18:57 |
|
vovo
| whre is the local name mentioned? | 18:57 |
|
| git:// is which port number? | 18:57 |
|
raalkml
| 9418 | 18:57 |
|
gitte_
| See man page... | 18:57 |
|
vovo
| I have tried this command and it has got stuck here: Initialized empty Git repository in /home/humpty/lab/downloads/git/.git/ | 18:57 |
|
| it is not going beyond that | 18:57 |
| → FauxFaux joined | 18:57 |
|
raalkml
| well... gitte already told you | 18:58 |
|
gitte_
| vovo: have you even bothered to read my first reply? | 18:58 |
| → swetland joined | 18:58 |
|
raalkml
| try git1.kernel.org | 18:58 |
|
vovo
| oh! I missed the first one. sorry. trying. | 18:58 |
|
| how can I browse the git repo? is there any tool? | 18:59 |
|
raalkml
| many tools | 18:59 |
|
| see git.or.cz or wikipedia article. try gitk and git-gui | 18:59 |
|
vovo
| is git used for anything else other than linux kernel? | 19:02 |
|
raalkml
| yes | 19:02 |
|
vovo
| like? | 19:02 |
|
raalkml
| X? | 19:02 |
|
| Wine? | 19:02 |
|
| google | 19:02 |
|
| (well, meant: "google for it", but the Google too) | 19:03 |
|
vovo
| why is 'git' called, stupid control tracker? | 19:03 |
|
raalkml
| why do you have to ask> | 19:03 |
|
| ? | 19:03 |
| → DrNick joined | 19:03 |
|
vovo
| curious | 19:04 |
|
raalkml
| find out than | 19:04 |
|
doener
| because is tries not to be smart, just like the guy in front of my window, who enjoys to continously use his signal-horn... | 19:04 |
|
gitte_
| vovo: git.or.cz/gitwiki has a nice page of projects using it, which is not really hard to find. | 19:05 |
|
| telmich: I'd really be curious to find out about the other names of your computers. Particularly "ei". | 19:09 |
| → Ryback_ joined | 19:10 |
|
yann
| Ilari: ok, thanks for the info | 19:11 |
| ← raalkml left | 19:19 |
| → alley_cat joined | 19:21 |
| → Yuuhi joined | 19:27 |
| → myrizio joined | 19:27 |
| → kumbayo joined | 19:27 |
| ← asdx left | 19:29 |
| ← alley_cat left | 19:31 |
| ← kukks left | 19:31 |
| ← vmiklos left | 19:32 |
| → kukks joined | 19:32 |
| → vmiklos joined | 19:36 |
| → alley_cat joined | 19:41 |
| ← vovo left | 19:43 |
| → asdx joined | 19:50 |
| ← kumbayo left | 20:03 |
| → arwed joined | 20:11 |
| ← alley_cat left | 20:11 |
| → apollo13 joined | 20:14 |
|
arekm
| is there a way to find out when some branch was created via gitweb? | 20:14 |
|
apollo13
| hi, how can I discard all changes made to my sources? | 20:14 |
|
| eg I have some modified files which I wish to revert to head | 20:15 |
|
context
| arekm: you mean when it was branched | 20:15 |
|
arekm
| context: yes | 20:16 |
|
context
| arekm: you can easily find out when it was last merged, finding when it was actually originally branched i dont think so | 20:16 |
|
exon
| apollo13: git checkout -- file1 file2 file3 | 20:16 |
|
context
| actually | 20:17 |
|
apollo13
| exon: still showing the as modified (but not tracked yet) | 20:17 |
|
context
| arekm: try git merge-base --all your-branch <branch-you-branched-from> | 20:17 |
|
| arekm: and might be the last one | 20:17 |
|
| ive never used --all | 20:17 |
| → aroben_ joined | 20:18 |
|
exon
| apollo13: If you want to discard ALL changes to the tracked files in your work-tree, do "git reset --hard" | 20:18 |
| ← aroben left | 20:18 |
| aroben_ → aroben | 20:18 |
| ← Ademan left | 20:18 |
|
apollo13
| exon: strange I tried it before but they are still displayed as modified (could this have something to do with git svn?) | 20:19 |
| → Ademan joined | 20:19 |
|
context
| apollo13: no | 20:20 |
|
exon
| apollo13: what context said | 20:20 |
|
| apollo13: Do you have permission to overwrite the files? | 20:20 |
|
apollo13
| nope, I even don't want to check them in, it's just a checkout of django... | 20:21 |
|
| where I want to stay up2date | 20:21 |
|
context
| git reset --hard master if you dont care about any of the changes | 20:21 |
|
apollo13
| context, believe me it doesn't (but don't ask me why :() | 20:21 |
|
gitte_
| Isn't that in the FAQs by now? | 20:21 |
|
exon
| apollo13: ok. "git reset --hard && git clean -d" should probably do what you want then. Be warned that it'll get rid of all local modifications though | 20:21 |
|
context
| apollo13: what says they are modified | 20:22 |
|
apollo13
| git staus | 20:22 |
|
| status* | 20:22 |
|
| exon: didn't help either strange | 20:22 |
|
context
| rm -rf * ; git co master | 20:22 |
|
apollo13
| marked as " Changed but not updated:" | 20:22 |
|
context
| checkout* srry | 20:22 |
|
apollo13
| context marks al files as deleted and I am already on master^^ | 20:23 |
|
context
| git checkout -f master | 20:23 |
|
apollo13
| k, the changes are back (although I never modified these files) | 20:24 |
|
exon
| apollo13: What system are you using? | 20:25 |
|
context
| git diff then | 20:25 |
|
| yeah no kidding | 20:25 |
|
| are they locale files ? | 20:25 |
|
exon
| apollo13: Or rather, is your filesystem case sensitive? | 20:25 |
|
context
| with unicode characters in the filename ? | 20:25 |
|
apollo13
| context: seems to be an ordinary commit from one of the django developers | 20:25 |
|
| nope | 20:25 |
|
| still no idea why they are marked modified | 20:25 |
|
context
| apollo13: does diff actually show changes ? | 20:25 |
|
apollo13
| exon: debian | 20:25 |
|
| context: yeah | 20:26 |
|
| this is what I am curious about | 20:26 |
|
context
| then you didnt rm -rf * or you dont have permission to . | 20:26 |
|
apollo13
| I never made them | 20:26 |
|
| I have | 20:26 |
|
| I checked... | 20:26 |
|
context
| files dont get modified between git co -f and git status :/ | 20:26 |
|
exon
| nopes | 20:26 |
|
| Unless you have some weird checkout hook | 20:26 |
|
apollo13
| git svn ... | 20:26 |
|
context
| no. | 20:27 |
|
| i use git-svn every day | 20:27 |
|
apollo13
| I try to get my copy from the server | 20:27 |
|
| context: me too, but I can't help myself with this one... | 20:27 |
|
context
| do this for fun and paste somewhere | 20:27 |
|
apollo13
| paste what? | 20:27 |
|
context
| git-status ; rm -rf * ; ls -la ; git checkout -f master ; git status | 20:28 |
|
exon
| The output (paste at http://git.pastebin.com) | 20:28 |
|
context
| just for fun | 20:28 |
|
| :/ | 20:28 |
|
apollo13
| yeah you will get your fun.... | 20:28 |
|
context
| err | 20:28 |
|
| exon: how do you wipe the index, though from what he said its not that | 20:29 |
| ← KirinDav left | 20:29 |
|
context
| and git diff doesnt show indexed | 20:29 |
|
apollo13
| context, exon: http://git.pastebin.com/d6cd9653f just for you := | 20:29 |
|
| and to be honest I have no idea what could have caused this... | 20:31 |
|
context
| remove one of the files and see what it says :/ | 20:32 |
|
apollo13
| other idea, I used git for django to be able to switch easily between to svn branches | 20:32 |
|
| could this have something to do with it? | 20:32 |
|
context
| im confused as much as you are right now | 20:32 |
|
exon
| I should think crlf <-> lf conversion or some such. What does 'find -type f -name ".gitattributes"' tell you? | 20:32 |
|
apollo13
| context says when? | 20:32 |
|
context
| how big is the django history | 20:32 |
|
apollo13
| context: 6000 checkuns | 20:32 |
| ← arwed left | 20:32 |
|
apollo13
| checkins | 20:32 |
|
context
| oh :x | 20:33 |
|
| is that a git repo i can replicate | 20:33 |
|
apollo13
| but I could upload a working archive (19mb) | 20:33 |
| → KirinDav joined | 20:33 |
|
apollo13
| sure it's open http://code.djangoproject.com/svn | 20:33 |
|
| should I rm or git rm one of the files? | 20:33 |
|
context
| i ment a git repo | 20:34 |
|
| git-svn'ing 6000 revisions may take a bit .. | 20:34 |
| ← KirinDav left | 20:34 |
|
apollo13
| exon: autocrlf = true in my .gitconfig is this bad? | 20:34 |
|
context
| ahh | 20:34 |
|
exon
| apollo13: Try without it | 20:34 |
|
thiago_home
| I've done 12000, so it's doable :-) | 20:34 |
|
context
| thiago_home: i know its doable, just time consuming | 20:35 |
|
apollo13
| context I could provide you with a working checkout of mine packed repacked .... 19 mb .tar.bzip2 archive | 20:35 |
|
exon
| remove it and then re-do the "rm -rf *; git checkout -f master" thing | 20:35 |
|
apollo13
| exon: what does it default to? | 20:35 |
|
| (so, was it me how set this or is true the default) | 20:35 |
|
exon
| core.autocrlf | 20:36 |
|
| If true, makes git convert CRLF at the end of lines in text | 20:36 |
|
| files to LF when reading from the filesystem, and convert in | 20:36 |
|
| reverse when writing to the filesystem. The variable can be set | 20:36 |
|
| to input, in which case the conversion happens only while | 20:36 |
|
| reading from the filesystem but files are written out with LF at | 20:36 |
|
| the end of lines. Currently, which paths to consider "text" | 20:36 |
|
| (i.e. be subjected to the autocrlf mechanism) is decided purely | 20:36 |
|
| based on the contents. | 20:36 |
|
context
| apollo13: comment out autocrlf and git checkout -f | 20:36 |
|
thiago_home
| context: yep | 20:36 |
| ← Tali left | 20:36 |
|
apollo13
| k working now | 20:36 |
|
context
| that should be something they have set in autoprops for svn anyway | 20:36 |
|
apollo13
| Still I have no idea who set this setting *gg* | 20:37 |
|
context
| that was a headache at work when we switched to svn | 20:37 |
|
apollo13
| so is autocrlf defaulting to true or false? | 20:37 |
|
context
| im pretty sure false . | 20:37 |
|
exon
| righto, something's broken with autocrlf then, I guess. I think that setting was primarily intended for project-specific configs though | 20:37 |
|
context
| no scm in they're right mind modifies files my default .. | 20:37 |
|
apollo13
| so wth did I put ut in^^ | 20:37 |
|
exon
| apollo13: I pasted the setting above | 20:38 |
|
| Currently, which paths to consider "text" | 20:38 |
|
| <exon> (i.e. be subjected to the autocrlf mechanism) is decided purely | 20:38 |
|
| <exon> based on the contents. | 20:38 |
|
apollo13
| exon: yeah I read it before in the web, but it didn't tell me whether it's defaulting true or false... | 20:38 |
|
| but it works on my server so it must be false | 20:39 |
|
exon
| apollo13: It's defaulting to a content-based file-by-file decision | 20:39 |
|
apollo13
| ah :) | 20:39 |
|
exon
| apollo13: neither true nor false, that is | 20:39 |
|
apollo13
| okay so as long it's working leave it as default otherwise set it to false... | 20:39 |
|
| and context, yeah it took long to download the repo :) | 20:40 |
|
exon
| ye, that's my philosophy too :) | 20:40 |
|
apollo13
| I only have one setting in my gitconfig (apart from email, name) which is filemode=false (I am pretty sure I didn't set it) keep it or kick it out? according to the docs: "If false, the executable bit differences between the index and the working copy are ignored; useful on broken filesystems like FAT. See git-update-index(1). True by default." So I think kikcing it out is a good option... | 20:42 |
|
context
| i have nothing in core, but a lot of other stuff | 20:45 |
|
apollo13
| good :) thx for your help | 20:45 |
|
exon
| np. | 20:49 |
|
apollo13
| you got enough to laugh didn't you ;) | 20:50 |
|
ttf
| me and a friend of mine are tracking a public svn repo in two separate local git repos. let's say I am developing in a branch called foo and he is developing something different in his branch bar. we want to share those branches with each other but can't pull from each other directly. we'll setup a shared repo. now - how do we use this repo to share our branches (or at least our local commits we made in them)? | 20:50 |
|
| gitte_ wonders if there is a longest-line contest going on. | 20:51 |
| → alley_cat joined | 20:51 |
| ← orospakr left | 20:52 |
|
gitte_
| ttf: you just push your branches into that shared repo (which should be bare) | 20:52 |
|
exon
| ttf: You do "git push shared-repo foo" and he does "git push shared-repo bar" | 20:52 |
|
apollo13
| gitte_ am I going to win? | 20:52 |
|
gitte_
| Of course, don't forget to pull... | 20:52 |
|
exon
| gitte_: There's no real need to make it bare. | 20:52 |
|
gitte_
| apollo13: your _line_ might be longer than mine... | 20:53 |
|
| exon: oh yes, there is. New git users regularly get confused by pushing into non-bare repos. | 20:53 |
|
| exon: it's just asking for trouble. | 20:53 |
|
apollo13
| exon: gitte_ is right, I got confused to, really confused :) | 20:54 |
|
| too* | 20:54 |
|
ttf
| and then I just pull branch bar and he pulls branch foo respectively? do we have to do any mantainance on the server than or locally (rebase?) to not mess up the history of our branches? | 20:54 |
|
| or will be local foo be identically with remote foo? | 20:55 |
| ← alley_cat left | 20:55 |
|
exon
| gitte_: ah right. No technical reason then ;-) | 20:55 |
|
| ttf: That depends whether or not you commit on local foo or not | 20:56 |
|
| ttf: After having pushed it, that is | 20:56 |
|
| ttf: If you just push into the repo and that other bloke fetches it, he'll see exactly what was in your branch at the time when you pushed. | 20:57 |
|
ttf
| as foo would be my local devel branch I would commit, push, commit, push regularly so that my friend can be up to date - or is there a better way? | 20:57 |
|
exon
| ttf: No, that seems to cover it, although you'd probably be better off using topic-branches instead | 20:58 |
|
| ttf getting confused.. | 20:58 |
|
exon
| ttf: If nothing else, it'll be easier for you to check in on a particular feature the other is working on | 20:58 |
|
| ttf thought foo was a topic branch | 20:59 |
|
ttf
| isn't a topic branch just a branch I use for local development? | 20:59 |
|
exon
| ttf: Yes and no. A topic-branch is a fork off of the main development line that holds a single feature, usually implemented as a series of commits | 21:00 |
| → Astro joined | 21:00 |
|
Astro
| hi | 21:00 |
|
| I've got some files containing chinese text | 21:00 |
|
| (ought to be utf-8) | 21:00 |
|
apollo13
| exon: what happens if I do git pull in the topic branch? | 21:00 |
|
Astro
| but git-diff tells me "Binary files ... ... differ" | 21:01 |
|
| how do I view the diff? | 21:01 |
| → warren joined | 21:01 |
|
exon
| apollo13: You fetch and merge whatever your config states that that branch should be merged with. | 21:01 |
|
ttf
| exon: it's meant to be that the other person can see the work in progress - so I could stick to pushing foo I guess. | 21:01 |
|
Astro
| doh, git-diff --text | 21:01 |
|
apollo13
| so if my config states nothing (eg doing git checkout -b topic [from my local master]) | 21:01 |
|
warren
| Is there a convenient way to find the last git changeset that touched a given line? | 21:01 |
| → RetroJ joined | 21:02 |
|
exon
| warren: git blame file | 21:02 |
|
| warren: or "git log -S<line>" | 21:02 |
|
warren
| <line> is line number? | 21:03 |
|
ttf
| exon: isn't it smarter to only push my actual changes to the shared repo instead of the whole branch? if so how would I achieve that? | 21:03 |
|
exon
| warren: no, it's a string on the line | 21:03 |
|
| warren: It will locate commits that include the text you specify as argument to -S. | 21:03 |
|
| ttf: You would push your branch | 21:04 |
|
ttf
| okay | 21:04 |
|
RetroJ
| hi. I would like `git push' to cause the commits in my local repository to be put into the upstream repository. is this what is meant by "CVS workflow"? | 21:04 |
|
exon
| apollo13: You'd better do "git checkout -b topic origin/master" if you want it to merge the 'master' branch from your remote named 'origin' | 21:05 |
|
| ttf: Or send your changes as patches to that other bloke, but that's more hassle | 21:05 |
|
thiago_home
| RetroJ: "cvs commit" is split into two commands in git: commit and push. | 21:05 |
|
| RetroJ: well, one of the possible workflows. | 21:05 |
|
apollo13
| exon: so then git pull/push would operate on the remote master? | 21:05 |
|
warren
| exon, is there an easy way to step through changesets and watch a particular part of a file? | 21:06 |
|
exon
| apollo13: "git push" will only push the branches that the two repos have in common | 21:06 |
|
RetroJ
| I am a bit confused by the terminology "remote" since it seems to refer to "local cached" copies | 21:06 |
|
warren
| exon, (it isn't isn't to see exactly where a deletion happened?) | 21:06 |
|
thiago_home
| RetroJ: remote is whatever is not your local repository. | 21:06 |
|
exon
| warren: What is it you want to accomplish? | 21:06 |
|
ttf
| exon: you said "That depends whether or not you commit on local foo or not". What do I have to take care of (or do) when I commit regularly on the branch I push and the other person regularly pulls? | 21:07 |
|
apollo13
| exon: to clarify two repos? remote and my local branch? | 21:07 |
|
exon
| RetroJ: You probably mean the tracking branches. they track branches in remote repos | 21:07 |
|
RetroJ
| exon: yes, I think so | 21:07 |
|
warren
| exon, two branches of a software have fixed bugs in two different directions, I'm pulling fixes from both branches. With "git mergetool" with meld, it isn't entirely clear why an insertion or deletion happened, so trying to find exactly where a change happened and why. | 21:08 |
|
exon
| ttf: Nothing, really. What I meant was just that the branch in the upstream repo and the one in your local one will only be identical after you've pushed it but before you've committed to it | 21:08 |
| ← nud left | 21:09 |
|
exon
| warren: Use "git log -p -Sline_that_changed -- paths/that/changed" | 21:09 |
|
ttf
| okay - thanks again | 21:09 |
|
apollo13
| exon: how would you work if you were working on two (or more) patches. leave the master clean make a branch for both of them and finally merge them back into master and push them then? | 21:09 |
| → alley_cat joined | 21:09 |
|
exon
| apollo13: Something like that, yes. | 21:09 |
|
| apollo13: I'd commit typo-fixes and clearly trivial stuff directly to master | 21:10 |
|
warren
| exon, what does the -- mean? | 21:10 |
|
apollo13
| so it is a good idea of keeping my local master clean (besides from trivial stuff), as it allows easy merging | 21:10 |
|
| to keep* | 21:10 |
|
exon
| apollo13: When there's a fair chance the feature/fix/whatever will require more serious surgery I start a branch and hack up the patch as a commit-series | 21:10 |
|
| apollo13: yes | 21:10 |
|
apollo13
| okay :) | 21:10 |
|
warren
| exon, so I guess no tools like meld allow you to see during the mergetool where a change happened? | 21:10 |
|
exon
| warren: They're just markers to help git disambiguate between branches and files | 21:11 |
|
warren
| ah | 21:11 |
|
apollo13
| exon: and is it a good idea to use git pull origin/master to get new revisions? | 21:11 |
|
exon
| warren: git will show you all the commits that changed the line you specify in -S | 21:11 |
|
| apollo13: I usually do "git checkout master; git fetch; git diff origin/master; if(changes_look_ok) git merge origin/master" | 21:12 |
|
gitte_
| exon: actually, -S is slightly different from that: it shows you all the commits where the given string was either added or removed. At least AFAIK. | 21:13 |
|
exon
| apollo13: Actually, I more often do "git rebase origin/master" than "git merge", but that's just a minor nitpick | 21:13 |
|
| gitte_: Yes. I wasn't very clear there. | 21:13 |
|
gitte_
| Warning: rebase rewrites history. | 21:13 |
|
ttf
| it possible to setup a shared (but not public) bare repository, right? | 21:14 |
|
apollo13
| okay thx, but how are you porting the changes into the branches, by merging them with master or let them pull themselves? | 21:14 |
|
exon
| ttf: yes, ofcourse | 21:14 |
|
| apollo13: When a topic is deemed complete, it's merged to master. | 21:15 |
|
apollo13
| ups, I meant how do you get new revisions from the origin into a branch, do you merge them in from master? (so the other way round...) | 21:16 |
|
exon
| apollo13: I go through a couple of topic-branches per day, usually. Using topic-branches is just plain awesome for testing, especially when multiple people are working on different features. | 21:16 |
| ← RetroJ left | 21:16 |
|
warren
| exon, gitte_: ok thanks, exactly what I needed | 21:16 |
|
exon
| warren: happy hunting | 21:17 |
|
| apollo13: I merge them in, or rebase my local changes onto the upstream branch | 21:17 |
|
warren
| It would be cool if one day, one of the mergetools allows you to easily see what changeset caused a particular change you are seeing. | 21:18 |
| → TOMA4ATO_MONSTAH joined | 21:18 |
|
warren
| You're trying to merge stuff totally without context. | 21:18 |
|
TOMA4ATO_MONSTAH
| WRAARRRR!!! I'm the Tomato Monstahhhhh! WRAARRRR!!! | 21:18 |
|
warren
| wtf | 21:18 |
|
TOMA4ATO_MONSTAH
| WRAARRRR!!! I has the Cookies Tooo! WRAARRRR!!! | 21:18 |
|
| WRAARRRR!!! I'm the Tomato Monstahhhhh! WRAARRRR!!! | 21:18 |
|
thiago_home
| that moron has been spamming a few channels | 21:18 |
| ← TOMA4ATO_MONSTAH left | 21:18 |
|
LotR
| hehe | 21:19 |
|
exon
| apollo13: When adding stuff from upstream I usually rebase. Primarily because such merges are usually "useless" (ie, they just clutter up history, whereas merging a topic-branch means a feature has matured enough to graduate to near release-status) | 21:19 |
|
warren
| Just imagine that kind of behavior in real life. | 21:19 |
|
apollo13
| okay thx again, learning more of git everyday :) | 21:19 |
|
exon
| apollo13: but also because rebasing local stuff onto upstream means I'd have to work really hard to destroy already published history | 21:20 |
|
| apollo13: yw. | 21:20 |
|
warren
| exon, I'm rather new to this kind of tool, do you recommend any document that describes the methodology of branching and merging? | 21:20 |
| ← Sho_ left | 21:21 |
|
exon
| warren: Just run through the tutorial once. It'll give you quite a jumpstart | 21:21 |
| → Sho_ joined | 21:21 |
|
warren
| exon, a little more background. mkinitrd has an "upstream" git repository. There is an unofficial branch of mkinitrd that does wacky things, last synced with upstream 2 months ago. I want to continue bug fixes against wacky-branch, but first I want to sync with upstream fixes. I'm uncertain whether I want upstream pull wacky-branch or the other way around. | 21:22 |
|
exon
| warren: Getting an experimental repository to just test things in would also be a good idea. | 21:22 |
|
gitte_
| warren: re ui tool: have you tried "git gui blame <file>" lately? | 21:22 |
|
exon
| warren: do "git merge-base master whacky". If that works ok, do "git checkout -b try_merge <output>", where <output> is the output from "git merge base" | 21:24 |
|
| warren: do "git merge-base master whacky". If that works ok, do "git checkout -b try_merge <output>", where <output> is the output from "git merge-base" | 21:24 |
| ← grahal left | 21:25 |
|
exon
| warren: read only the second of those posts ;-) | 21:25 |
| ← alley_cat left | 21:26 |
|
warren
| git-merge-base [--all] <commit> <commit> | 21:27 |
|
| what are those <commit> parameters? | 21:27 |
|
exon
| warren: The commits you want to see the merge-base of | 21:27 |
|
| warren: In your case, it'd be the master branch and the whacky branch | 21:27 |
|
warren
| Maybe I'm getting my terminology mixed up | 21:28 |
| ← asdx left | 21:28 |
|
warren
| git clone http://somewhere/something | 21:28 |
|
| that puts a copy of a "branch" locally? | 21:28 |
|
exon
| warren: Where's this git repo, btw? It might help if I can see what's going on | 21:28 |
|
thiago_home
| warren: the two commits whose base you want to find. | 21:28 |
|
exon
| warren: That puts a copy of a repository locally | 21:28 |
|
| warren: With all its history and everything | 21:29 |
|
warren
| Using bzr, hg and git for different things, the names get all mixed up =) | 21:29 |
|
| warren finding url's.... | 21:29 |
|
exon
| warren: I can imagine ;-) | 21:29 |
| → alley_cat joined | 21:30 |
|
warren
| official upstream git://git.fedoraproject.org/hosted/mkinitrd | 21:30 |
|
| I guess that would be "master"? | 21:30 |
| → asdx joined | 21:30 |
| → mithro joined | 21:30 |
|
thiago_home
| no | 21:30 |
|
| that would be git://git.fedoraproject.org/hosted/mkinitrd | 21:30 |
|
| that's a repository, not a branch | 21:31 |
|
exon
| warren: What thiago said. It has a 'master' branch, and the 'master' happens to be the default branch for that repo, but it's not necessarily the only 'master' | 21:31 |
|
warren
| oh | 21:31 |
|
exon
| warren: Was there a url for the whacky work as well? | 21:31 |
|
warren
| http://fedorapeople.org/~katzj/git/mkinitrd.git/ | 21:31 |
|
| OK, so two separate repositories. | 21:32 |
|
| They have common ancestry | 21:32 |
| → Tali joined | 21:32 |
|
warren
| I want to continue doing fixes to http://fedorapeople.org/~katzj/git/mkinitrd.git/, but first I want to pull the bug fixes from git://git.fedoraproject.org/hosted/mkinitrd | 21:33 |
|
thiago_home
| merging in git is a symmetric operation (except for the subtree merge strategy) | 21:34 |
|
| so, it doesn't matter which way you do it | 21:34 |
|
| are you merging ALL commits? | 21:34 |
| → arwed joined | 21:34 |
|
warren
| If I want to continue along http://fedorapeople.org/~katzj/git/mkinitrd.git/ without touching git://git.fedoraproject.org/hosted/mkinitrd might it be more logical to start from http://fedorapeople.org/~katzj/git/mkinitrd.git/ and pull git://git.fedoraproject.org/hosted/mkinitrd? | 21:35 |
|
| Is it normal for merges to maintain changeset history of stuff you merged from elsewhere? | 21:35 |
| ← apollo13 left | 21:36 |
|
exon
| warren: Righto, here's what I just did | 21:36 |
|
warren
| The goal is eventually (maybe months from now) to merge all changes back from wacky into upstream, with all history. | 21:36 |
|
exon
| git clone git://git.fedoraproject.org/hosted/mkinitrd | 21:36 |
|
| git remote add whacky http://fedorapeople.org/~katzj/git/mkinitrd.git/ | 21:36 |
|
| git fetch whacky | 21:37 |
|
| git merge-base whacky/master origin/master | 21:37 |
| ← Sho_ left | 21:37 |
|
exon
| which gave the output 74c5e19aa93ce29f0ff0f21df0a2cb64205bb7ce | 21:37 |
|
ttf
| setting up a shared repo like this doesn't seem to work: git-svn clone --bare lxoffice https://lx-office.linet-services.de/svn/ | 21:37 |
| → Sho_ joined | 21:37 |
|
ttf
| do I first have to git-svn clone the repo completely and from that point make a bare repo? | 21:38 |
|
exon
| warren: So... 74c5e19aa93ce29f0ff0f21df0a2cb64205bb7ce is the commit where the whacky-fork parted ways with the upstream | 21:38 |
| ← mutex left | 21:38 |
|
exon
| warren: With me so far? | 21:38 |
|
warren
| exon, yes | 21:38 |
|
| hah... | 21:40 |
|
| [warren@newcaprica git-help]$ git remote add whacky http://fedorapeople.org/~katzj/git/mkinitrd.git/ | 21:40 |
|
| Can't locate Error.pm in @INC | 21:40 |
|
ttf
| hmm - I probably better use git-init and git-fetch seperately.. | 21:40 |
|
exon
| warren: ouch. Get the latest git from git.kernel.org. This'll be awfully awkward if I use some features you don't have | 21:41 |
|
warren
| git-1.5.3.4-1.fc8 | 21:41 |
|
exon
| warren: That should work. I've got git version 1.5.3.5.1527.g6161, but afaik there aren't that vast changes between them | 21:42 |
|
warren
| ahh | 21:43 |
|
exon
| warren: Good news for you though. "git diff --stat whacky/master origin/master | tail -n 1" says: 9 files changed, 390 insertions(+), 411 deletions(-) | 21:43 |
|
warren
| I had to cd into the repository for that command to work. | 21:43 |
|
exon
| warren: ah, yes. :) | 21:43 |
|
warren
| exon, one more question | 21:45 |
|
| exon, http://git.fedoraproject.org/?p=hosted/mkinitrd;a=summary | 21:45 |
|
exon
| warren: Righto, do this now: "git checkout -b try_merge origin/master; git merge whacky/master" | 21:45 |
|
warren
| exon, under http://git.fedoraproject.org/?p=hosted/mkinitrd;a=summary "heads" there is a bash-branch | 21:46 |
|
| exon, when I cloned this repo, did I pull bash-branch to local as well? | 21:46 |
|
exon
| warren: yes. You can see it in your local repo as well, if you do "git branch -r" | 21:46 |
|
warren
| ah | 21:47 |
|
exon
| warren: Yes, but only master was created as a local "here you can commit" branch. The others are sort of hidden so you don't accidentally commit to a branch you've set up to track upstream | 21:47 |
|
ttf
| hmm.. running: git --bare init --shared; git-svn --bare fetch https://lx-office.linet-services.de/svn/ doesn't work either - do I have to create the bare repo from the existing git-svn cloned repo? | 21:48 |
|
| means the second command seems to be unsupported | 21:48 |
|
warren
| exon, what is the actual name for "sort of hidden" modE? | 21:48 |
| ← Sho_ left | 21:48 |
| → Sho_ joined | 21:48 |
|
exon
| warren: "remote tracking branches". They're not really hidden, but git won't list them by default | 21:49 |
|
| warren: sorry, I'm not very good at explaining (I digress too much) | 21:49 |
|
warren
| I'm not exactly sure what is going on, but I'll keep figuring... | 21:50 |
|
| if I have an intelligent question I'll come back here. | 21:50 |
|
| exon, thanks for all the help. | 21:50 |
|
exon
| warren: Have you done the "git fetch" thing after adding the whacky repository as remote? | 21:50 |
| → nud joined | 21:50 |
|
warren
| exon, yes | 21:51 |
| ← vin` left | 21:51 |
|
exon
| warren: Righto, do this now: "git checkout -b try_merge origin/master; git merge whacky/master" | 21:51 |
|
warren
| Auto-merged nash/nash.c | 21:52 |
|
| Automatic merge failed; fix conflicts and then commit the result. | 21:52 |
|
exon
| warren: You're about to run into the git index soon. I'll explain how you can use it during merge conflicts and then you'll be just fine fiddling with git. | 21:52 |
|
warren
| ah | 21:52 |
|
exon
| warren: Ah, there we have it. Now, nash/nash.c has been merged in the index | 21:52 |
| ← Sho_ left | 21:53 |
|
exon
| warren: So you can see two types of diffs now. What's already resolved/merged cleanly (git diff --cached), or what's left for you to figure out how to handle in the working tree (git diff) | 21:53 |
| → Sho_ joined | 21:53 |
|
warren
| exon, wait a second, what does index mean? | 21:54 |
| ← Yuuhi left | 21:54 |
|
exon
| warren: As you work your way through the merge conflicts you should do "git add" on each file as it's fully resolved to add it to the final merge commit and get rid of it in the regular "git diff" output | 21:55 |
|
warren
| oh | 21:55 |
|
exon
| warren: The index is a staging area where git prepares the next commit | 21:55 |
| ← alley_cat left | 21:55 |
|
Ilari
| warren: Index stores the contents of files about to be committed, and it also stores the conflicting files and their ancestor during merge... | 21:56 |
|
exon
| warren: It's particularly powerful when handling a merge with conflicts, since everything that merges cleanly will end up in the index, while that which doesn't is left outside it | 21:56 |
|
warren
| exon, I've been using meld to aid in visualizing the conflicts, is there a better way to both visualize and see changesets that caused the conflicts? | 21:56 |
|
exon
| Ilari: No, merge conflicts aren't added to the index. | 21:56 |
|
thiago_home
| warren: use git-merge-tool | 21:56 |
|
warren
| thiago, git mergetool is what called meld | 21:56 |
|
| meld is only one option of many | 21:56 |
|
Ilari
| exon: The files to be merged are stored there, as well as the ancestor. | 21:56 |
|
| thiago_home used only kdiff3 | 21:57 |
|
thiago_home
| that works fine for me | 21:57 |
|
exon
| warren: git-mergetool just makes sure to send the right options to the diff viewer you choose | 21:58 |
|
warren
| Does any git-merge-tool allow you to visually see the changeset and comments taking part of a conflict? | 21:58 |
|
exon
| Ilari: Conflicted merges aren't added to the index. Only that which merges cleanly. | 21:58 |
| ← sgrimm left | 21:59 |
|
ttf
| sorry for repeating - does anybody know an answer to my "bare repository" question above? | 21:59 |
| → sgrimm joined | 21:59 |
| ← Sho_ left | 21:59 |
|
exon
| warren: There are conflict markers in the files now though. With "git diff --color=auto" you'll be able to resolve most of it very quickly, me thinks. | 21:59 |
| → eMBee_ joined | 22:00 |
|
warren
| [warren@newcaprica mkinitrd]$ git diff --color=auto | 22:00 |
|
| error: invalid option: --color=auto | 22:00 |
| ← jlh left | 22:00 |
|
exon
| warren: err, skip "=auto" :) | 22:00 |
|
| warren: my bad. I have it in my config file. | 22:01 |
|
warren
| exon, this still doesn't show me the changesets that caused the conflicting changes. | 22:01 |
|
| if a tool doesn't exist to do this yet, then OK. | 22:01 |
|
| I can survive. | 22:01 |
|
exon
| warren: Ah, now I see what you mean. | 22:01 |
|
| That's where "git log -S" comes in though | 22:02 |
|
warren
| exon, ok, if I merge the conflicts, then what? | 22:02 |
|
| git commit (but where?) | 22:02 |
|
exon
| warren: Resolve the conflicts in each file as you go along. Then "git add file" when you're done with that file. When "git diff" has no output, but "git diff --cached" has plenty, you just type "git commit" and edit the commit message in your editor as usual | 22:03 |
|
warren
| hm | 22:04 |
| ← mithro left | 22:04 |
|
Ilari
| exon: There are normal 'stage 0' index entries, and there are also stage 1, 2 and 3 entries, which are used during merge. AFAIK, index can't be committed before all stage 1, 2 and 3 entries are gone. | 22:04 |
|
warren
| exon, if I want to maintain whacky in bash-branch in parallel with master | 22:04 |
|
| exon, how do I commit to bash-branch explicitly? | 22:05 |
| → Sho_ joined | 22:05 |
|
exon
| warren: "git checkout -b bash-branch origin/bash-branch; (work, work, work); git commit" | 22:06 |
|
warren
| [warren@newcaprica mkinitrd]$ (work, work, work) | 22:07 |
|
| bash: work,: command not found | 22:07 |
|
| sorry, bad joke =) | 22:07 |
|
exon
| :P | 22:07 |
|
warren
| Why is git pull -t not default? | 22:08 |
|
| oh, I guess the default is more intelligent thant his. | 22:09 |
|
| this | 22:09 |
|
exon
| warren: yup | 22:09 |
|
clee
| heh. heya, warren | 22:09 |
|
warren
| OK, I should be able to figure this out from here. | 22:09 |
|
| clee, hey clee | 22:09 |
| ← Eludias left | 22:11 |
|
exon
| warren: gl with your merges | 22:11 |
|
warren
| gotta reboot, brb | 22:12 |
| → aroben_ joined | 22:12 |
|
telmich
| good evening | 22:16 |
|
| gitte_: 'ei' was my g3-ibook | 22:16 |
|
gitte_
| Good evening, telmich | 22:16 |
| ← arwed left | 22:16 |
|
gitte_
| You had one, too! | 22:17 |
|
telmich
| gitte_: yeah, pretty nice laptop, though replacing parts took me hours | 22:17 |
|
gitte_
| Oh yes. | 22:18 |
|
| Well, I did not replace anything, as it was something on the motherboard which went dead. | 22:18 |
|
| But my sister's husband was really happy to have so many parts. | 22:19 |
|
telmich
| segher__: btw, $() _is_ posix: http://www.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html | 22:19 |
|
| gitte_: hehe | 22:19 |
|
doener
| telmich: you're 8 hours late ;-) | 22:19 |
|
| 14:52:11 <segher__> doener: that's the 2004 version, it's not what is generally refered to as "POSIX" | 22:19 |
|
telmich
| segher__: you are the second one telling me that it's not posix that weekend | 22:19 |
|
| doener: tzzz | 22:20 |
|
| doener: interesting, like "posix was and may never change" | 22:20 |
| ← aroben left | 22:20 |
|
gitte_
| segher__: AFAIAC it could be in X.org, too, or even in the Magna Carta. As long as the common shells grok it, it's okay, if there is just one which does not, well, we need a solution. | 22:20 |
| → aroben joined | 22:21 |
|
doener
| telmich: at least he said that the 1996 version is currently POSIX, originally, it was 1988 AFAIK | 22:22 |
|
telmich
| doener: 1988 is correct, but things changes, perhaps segher__ will accept that, too (=> 1988 hint is on the faq, btw: Although originated to refer to the original IEEE Std 1003.1-1988, the name POSIX more correctly refers to a family of related standards: IEEE Std 1003.n ) | 22:23 |
|
| (from http://www.opengroup.org/austin/papers/posix_faq.html) | 22:23 |
| ← exon left | 22:24 |
|
doener
| telmich: yeah, read that earlier today. I'm not arguing against you btw, I posted that same url 9 hours ago | 22:24 |
|
telmich
| doener: sorry, did not want to make the impression that I think that you argue against me, just spread some information :-) | 22:25 |
|
doener
| :-) | 22:26 |
| ← Oejet left | 22:26 |
| → mithro joined | 22:28 |
| → janm joined | 22:29 |
| ← aroben_ left | 22:30 |
|
| Ilari screwed up, causing ~15MB download to start... | 22:33 |
|
Ilari
| And even worse, that includes that "branch from hell" which can't be updated due to that git-rev-list bug... | 22:35 |
| ← ramza3 left | 22:36 |
| → alley_cat joined | 22:42 |
|
gitte_
| Ilari: which bug? | 22:47 |
|
Ilari
| gitte_: That git-rev-list pathlimiting/subrepo bug I told earlier. | 22:49 |
|
gitte_
| I wasn't there. | 22:49 |
| → jasam joined | 22:51 |
|
Ilari
| gitte_: The test repo I made for it goes like this: A is parent of B and C is parent of D. A has C as subrepo, B has D. Now, 'git rev-list B D ^A" crashes. | 22:51 |
|
| Revision limiting, not path limiting... | 22:52 |
|
| gitte_ goes and tries that. | 22:52 |
|
Ilari
| gitte_: Ooops. You need --objects there also. | 22:54 |
|
| One can imagine what bug like that does to fetching... | 22:55 |
| → priidu_ joined | 23:00 |
| ← ferdy left | 23:03 |
|
gitte_
| Ilari: I cannot reproduce: http://git.pastebin.com/m6a2988ea | 23:05 |
|
| Copy this into your git checkout's t/ directory, and start it with "sh t.sh". | 23:06 |
| ← aroben left | 23:06 |
|
robinr
| hmm, not missing a letter there? :/ | 23:06 |
|
gitte_
| A letter? | 23:07 |
|
| A cover letter? | 23:07 |
|
robinr
| sh t.sh | 23:07 |
|
| never mind | 23:07 |
|
gitte_
| Well, this file is named "t.sh" here, obviously. | 23:07 |
|
| Ilari: my script is buggy, it seems. It does not initialise the submodule correctly. | 23:10 |
|
| Hah! | 23:11 |
|
| Do it correctly, and you can reproduce it. | 23:11 |
|
Ilari
| gitte_: Got updated script? | 23:11 |
|
gitte_
| Ilari: yes: http://git.pastebin.com/m759e0435 | 23:12 |
|
| (Note that I already put in a gdb --args, so you _have_ to call it with -i -v) | 23:13 |
|
| Error is in mark_tree_uninteresting(), revision.c, line 73. | 23:14 |
|
Ilari
| ...Which assumes that if it isn't a tree, it is a blob? | 23:15 |
|
gitte_
| Yep. | 23:15 |
|
Odd_Bloke
| If I have a branch in a remote repository, what's the appropriate way to get a copy of it locally? | 23:16 |
|
gitte_
| I got a fix. | 23:16 |
|
| Now comes the tedious part: writing a commit message. | 23:16 |
| ← alley_cat left | 23:19 |
|
gitte_
| Ilari: you want to be Cc'ed? | 23:19 |
|
Ilari
| gitte_: No need. | 23:19 |
|
gitte_
| Could you test? | 23:20 |
|
Ilari
| Where to get the patch? | 23:20 |
|
gitte_
| http://git.pastebin.com/m4d0c7121 | 23:21 |
| ← bdiego left | 23:21 |
| → pigeon joined | 23:22 |
| ← HackyKid left | 23:23 |
|
rhalff
| how does delete work with git, is it possible to retrieve removed files from a repository revision where the file was still present ? | 23:25 |
|
gitte_
| Of course. | 23:25 |
|
rhalff
| probably not because that would make the repos huge after a while, right ? | 23:25 |
|
gitte_
| That's what SCMs are about. | 23:25 |
|
| "git checkout <revision> <filename>". | 23:25 |
|
rhalff
| I'm talking about deleted files | 23:25 |
|
gitte_
| Yes, deleted files. | 23:26 |
|
male
| Or git show. | 23:26 |
|
gitte_
| It's called content tracker for a reason ;-) | 23:26 |
|
context
| rhalff: as long as they wered checked in for at least 1 revision, you can retreive it. | 23:26 |
|
rhalff
| so what if I I import a many big files one day, and then remove them, because it was a mistake | 23:26 |
|
gitte_
| Any proper SCM allows you to get back to the _exact_ state where you were when you committed. | 23:26 |
|
context
| rhalff: otherwise there would be no reason for using an scm in the first place ... | 23:26 |
|
male
| rhalff: man git-show | 23:27 |
|
context
| rhalff: if it was a mistake, in git you would reset --hard and drop the revision from the history, or branch-filter it out hopefully before pushing to a viewable repository | 23:27 |
| → myrizio_ joined | 23:27 |
|
rhalff
| context: ok :) svn has that also ? | 23:28 |
| ← myrizio_ left | 23:28 |
|
context
| rhalff: yes using svndumpfilter | 23:28 |
|
gitte_
| context: I think rhalff means "svn also stores all the files, even if they were deleted". | 23:28 |
|
context
| rhalff: you mean keeping deleted files ? of course ... | 23:28 |
|
gitte_
| Yes, it does. | 23:28 |
|
rhalff
| yeah I meant that, thanks gitte_ | 23:29 |
|
context
| so does cvs , and hg, and every other possible scm i can think of ... | 23:29 |
|
gitte_
| Some are buggy, though ;-) | 23:29 |
|
male
| So do plain old tarballs. | 23:29 |
|
gitte_
| male: as long as you have them. | 23:29 |
|
| male: think of Linux 0.02. | 23:29 |
|
context
| rhalff: it keeps deleted source code from files, why wouldn't it keep deleted files. ;) | 23:30 |
|
rhalff
| dunno, because I had trouble trying to get them back with subversion :) | 23:31 |
|
Ilari
| gitte_: The patch seems to fix the issue. | 23:31 |
| → RobotDeathSquad joined | 23:31 |
|
robinr
| rhalff: don't you ever imply that git has any of subversion's deficiencies :) | 23:32 |
|
gitte_
| Ilari: thanks. | 23:32 |
|
Ilari
| BTW: One I somewhat frequently run into, is that there is no way to clone some remote repsitory, using some existing repository as cache in just one command (it requires at least 6 commands). | 23:36 |
| → joevandyk joined | 23:37 |
|
rhalff
| robinr: I'm not, I expected an answer like, subversion deletes the files irrecoverably , but git doesn't. | 23:37 |
|
joevandyk
| I'm using git-svn. When I try to do a git-svn rebase, i get a bunch of ifles that "needs update". | 23:37 |
|
| I'm using git-svn. When I try to do a git-svn rebase, i get a bunch of files that "needs update". | 23:37 |
|
| oops, sorry | 23:37 |
|
Ilari
| joevandyk: You should commit first before rebasing. | 23:37 |
|
joevandyk
| Ilari, i did | 23:37 |
|
gitte_
| Ilari: git clone --reference does not work? | 23:38 |
|
joevandyk
| oh wait, all the files are ones that I deleted | 23:38 |
|
Ilari
| gitte_: Actually, I want to copy the cache too... | 23:39 |
|
joevandyk
| what happened is i have rails exported into vendor/rails. i deleted rails and did a new export, since i wanted to upgrade. then i did a 'git add . ' | 23:39 |
|
Ilari
| joevandyk: 'git add' does not make a commit... | 23:40 |
|
gitte_
| Ilari: you mean the index? That does not make sense. | 23:40 |
|
joevandyk
| but rails moved some files around, so there's some files that used to exist that don't anymore. is there a way to automatically remove those deleted files? | 23:40 |
|
| Ilari, I know | 23:40 |
|
| Ilari, my question: how to tell git to remove a couple hundred files? | 23:40 |
|
| Ilari, since they don't exist anymore | 23:40 |
| → RetroJ` joined | 23:43 |
|
joevandyk
| Ilari, in other words, say i removed a couple hundred files from various directories in my git project. how should i tell git to automatically remove those files? | 23:45 |
|
| Ilari, i guess i could parse the output of 'git status', but was wondering if there was an easier way | 23:45 |
| → Fullmoon joined | 23:46 |
|
Ilari
| joevandyk: If there is no content in tracked files that couldn't be added, 'git add -u' might work. | 23:46 |
|
RetroJ`
| hi. I have created a git repository for a large project that contains subprojects. some of these subprojects are not my software at all. what would be a good way to organize things so that these subprojects can have independent version control in other locations, yet still be included in my repository in a clone, without duplicating the version control? | 23:46 |
| ← nud left | 23:47 |
|
Ilari
| joevandyk: There is also better way to obtain list of deleted files... I don't offhand know that... | 23:47 |
|
joevandyk
| Ilari, git rm `git status | grep deleted | awk '{print $3}'` did the trick | 23:47 |
|
gitte_
| joevandyk: if you need that more often, "git ls-files --deleted" is what you want. | 23:49 |
|
joevandyk
| gitte_, ah, sweet | 23:49 |
| → pigeon_ joined | 23:53 |
| → KirinDav joined | 23:55 |