| 2008-01-30 |
|
wjlee
| how should I let proj1 keep track new commits? | 00:02 |
| ← Sonderblade left | 00:03 |
| → glommer joined | 00:03 |
| → Pupeno joined | 00:06 |
| ← bentob0x left | 00:07 |
| ← saimon left | 00:09 |
| ← trapni left | 00:09 |
| → HG` joined | 00:14 |
| ← Yuuhi left | 00:16 |
| ← adante left | 00:19 |
| ← loswillios left | 00:21 |
| → loswillios joined | 00:21 |
| ← lukass left | 00:22 |
|
corecode_
| TGEN: you need to run with -i | 00:23 |
|
| TGEN: git execs more in the parent and does the work in the background | 00:23 |
|
| TGEN: you can also set GIT_PAGER=cat or something like that | 00:23 |
|
| TGEN: then it won't fork | 00:23 |
| ← nud_ left | 00:24 |
|
TGEN
| k | 00:26 |
|
duncanm
| sigh, is it the case that none of the emacs ifaces to git (vc-git.el, git.el) support branches? | 00:27 |
|
TGEN
| 45314 git CALL mmap(0,0x2000000,0x1,0x2,0x3,0,0x2d869000,0) | 00:29 |
|
| 45314 git RET mmap -1 errno 12 Cannot allocate memory | 00:29 |
|
| 45314 git CALL mmap(0,0x2000000,0x1,0x2,0x3,0,0x2d869000,0) | 00:29 |
|
| 45314 git RET mmap -1 errno 12 Cannot allocate memory | 00:29 |
|
| so yeah | 00:29 |
| ← HG` left | 00:29 |
| → HG` joined | 00:29 |
|
TGEN
| (git -i didn't work on 1.5.0) | 00:29 |
|
| anyhow, it's likely the default kernel MAXDSIZ value is to blame | 00:30 |
|
mugwump
| duncanm: vc-git.el displays the current branch name in the status bar | 00:32 |
|
duncanm
| mugwump: can i change the branch? | 00:32 |
|
mugwump
| TGEN: check on the mmap man page what those arguments imply | 00:32 |
|
| see if git is being a bad program or not | 00:32 |
|
| duncanm: dunno. I guess that would be more of a git.el thing | 00:32 |
|
| I'm not sure what being able to switch branches from my editor would win me | 00:33 |
|
duncanm
| i don't think git.el knows how to change branches | 00:33 |
| ← HG` left | 00:34 |
|
duncanm
| mugwump: if i change branches from the terminal, and edit/commit from emacs, it'll still go to master, wouldn't it? | 00:34 |
| → HG`` joined | 00:34 |
|
TGEN
| mugwump: nothing wrong with the arguments, just the number of consecutive mmap()s which together make the datasize limit trip over, which is hardwired in the kernel to be 512Mibyte max |:( | 00:34 |
|
duncanm
| because emacs only knows to commit to the master branch, afaict | 00:34 |
|
careo
| no. it'll go to whatever branch you're on regardless | 00:34 |
|
duncanm
| but it still says 'master' on the modeline | 00:34 |
|
mugwump
| "show other version" will work | 00:34 |
|
wagle_
| duncanm, emacs might get confused over what its got in its buffers and whats in the files | 00:35 |
|
mugwump
| you'll probably need to kill and reload the buffer after switching branches | 00:35 |
|
| which is arguably a bug | 00:35 |
|
duncanm
| hmm | 00:35 |
|
| it'd be nice if i can just switch branches from without emacs/vc/git.el | 00:35 |
|
| s/without/within/ | 00:36 |
|
mugwump
| well, it's just lisp ... go write it :) | 00:36 |
|
wagle_
| it often notices that the underlying file changed out from under the buffer (and offer to update buffer, or save to the file), but i don't know how much it checks to detect that | 00:36 |
|
careo
| could you just run the command in the shell from within emacs? | 00:37 |
| ← kzak__ left | 00:37 |
| ← loswillios left | 00:39 |
| → loswillios joined | 00:39 |
|
duncanm
| i don't even see the code in vc-git.el or git.el for setting the modeline | 00:39 |
| → ahx joined | 00:41 |
|
mithro
| is there a way to create "aliases" for branches in git? | 00:43 |
|
| I would like to have a "stable" branch alias which maps to a given branch | 00:44 |
| ← kukks left | 00:44 |
|
wagle_
| have tags, but they wouldnt follow the branch head around | 00:44 |
| → kukks joined | 00:45 |
|
ahx
| hi. When i do a pull ,is it possible to have it accept all incoming changes? - I dont want to resolve any given conflicts, instead i want accept every change that pull introduces (only this time). | 00:45 |
|
wagle_
| could make a foo-<fullversionnumber>-stable tag every so often | 00:46 |
|
mithro
| well, we already tag when a release occurs | 00:46 |
|
wagle_
| others might have more ideas than i | 00:46 |
|
mugwump
| mithro: see if git symbolic-ref is your answer | 00:47 |
|
Eridius
| ahx: maybe you should submit a patch to add a new merge strategy "theirs"? There's already an existing strategy "ours" | 00:48 |
|
ahx
| ah ok. i didnt know of "ours" | 00:49 |
|
| thanks | 00:50 |
|
duncanm
| Eridius: i thought rebase is that way to go for things like that | 00:50 |
|
Eridius
| duncanm: normally yes, but it seems like ahx wants to blow away any of his local changes that conflict with upstream | 00:50 |
|
gitster
| why not "fetch && reset --hard origin"? | 00:51 |
|
duncanm
| i'm trying to learn to use branches in my workflow, so far, i've just been using master | 00:52 |
|
mithro
| mugwump: I'm looking at that, and I'm not sure how I would use it | 00:52 |
|
| Eridius is assuming ahx doesn't want to lose non-conflicting changes. ahx? What is it you're trying to do here? | 00:52 |
|
mugwump
| mithro: on the server, git symbolic-ref refs/heads/stable refs/heads/master | 00:52 |
|
| would point "stable" to "master" | 00:52 |
|
duncanm
| Eridius: so i push my master branch to my public server, but if i want to setup a devel branch, and i push to that, i can't rewrite history locally and still keep in sync with the server, right? | 00:53 |
|
Eridius
| if you've pushed your own changes out to a remote repo, then no, you don't want to rebase | 00:53 |
|
duncanm
| hmm | 00:54 |
| ← ReinH left | 00:55 |
|
mithro
| mugwump: that seems to be what I want | 00:56 |
| ← cmarcelo left | 00:56 |
| ← KirinDave left | 00:57 |
|
mithro
| mugwump: thanks | 00:57 |
|
ahx
| Eridius, yes. I dont want to loose my non-conflicting changes. Just accept all conflicting changes. | 00:57 |
|
duncanm
| Eridius: come to think of it, i guess that's okay, because i can do the commit merging when i merge the devel branch back to master | 00:58 |
|
Eridius
| ahx: you could create a patch from your changes, reset --hard, pull, then attempt to reapply your patch | 00:58 |
| → KirinDave joined | 00:59 |
| ← glommer left | 00:59 |
|
ahx
| Eridius, ok. I understand. Thanks for help and good night. | 01:08 |
| ← ahx left | 01:08 |
| ← KirinDave left | 01:09 |
| → reval joined | 01:10 |
| → adante joined | 01:13 |
| → FunkeeMonk joined | 01:14 |
| ← HG`` left | 01:24 |
| ← flaguy left | 01:24 |
| ← mithro left | 01:29 |
| → mithro joined | 01:30 |
| ← devogon left | 01:30 |
| → adante_ joined | 01:33 |
| → KirinDave joined | 01:34 |
| → glommer joined | 01:34 |
| ← GSaldana left | 01:38 |
|
ebzzry
| Hi! For small personal projects, is it ok to make small frequent commits? | 01:45 |
|
tpope
| sure | 01:46 |
|
halorgium
| ebzzry: it is ok for all projects :) | 01:46 |
|
tpope
| that's okay on big projects too | 01:46 |
|
halorgium
| as long as they are atomic | 01:46 |
| ← FunkeeMonk left | 01:46 |
|
ebzzry
| Ohh, so changes, no matter how small, are ok to commit, even in rapid succession? | 01:47 |
|
halorgium
| commits are local remember | 01:48 |
|
tpope
| ebzzry: on a larger project, you might consider going back and cleaning them up again before pushing them | 01:48 |
| ← adante left | 01:48 |
| adante_ → adante | 01:48 |
|
tpope
| but generally, "commit early, commit often" is the way to go | 01:48 |
|
ebzzry
| Ok. | 01:49 |
| → garrin joined | 01:53 |
| ← zapnap left | 01:53 |
| ← glommer left | 01:56 |
| → kylem_ joined | 01:57 |
| ← reval left | 01:57 |
|
Ori_B
| oh, question | 02:03 |
|
| is there a short cut for "git-rebase origin/mybranch"? | 02:03 |
| → glommer joined | 02:03 |
|
Ori_B
| er. the git-fetch; git-rebase sequence, rather. | 02:04 |
|
| something like git-update? | 02:04 |
|
doener_
| in 1.5.4 there's git pull --rebase | 02:04 |
|
Ori_B
| ah. still a bit verbose, though. | 02:05 |
|
| (ie, not tab-completable) | 02:05 |
|
doener_
| you can configure your branch to default to rebasing instead of merging | 02:05 |
|
tpope
| in a good shell it is (or will be) | 02:05 |
|
Ori_B
| tpope: heh. fair enough. | 02:05 |
| ← kanru left | 02:07 |
| → fowlduck joined | 02:11 |
|
fowlduck
| der | 02:11 |
| ← kylem left | 02:13 |
| → reval joined | 02:14 |
| ← tvachon left | 02:14 |
| ← timocratic left | 02:16 |
| ← KirinDave left | 02:17 |
| → imyousuf joined | 02:17 |
| ← Strogg left | 02:19 |
| → antares joined | 02:21 |
| ← fowlduck left | 02:21 |
| → Strogg joined | 02:21 |
| → jj- joined | 02:21 |
| → moh_ joined | 02:23 |
| ← garrin left | 02:23 |
| ← gebi left | 02:28 |
| → gebi joined | 02:28 |
| ← wjlee left | 02:32 |
| ← railk left | 02:33 |
| ← RobotDeathSquad left | 02:37 |
| ← reval left | 02:38 |
|
imyousuf
| under what license is git released? | 02:38 |
|
tpope
| gpl 2 | 02:39 |
|
laj
| http://git.kernel.org/?p=git/git.git;a=blob;f=COPYING;h=6ff87c4664981e4397625791c8ea3bbb5f2279a3;hb=HEAD | 02:40 |
|
tpope
| and yes, all I did was look for that file | 02:40 |
|
| though I had a very strong suspicion | 02:40 |
| → garrin joined | 02:42 |
|
imyousuf
| thanks | 02:43 |
| → reval joined | 02:43 |
| ← reval left | 02:49 |
|
imyousuf
| A supplementary question regarding licensing - If I use git to develop a system which uses it for VCS and distribute it under commercial license (not GPL) will that be a problem? | 02:50 |
|
DrNick
| consult your lawyer | 02:52 |
|
imyousuf
| DrNick: before I do that just wanted to know the usual practice | 02:53 |
|
| and that will be done at a later stage | 02:53 |
|
tpope
| imyousuf: sounds very sketchy. it might could be done in the same way nvidia makes linux kernel modules | 02:55 |
|
| with clearly drawn boundaries etc | 02:56 |
|
| ianal obviously | 02:56 |
|
imyousuf
| tpope: we will not be modifying any code of git, but use the git commands | 02:56 |
|
mugwump
| imyousuf: absolutely not. | 02:56 |
|
imyousuf
| and distribute them | 02:56 |
|
mugwump
| read the GPL | 02:57 |
|
| it specifically grants blanket use of the application for any purpose | 02:57 |
|
tpope
| yeah the fact you'd have to distribute git yourself sounds like the deal breaker | 02:57 |
|
mugwump
| oh, right. sure, if what you're building is a derived work | 02:58 |
|
| (as shaky a term as that is internationally) | 02:58 |
|
imyousuf
| yes mugwump mine is a TOTALLY usage or derived work | 02:58 |
|
| the tricky part is distribution, am I allowed to distribute it with a (not under a) commercial license, the GIT license will be intact | 02:59 |
|
cehteh
| mhm ... how the other way around, i work on this webfrontend which i would like to be under the Affero GPL3 .. but it links libgit | 02:59 |
|
mugwump
| cehteh: GPLv2 is compatible with GPLv3, that's fine | 03:00 |
|
cehteh
| i hope so | 03:00 |
|
mugwump
| well, imyousuf, if you are building a program that uses git as a library, the requirements of the GPL may apply | 03:01 |
|
cehteh
| its agpl ... which is more proper for a webfrontend i think | 03:01 |
|
imyousuf
| GIT is rather used as a software whose commands the executed by the program, not the library | 03:01 |
|
mugwump
| yes, but it's not so clear-cut, because you'll likely be using the "plumbing" commands | 03:02 |
|
cehteh
| imyousuf: depends ... | 03:02 |
|
| i hope libgit becomes more useable over time | 03:02 |
|
mugwump
| the general principle is that you can't defeat the GPL just by wrapping a network or CLI layer around them | 03:02 |
|
imyousuf
| I see | 03:03 |
|
mugwump
| However that doesn't stop you distributing git source and your programs to people | 03:03 |
| ← pombreda left | 03:03 |
|
mugwump
| I think | 03:04 |
|
| AIUI you will be safe by avoiding plumbing commands, or by using a simple enough subset of commands that you could re-implement those portions for your release | 03:05 |
|
imyousuf
| hmm, my understanding was if I mention explicitly about GIT's licenses and user rights and distribute the source of git along with my program (under a commercial license) that should not be a problem | 03:06 |
|
mugwump
| If it was LGPL that would be the case | 03:06 |
|
imyousuf
| mugwump: can you give me an example of a plumbing command? | 03:06 |
|
mugwump
| 'git-cat-file' is plumbing; 'git-show' is porcelain | 03:06 |
| ← tongueroo left | 03:07 |
|
imyousuf
| I see, so git-commit, git-submodule, git-diff, they are porcelain? | 03:07 |
|
mugwump
| right | 03:07 |
|
| all the commands whose output is difficult to parse because it's designed for people :) | 03:07 |
|
imyousuf
| great, because I will be using the porcelain commands only | 03:07 |
|
mugwump
| well, the regular "ruling" (actually, statement from the FSF) on copyright of output from GPL commands applies | 03:08 |
|
cehteh
| mugwump: sorry to tell you GPL3 isnt compatible with GPL2 .. or actually i think i have a problem | 03:08 |
|
mugwump
| cehteh: do you understand why or can you cite a reference for that? | 03:09 |
|
cehteh
| http://www.gnu.org/philosophy/license-list.html | 03:09 |
|
| Please note that GPLv3 is not compatible with GPLv2 by itself. However, most software released under GPLv2 allows you to use the terms of later versions of the GPL as well. | 03:09 |
|
| ... and the AGPL3 is even more special, but has provisions to be compatible with GPL3 ... not really so with GPL2 | 03:10 |
|
mugwump
| more at http://www.gnu.org/licenses/rms-why-gplv3.html | 03:11 |
| → kanru joined | 03:12 |
|
cehteh
| well i guess git wont be upgraded to gpl3 anytime soon | 03:12 |
|
| (i mean git is not the kernel imo here is gpl3 more proper than for the kernel, but well) | 03:13 |
|
| madewokherd reads the first few paragraphs and thinks "wow, that would be a mess if things started using gpl3" | 03:13 |
| → devogon joined | 03:14 |
|
mugwump
| Interesting, I thought that the clause was not that restrictive | 03:16 |
|
| This file is licensed under the GPL v2, or a later version at the discretion of Linus. | 03:16 |
|
| ^^ What a Bonehead | 03:16 |
|
cehteh
| hehe | 03:16 |
|
imyousuf
| can we actually request the git team (or Linus) to use a little lesser restrictive license, such as LGPL or CDDL? or even dual license git? | 03:17 |
|
cehteh
| imyousuf: i think you dont get the idea about free software :) | 03:18 |
| → aroben joined | 03:18 |
|
tpope
| imyousuf: you can try all you want, wouldn't expect much | 03:18 |
|
cehteh
| actually i have a problem to use a more strict license :) | 03:18 |
|
imyousuf
| :) oh ok, I am actually wanting to learn :) | 03:19 |
|
tpope
| it's not like he picked it out of the blue, he's been using it with the kernel for a dozen plus years | 03:19 |
| ← jj- left | 03:19 |
|
| cehteh wonders if a "may i use your humble gpl2 project as library in a agpl3 project" has any chance | 03:20 |
|
mugwump
| Don't use the CDDL | 03:21 |
|
| That's a stupid license | 03:21 |
|
cehteh
| tpope: well kernel and git have different objectives, as i saied before, gpl3 for git wont do any problem i think, but its not my decision | 03:21 |
|
mugwump
| The person who wrote it got up on stage and admitted they included terms specifically designed to make it incompatible with the GPL | 03:21 |
|
tpope
| cehteh: I think he'd be more amenable to your case than imyousuf | 03:22 |
|
| but, perhaps not enough to switch | 03:22 |
|
imyousuf
| mugwump: I do agree it is horribly incompatible with GPL | 03:22 |
|
cehteh
| tpope: i dont want a switch, just an agreement/exception | 03:22 |
| → eMBee joined | 03:23 |
|
mugwump
| no doubt those retarded and pointless clauses were invented by twats like Joerg "you guys are all idiots" Schilling | 03:23 |
|
| s/invented/inspired/ | 03:23 |
|
cehteh
| haha | 03:24 |
|
mugwump
| cehteh: you'd need to get all contributors to agree | 03:24 |
|
imyousuf
| btw can I use the output of a git porcelain in a product other than GPLed? | 03:24 |
|
mugwump
| it's not just Linus | 03:24 |
| → jj- joined | 03:24 |
|
cehteh
| mugwump: no copyright assignment for git? | 03:24 |
|
tpope
| to save you a trip to wikipedia that's the cdrecord guy | 03:25 |
|
mugwump
| imyousuf: "use" of GPL programs is generally considered to be fine - there's a FSF statement on this | 03:25 |
|
| cehteh: no, there isn't. Just the signed-off-by: lines | 03:25 |
| ← tcoppi left | 03:25 |
|
imyousuf
| ah ok, thats in fact great | 03:25 |
|
cehteh
| i've previously done 'gpl2 only' things too .. but contributions should be gpl2-or-any-later, or copyright assignment | 03:25 |
|
imyousuf
| than I guess I can put forward of using GIT as the product for VCS in this case :) | 03:26 |
|
tpope
| now you've got me worried | 03:26 |
|
mugwump
| imyousuf: sure, and don't forget, reimplementing plumbing commands isn't that difficult | 03:27 |
|
tpope
| I wrote some glue that basically helps you coordinate a git-svn repo with a trac website | 03:27 |
|
imyousuf
| yup I can always have a look at the existing ones :), but the porcelains will suffice my requirements | 03:27 |
| → KirinDave joined | 03:28 |
|
imyousuf
| actually so that I can use GIT (and not Mercurial) in the product I will have to spend hours coming up with a NetBeans VCS plugin for GIT :) but I will happily do it to be able to use GIT :) | 03:28 |
|
tpope
| lots of running things like git-apply and git-rev-parse behind the scenes | 03:28 |
|
| I licensed it MIT, now I'm wondering if that's an issue | 03:28 |
| → tcoppi joined | 03:28 |
|
tpope
| my understanding is it'd be okay but I'm not real clear on the details | 03:28 |
|
mugwump
| MIT grants permission to relicense, so it's fine | 03:29 |
|
tpope
| I just wasn't sure if the gpl would "infect" my work | 03:29 |
|
| not that I'm all that picky about the license for a petty project like this, I'm just flowing with the community | 03:30 |
|
imyousuf
| another question :) : I want to come with a Java Native Interface (another project not the one mentioned above) API for git, can I dual license it under CDDL and GPLv2? | 03:31 |
|
| the reason for stupid CDDL is | 03:31 |
| → adante_ joined | 03:32 |
|
imyousuf
| my company are *afraid* of using GPL libraries (without Classpath exception) in our commercial products. | 03:32 |
|
tpope
| lots of sun projects are dual licensed under the gpl and cddl | 03:32 |
| ← KirinDave left | 03:32 |
|
imyousuf
| yeah, but I will be using GPLv2ed git as lib for this (though in this case I will not be distributing git), that is why I am asking whether I can use CDDL or simple single license it under LGPL | 03:33 |
|
cehteh
| no only gpl2 | 03:34 |
|
mugwump
| in general the more permissions you grant the better | 03:35 |
|
| assuming they're *good* permissions :) | 03:35 |
|
imyousuf
| :) | 03:35 |
|
| so which one actually grants the most "good" permissions :) | 03:35 |
|
| ? | 03:35 |
|
cehteh
| mugwump: the better yes .. but still incompatible | 03:35 |
|
mugwump
| Well, dual CDDL / GPLv2+ seems reasonable | 03:35 |
|
cehteh
| when you include a gpl2ed library you cant release your code as lgpl | 03:36 |
|
mugwump
| sure you can | 03:36 |
|
| you can license any code under anything you want | 03:36 |
| ← bobesponja left | 03:36 |
|
mugwump
| (any code you are the copyright holder for, that is) | 03:37 |
| → adante__ joined | 03:37 |
|
mugwump
| whether that impacts on other people's licensing, that's the issue | 03:37 |
|
cehteh
| ok yes .. but then you give it away with a incompatible license which translating users have no license at all | 03:38 |
|
mugwump
| hence ... the more licenses you grant permission under, the more likely it is the users will be able to find a combination that works | 03:38 |
|
imyousuf
| I get it mugwump and cehteh | 03:39 |
|
cehteh
| mhm | 03:39 |
|
| and i am more confused :) | 03:39 |
|
imyousuf
| so now the question is can a CDDLed product use GPL2 libs? | 03:39 |
| → jerbear joined | 03:40 |
|
mugwump
| heh, not if it's only CDDL | 03:40 |
|
cehteh
| actually you can make a GPL3'ed program linking a propietary lib .. so i see no reason why i cant link a gpl2'ed lib to my gpl3 program | 03:40 |
|
imyousuf
| I see, so when someone wants to use my product under CDDL will that be possible with a GPL2ed lib in the classpath? | 03:41 |
|
madewokherd
| everyone just use something public-domain equivalent, it's easier >_< | 03:41 |
|
imyousuf
| btw the product is dual licensed under GPLv2 and CDDL | 03:41 |
|
mugwump
| If it exposes the programming interface (ie, the plumbing) of the GPLv2 app out the other side, then the program using it will need the GPLv2 as well | 03:41 |
|
| If it's just doing abstract things, ie a model of operation invented by your library, then probably not | 03:42 |
|
cehteh
| madewokherd: not really, here in germany, public domain is legally not possible | 03:42 |
|
imyousuf
| so I can actually plumb the plumbing to avoid the issues :) | 03:42 |
|
mugwump
| sure. say your library used the plumbing, and the exposed a generic, VCS-agnostic interface on the other side | 03:43 |
|
| You're not using the combined program as a library | 03:43 |
|
tpope
| cehteh: really, how so? | 03:43 |
|
| I've never heard that | 03:43 |
|
mugwump
| Well, actually, maybe you are. hrmm. | 03:43 |
|
| Well, I hope we've helped enough for you to write a nice e-mail to the FSF lawyers to ask :) | 03:44 |
|
imyousuf
| yeah, mugwump :) now I at least know what to ask :) | 03:44 |
|
| thanks mugwump, cehteh and tpope | 03:45 |
|
cehteh
| tpope: we differentiate between copyright which is transferable (ownership?) and creatorship which is not, when you created something you did it you cant tansfer this fact | 03:45 |
|
| PD in the US sense means you drop all rights/privileges you have .. | 03:46 |
|
| but in germany creatorship has some state you cant drop | 03:47 |
|
tpope
| is there a practical difference? | 03:47 |
| ← adante left | 03:48 |
| adante__ → adante | 03:48 |
|
cehteh
| not much, rather obscure cases | 03:48 |
| → pergesu joined | 03:50 |
|
tpope
| interesting to know | 03:51 |
|
| cehteh is not a lawyer | 03:51 |
|
pvh
| so I think I just *really* screwed up my "git rebase -i" | 03:51 |
|
doener_
| there's always the WTFPL | 03:51 |
| ← mithro left | 03:51 |
|
mugwump
| WTFPL is dangerous | 03:51 |
| → mithro joined | 03:52 |
|
mugwump
| it doesn't disclaim responsibility | 03:52 |
| ← adante_ left | 03:52 |
|
madewokherd
| I was thinking of MIT | 03:52 |
|
| mugwump not a lawyer either, but was deeply involved with preparing this: http://www.e.govt.nz/policy/open-source/open-source-legal2 | 03:53 |
|
pvh
| At the end of my rebase I got the cryptic error message "cannot lock the ref". What gives? | 03:53 |
|
mugwump
| pvh: you just need to delete the lock and continue probably | 03:54 |
|
pvh
| mugwump: where would i find the lock? | 03:54 |
|
mugwump
| it'll be under .git/refs | 03:54 |
|
pvh
| is it a .file? | 03:54 |
|
| imyousuf just send an email to FSF :) | 03:54 |
|
pvh
| mugwump: i don't see anything that looks like a lock file using find .git | grep lock or grep lock .git -R | 03:56 |
| ← kukks left | 03:56 |
|
jerbear
| is anyone here familiar with PIL? | 03:57 |
|
mugwump
| the parrot language? | 03:57 |
|
jerbear
| oops, wrong channel | 03:58 |
|
mugwump
| pvh: *shrugs* ... strace it to see what it's trying | 03:58 |
| ← lamont left | 03:58 |
| → lamont joined | 03:58 |
| ← lamont left | 03:59 |
| → KirinDave joined | 04:02 |
| → lamont joined | 04:02 |
| → hharrison joined | 04:04 |
| ← Strogg left | 04:06 |
| → Strogg joined | 04:06 |
| → kylem joined | 04:07 |
| ← sgrimm left | 04:07 |
| ← csc` left | 04:10 |
|
Toad
| anyone know how one comes by a beta password for github? | 04:13 |
| ← aroben left | 04:20 |
| ← jerbear left | 04:20 |
|
Toad
| anyone here use repo.or.cz? | 04:22 |
|
mugwump
| plenty | 04:22 |
| ← glommer left | 04:22 |
| ← kylem_ left | 04:23 |
| ← lamont left | 04:24 |
|
imyousuf
| Toad: is there anything in particular you want to know on repo.or.cz? | 04:24 |
|
Toad
| imyousuf: I just registered an account, but it doesn't seem to be working properly with my public key | 04:25 |
|
| it's prompting for a password | 04:25 |
| → kevwil joined | 04:25 |
|
imyousuf
| I see, I faced the same problem when I did not copy my key correctly | 04:25 |
|
Toad
| hm, it was probably hard wrapped | 04:26 |
|
imyousuf
| but later when I copied the again (the whole file content) it worked ok | 04:26 |
|
Ilari
| Toad: Did you register your public key? Did you copy the keytype ID (ssh2-...) too (somebody didn't)? | 04:26 |
|
imyousuf
| yeah thats what I missed first time :) | 04:27 |
|
Toad
| Ilari: yep, just copied my entire id_dsa.pub | 04:27 |
|
| just tried again and made sure there were no hard wraps, same deal | 04:27 |
|
| now I've got todd, tlipcon, and tlipcon2 | 04:27 |
|
imyousuf
| Toad: you will be prompted for the password of the key if you have not done ssh add | 04:27 |
|
Toad
| imyousuf: nope, it's in my ssh agent | 04:27 |
|
| 1024 fa:36:bf:e1:77:37:7b:2f:bd:17:b5:93:25:fb:90:88 /home/todd/.ssh/id_dsa (DSA) | 04:27 |
|
imyousuf
| I am using ubuntu and I am asked for the password if I have not done ssh-add | 04:29 |
|
Ilari
| Toad: Did you check that it tries to use correct user ID? Somebody used incorrect one... | 04:29 |
|
Toad
| oh, I think it did actually wrap it... stupid xterm | 04:29 |
| → mediogre joined | 04:29 |
|
Toad
| Aha, yep, that was it. wonder if I can email them and have them merge my now 4 accounts | 04:30 |
| ← antares left | 04:33 |
| ← careo left | 04:33 |
| ← devogon left | 04:34 |
|
Toad
| hrm, now I'm getting errors with permission denied trying to create temporary file | 04:34 |
|
| not sure if that's on my end or theirs | 04:34 |
|
| Writing 4014 objects... | 04:35 |
|
| fatal: Unable to create temporary file: Permission denied | 04:35 |
|
| error: pack-objects died with strange error | 04:35 |
|
| oh, wonder if I didn't give access to this project to my last user | 04:35 |
| → lamont joined | 04:35 |
|
imyousuf
| and also add yourself to the project :) | 04:35 |
| ← Pupeno left | 04:36 |
|
| Ilari wonders why there isn't even simple regex check on repo.or.cz to reject obiviously bogus public keys... | 04:36 |
| → doener joined | 04:37 |
| → Pupeno joined | 04:39 |
|
imyousuf
| Toad: also when pushing a new repo for the first time use --all | 04:44 |
|
Toad
| imyousuf: ah, too late. I just used master:refs/heads/master | 04:44 |
|
imyousuf
| :) | 04:44 |
|
| as long as it works :) | 04:44 |
|
Toad
| appears to | 04:45 |
|
| just needed an easy way to share a git repo with people outside the companyh | 04:45 |
|
Ilari
| Something like: 'ssh2-(dss|rsa) [a-zA-Z0-9\+/=]+( .*)?' | 04:45 |
|
imyousuf
| try cloning it to another location to verify | 04:45 |
|
Toad
| gitweb seems to be showing it nicely. I'll try a clone to make sure | 04:45 |
| → FunkeeMonk joined | 04:45 |
|
Ilari
| Toad: Just 'master' on push should work... | 04:46 |
|
imyousuf
| Ilari: adding that regex would come in extremely handy for newcomers like myself | 04:46 |
|
Ilari
| imyousuf: I don't know if it actually works but... | 04:46 |
|
Toad
| yep, cloned just fine | 04:46 |
|
Ilari
| Nope, it does't. | 04:47 |
|
| Sightly fixed version: 'ssh-(dss|rsa) [a-zA-Z0-9\+/=]+( .*)?'. That at least accepts my public key. | 04:47 |
|
imyousuf
| ah yup | 04:48 |
|
| Toad: if you have any other branch other than master that you want to push git push master will not push them, AFAIK | 04:48 |
|
| so you will need to push them individually | 04:48 |
|
Toad
| imyousuf: yea, I pushed the ones I wanted individually | 04:48 |
|
| imyousuf: I've been using git for several months now, just hadn't used repo.or.cz yet | 04:48 |
|
imyousuf
| oh ok :) | 04:49 |
|
Toad
| (we use git at work for version control, but it's closed source) | 04:49 |
|
Ilari
| Actual algorithm is as follows: If no refspecs are specified, take set of local branch names, set of remote branch names, do intersection and push those branches in intersection. | 04:49 |
|
| IIRC, one can specify multiple refspecs on one push command, so 'git push foo bar baz' should push bar and baz to foo. | 04:50 |
|
imyousuf
| yup | 04:50 |
|
Ilari
| imyousuf: Checked if that regex thingy works? It is in the pattern syntax used by egrep. | 04:51 |
|
Toad
| headed home from work now. thanks guys | 04:51 |
|
| (man, should stop staying til midnight!) | 04:51 |
|
imyousuf
| anytime Toad | 04:52 |
| ← mithro left | 04:52 |
| ← doener_ left | 04:53 |
|
imyousuf
| Ilari: sed -e 's/ssh-(dss|rsa) [a-zA-Z0-9\+/=]+( .*)?/true/p' /home/imyousuf/.ssh/id_rsa.pub this did not work | 04:53 |
|
| imyousuf is trying to figure out why | 04:53 |
|
Ilari
| imyousuf: There's embedded / in the expression. | 04:54 |
|
doener
| sed wants \(...\) not (...) | 04:54 |
|
imyousuf
| yes and ( as well | 04:54 |
| → njero joined | 04:55 |
|
Ilari
| command I used: 'egrep "ssh-(dss|rsa) [a-zA-Z0-9\+/=]+( .*)?" .ssh/id_dsa.pub'. | 04:55 |
|
| That BASE64 checking could be better... | 04:56 |
| ← lamont left | 04:57 |
|
doener
| Ilari: s/dss/dsa/? | 04:57 |
|
Ilari
| Sightly improved version: 'ssh-(dss|rsa) [a-zA-Z0-9\+/]+=*( .*)?' | 04:57 |
|
| doener: It's DSS in the key I have. | 04:57 |
|
doener
| right, just created a dsa key to check. interesting | 04:57 |
| → lamont joined | 04:57 |
|
imyousuf
| sed -e 's/ssh-\(dss\|rsa\) [a-zA-Z0-9+\/\=]\+\( .*\)\?/true/p' /home/imyousuf/.ssh/id_rsa.pub this worked | 04:58 |
|
Ilari
| IIRC, Digital Singnature Scheme | 04:58 |
|
| imyousuf: Why does it give true twice? | 04:59 |
|
imyousuf
| s/-e/-ne/ | 04:59 |
|
doener
| or just drop the p | 04:59 |
|
ribas
| mugwump: awake!? | 04:59 |
|
imyousuf
| yeah that works too, thanks doener | 05:00 |
|
mugwump
| ribas: sure | 05:00 |
|
ribas
| mugwump: =) | 05:00 |
| → sgrimm joined | 05:01 |
| → tvachon joined | 05:01 |
| ← tvachon left | 05:01 |
|
ribas
| mugwump: can you read one paragraph for me?! And help make it better? it is about my README (patch) for gitweb | 05:01 |
| ← madewokherd left | 05:04 |
| ← lamont left | 05:04 |
| → lamont joined | 05:06 |
|
ribas
| mugwump: here we go, if anyone more is awake may help to =) | 05:06 |
|
| * owner (or gitweb.owner) | 05:06 |
|
| File with project (of a repository) owner, single lined. By default set to | 05:06 |
|
| filesystem's directory owner. You can use gitweb.owner repo configuration | 05:06 |
|
| variable, but file takes precedence. | 05:06 |
| ← lamont left | 05:06 |
| → mithro joined | 05:08 |
|
mugwump
| the possession should move to the end of the compound noun - ie, filesystem directory's | 05:08 |
|
| "single lined" sounds awkward, perhaps "a single line" | 05:08 |
| ← kevwil left | 05:09 |
|
mugwump
| also, you're missing articles in a couple of places | 05:09 |
| → srid joined | 05:10 |
| ← KirinDave left | 05:10 |
| → pombreda joined | 05:10 |
|
mugwump
| File with *the* owner of the repository, on a single line. By default set to hte filesystem directory's owner. You can use *the* gitweb.owner repo configuration variable, but *the* file takes precedence. | 05:10 |
| ← FunkeeMonk left | 05:12 |
|
ribas
| mugwump: thanks a lot =) | 05:15 |
| → KirinDave joined | 05:15 |
| → lamont joined | 05:17 |
|
ribas
| now, going to sleep =) soon i'll be going to Rio de Janeiro =D | 05:30 |
| ← srid left | 05:32 |
| → spearce joined | 05:34 |
| ← mithro left | 05:35 |
| ← njero left | 05:41 |
|
spearce
| hah. 70 line insertion, 43 line commit message. i'm horrible. | 05:43 |
|
| how did i ever get by with "cvs -m foo" in the early days? | 05:43 |
| ← Ingmar left | 05:45 |
| → thiago_h1me joined | 05:45 |
| → Ingmar joined | 05:45 |
| ← KirinDave left | 05:46 |
| ← thiago_home left | 05:46 |
| ← fhobia left | 05:46 |
| ← PerlJam left | 05:47 |
| → PerlJam joined | 05:47 |
| ← faheem left | 05:53 |
| → faheem joined | 05:53 |
| ← lamont left | 05:54 |
| → lamont joined | 05:56 |
| ← peper left | 05:57 |
| → peper joined | 05:57 |
|
gitster
| Yeah, you should strive for a log message that is about twice as long as the patch text ;-) | 05:58 |
|
spearce
| hey, at least it describes wtf i'm doing. | 05:58 |
|
| now if only the code actually matched the commit message.... *sigh* | 05:58 |
|
| stupid f'ing bugs. | 05:58 |
|
| damn. | 06:00 |
|
| ok, so i gotta choice. | 06:00 |
|
| always use a pipe between the hook and receive-pack for stderr, even if sideband wasn't supported on the client, and have receive-pack dump the data to stderr... or try to realize we didn't enable sideband so allow receive-pack's stderr to inherit into the hook, like we use do to. | 06:00 |
|
| the code looks worse with the latter option. lots of "if (use sideband)" tests. | 06:01 |
| → reval joined | 06:01 |
|
kmap
| Is there any way to set up a push/pull only git repository on a remote machine which doesn't have git installed (without installing git there of course) | 06:03 |
|
gitster
| I do not recall the details of how I did it on the upload-pack side... | 06:03 |
|
| No. | 06:03 |
|
kmap
| I guess it'd make sense to install git there... | 06:03 |
|
| gitster: Right. Thanks | 06:03 |
|
spearce
| gitster: looks like you did the first case, always use the pipe. | 06:03 |
|
| kmap: you can publish a repository over standard HTTP, but to get the repository there you'd have to use scp or rsync or something manually. its really annoying. its really best if you can just install git. | 06:04 |
|
kmap
| spearce: I have scp access. | 06:07 |
|
| spearce: But the point is, yes... I better get git there. :-) | 06:08 |
|
spearce
| so git on it. :) | 06:08 |
|
kmap
| spearce: Right! :-) | 06:08 |
|
| spearce was mr. create garbage today. | 06:08 |
|
spearce
| i kept rebasing the same 68 patches over and over again. generated 6000 loose objects in only a few hours. | 06:09 |
|
| insane. | 06:09 |
| → saimon joined | 06:09 |
|
spearce
| at best that project usually only grows about 200 objects/week. if that. | 06:09 |
|
| so gitster, you said you were perhaps more comfortable with this pgp based authentication in git-daemon than some of the other approaches we've kicked around? | 06:11 |
| ← reval left | 06:19 |
|
gitster
| perhaps more comfortable is an overstatement, I should say. | 06:20 |
|
spearce
| less queasy? :) | 06:22 |
|
gitster
| But it surely is much less crazy compared to the other stuff. | 06:22 |
| → jeremyb joined | 06:23 |
|
spearce
| unfortunately all us smart people haven't come up with too many great solutions. | 06:24 |
| ← nkallen left | 06:29 |
| → nkallen joined | 06:30 |
| → ken_ joined | 06:33 |
| → robinr joined | 06:33 |
|
mugwump
| spearce: will you be around in an hour or so to chat about this? I'm about to walk home | 06:40 |
|
spearce
| no, probably not, i'll be heading to bed about then. | 06:40 |
|
mugwump
| ah, ok | 06:40 |
|
| well... anyway, I was going to mention, that the design comes from trying to distill out all the essential parts of the cpan6 project I was briefly involved in | 06:41 |
|
spearce
| hmm. | 06:41 |
|
mugwump
| so, we discussed this problem space pretty thoroughly | 06:42 |
|
spearce
| 30 page cpan6-design.pdf... that you authored. worth reading parts of it? :) | 06:43 |
|
mugwump
| however I really didn't like the other guy's insistence that all the messages be specced in xmlschema | 06:43 |
|
| the top level stuff, sure | 06:43 |
|
| hang on, I'll review it | 06:43 |
|
spearce
| i don't want to keep you. i'll skim this then head to bed. i think i need to chew on it a few hours in the back of my mind before i can write anything intelligent again on this subject. :) | 06:44 |
|
mugwump
| cool, sounds about right :) | 06:44 |
|
| sleep well! | 06:44 |
| ← Sho_ left | 06:45 |
|
mugwump
| oh, the results of the review - that design document isn't all irrelevant, but the namespaces stuff (ie, higher level stuff) would just sit in an "index" project, ie the basic system doesn't have to care | 06:45 |
|
| but enough... I'm off home | 06:46 |
| → namenlos joined | 06:59 |
| ← dysinger left | 07:03 |
| ← robinr left | 07:07 |
| Dodj|away → Dodji | 07:14 |
| → pmezard joined | 07:23 |
| ← EricWinchell left | 07:25 |
| thiago_h1me → thiago_home | 07:29 |
| ← Ademan left | 07:29 |
| → Ademan joined | 07:29 |
|
hachi
| anyone know how to get git-cvsimport to authenticate with the cvs server? | 07:30 |
|
| I'm doing a cvs login ahead of time, but it's not sending the password to the server when it tries to log in... according to the strace I'm reading | 07:30 |
| ← Phoop left | 07:30 |
| → bentob0x joined | 07:34 |
|
up_the_irons
| testing.. | 07:39 |
| ← ken_ left | 07:43 |
| ← pmezard left | 07:46 |
| ← capisce left | 07:48 |
|
up_the_irons
| testing (again) | 07:49 |
| ← loops left | 07:51 |
| → johan-s joined | 07:55 |
| → KirinDave joined | 07:59 |
| → langenberg joined | 08:15 |
| ← spearce left | 08:16 |
| ← pergesu left | 08:26 |
| → jpetso joined | 08:29 |
|
jpetso
| Tv: ping | 08:29 |
|
up_the_irons
| jpetso: he's probably resting after a long night of team fortress 2 | 08:30 |
|
jpetso
| heh | 08:30 |
|
| up_the_irons: with you participating? | 08:30 |
|
up_the_irons
| jpetso: no, but he mentioned he was getting into it | 08:31 |
|
jpetso
| mmkay | 08:31 |
|
| up_the_irons: ok, thanks for the info | 08:31 |
|
up_the_irons
| jpetso: i try to stay away from addictive video games, b/c i sure can get addicted... | 08:31 |
|
jpetso
| up_the_irons: nothing better than a state of trance looking at the ever-moving screen | 08:32 |
|
up_the_irons
| jpetso: :) | 08:32 |
|
jpetso
| :P | 08:32 |
| ← KirinDave left | 08:32 |
|
jpetso
| Tv: (when you get up.) seems like our release system overlord dww still considers branch and tag restrictions necessary: http://groups.drupal.org/node/8526#comment-26347 | 08:35 |
|
up_the_irons
| but who cares about the CVS deploy module, lol | 08:37 |
| → ferdy joined | 08:39 |
| → pmezard joined | 08:39 |
| ← somnium left | 08:41 |
| → dsop joined | 08:44 |
| → Maik joined | 08:45 |
| ← Maik left | 08:45 |
| → Maik joined | 08:45 |
| ← Maik left | 08:45 |
| ← gebi left | 08:52 |
| → gebi joined | 08:52 |
| → FunkeeMonk joined | 08:54 |
| ← saimon left | 08:57 |
|
jpetso
| up_the_irons: if Drupal would switch to git, the CVS deploy module would certainly get converted into a Git deploy module, so... yah, it's a valid example | 09:04 |
|
hlisv561
| jpetso: What does the CVS deploy module even do? | 09:04 |
|
jpetso
| hlisv561: i'm not totally sure what it does exactly, but it helps rolling out Drupals using CVS checkouts instead of release tarballs | 09:05 |
|
up_the_irons
| jpetso: oh ok | 09:05 |
| ← kanru left | 09:07 |
| → Sho_ joined | 09:12 |
| ← sverrej left | 09:12 |
| → kzak__ joined | 09:23 |
| → saimon joined | 09:24 |
| → robewald|work joined | 09:44 |
| → sverrej joined | 09:49 |
| → pmezard_ joined | 09:55 |
| ← pmezard left | 09:55 |
| → Fullmoon joined | 10:01 |
| → devogon joined | 10:07 |
| → octopod joined | 10:07 |
|
context
| jpetso: id rather hope deploying any software wouldnt depend on a scm of any type | 10:08 |
|
| cvs or git or any other | 10:08 |
|
| i dont want my production system depending on my scm software | 10:08 |
| ← kzak__ left | 10:09 |
|
jpetso
| context: it doesn't, but 1. you can do it, and 2. using the CVS deploy module, while not required, makes things easier | 10:09 |
| → kzak__ joined | 10:10 |
|
jpetso
| context: if i understand correctly, it just quiets the automatic update notifier and gets the version from the VCS tag instead | 10:10 |
|
| context: nothing that should prevent you from doing it your way, though | 10:11 |
| ← vzctl left | 10:12 |
|
is_null
| hello everybody, how is it possible to rename the "master" branch please ? | 10:12 |
| ← jpetso left | 10:13 |
|
is_null
| also : why doesn't git remove from the working directory, the files that were created and added in another branch ? is it a normal behavior ? | 10:16 |
|
Debolaz2
| is_null: Yes, that is normal. It leaves untracked files alone. | 10:17 |
|
is_null
| Debolaz2: thanks | 10:21 |
| ← FunkeeMonk left | 10:22 |
| → ebel joined | 10:24 |
| → priidu_ joined | 10:25 |
| → tjafk2 joined | 10:26 |
|
Tv
| is_null: renaming master: git branch -m master foo | 10:37 |
| ← imyousuf left | 10:39 |
|
is_null
| Tv: thanks i had figured with the manual | 10:41 |
|
| (hopefully) | 10:41 |
| ← timj left | 10:42 |
| → rubydiamond joined | 10:42 |
| ← namenlos left | 10:50 |
| → namenlos joined | 10:54 |
|
is_null
| is it possible to checkout and specify how deep should the history be ? For example, i'd like te checkout with only the 500 last commits | 10:56 |
|
Mikachu
| yes | 10:57 |
|
up_the_irons
| is_null: use --depth | 10:58 |
|
is_null
| thanks | 10:58 |
|
| is_null deserves to be RTM'ed | 10:59 |
|
up_the_irons
| hehe | 10:59 |
|
Mikachu
| my "yes" was meant to imply that :) | 10:59 |
| ← johan-s left | 11:04 |
|
is_null
| what does this error mean please ? http://rafb.net/p/D8CFCK66.html i've found a thread about it on internet but it's 40-messages long and relates to cygwin and winxp which is not revelant in my case | 11:07 |
| → janm joined | 11:07 |
|
context
| is_null: well find the real command out of your ant file | 11:09 |
|
| so you can get a better mesage possibly | 11:10 |
| ← namenlos left | 11:10 |
|
context
| that or its completely related to ant itself and has nothing to do with git | 11:10 |
|
Tv
| is_null: someone tried to cat a git ref file directly? that's broken | 11:11 |
|
| is_null: they should use git rev-parse | 11:11 |
|
| even packed refs will make that fail | 11:11 |
|
context
| heh | 11:12 |
| → kanru joined | 11:12 |
|
is_null
| context: i experience the same problem without ant | 11:12 |
|
context
| is_null: so yeah, you gave us 3 lines of ant output, no /real/ command, no /real/ output, and no /real/ context | 11:12 |
|
is_null
| my bad, let me prepare a description of the problem | 11:13 |
|
context
| the cat: line is compltely understandable, thats standard | 11:13 |
|
| so 2 lines of output | 11:13 |
|
Tv
| the fault is in whoever uses cat for that purpose | 11:13 |
|
context
| is_null: dont use non git tools to get sha1 hashes from a git repo | 11:14 |
| → stillLotR joined | 11:14 |
| ← fultilt left | 11:15 |
| → johan-s joined | 11:21 |
| ← garrin left | 11:21 |
| → namenlos joined | 11:22 |
| kmap → should | 11:25 |
| should → kmap | 11:25 |
| ← LotR left | 11:33 |
| → lcapitulino joined | 11:34 |
| → Phoop joined | 11:35 |
| → glommer joined | 11:35 |
|
Ademan
| i'm looking at the man page for git-push, you can push things to git across http? O_o is there any sort of authentication that goes on? | 11:38 |
|
is_null
| ok, i got my report done : http://rafb.net/p/FtDzmn19.html any tip or idea please ? | 11:40 |
| ← robewald|work left | 11:44 |
|
hlisv561
| Ademan: Authentication on server side is implemented by HTTP daemon. What is supported in client side is dictated by curl library used. | 11:49 |
|
Ademan
| hlisv561: so in the case of apache would .htaccess dictate that? | 11:49 |
|
hlisv561
| Ademan: The authetication employed is matter of Curl library in client side and Apache on server side. As far as I know, there is no specific authentication support in git itself for HTTP push. | 11:50 |
| → mithro joined | 11:50 |
|
hlisv561
| Ademan: Probably apache can be configured in this regard using .htaccess... | 11:51 |
|
Ademan
| alright thanks | 11:51 |
| → cedricv joined | 11:52 |
|
hlisv561
| is_null: Maybe default branch on remote side is set to nonexistent one? | 11:52 |
|
is_null
| hlisv561: indeed, thanks ! | 11:52 |
| ← kelvie left | 11:54 |
| → vbgunz joined | 11:58 |
| stillLotR → LotR | 12:04 |
| → dsaxena joined | 12:10 |
| → njero joined | 12:19 |
| ← mithro left | 12:20 |
| → mithro joined | 12:20 |
| → Yuuhi joined | 12:24 |
| → kelvie joined | 12:28 |
| ← Cap_J_L_Picard left | 12:33 |
| → Cap_J_L_Picard joined | 12:34 |
| → cmarcelo joined | 12:39 |
|
octopod
| if I have two git-svn clones of the same repo on two different machines, is it possible to set up so I can git push/pull between them before dcomitting from one? Or am I best doing a normal git clone of one of them from the other? | 12:44 |
|
hlisv561
| octopod: I think that using git-svn with repository setup like that is not very advisable due to limited branch model of SVN. And one has to be careful doing pushes into repositories with working trees due to push-to-HEAD problems. | 12:51 |
| ← ironfroggy left | 12:52 |
| → FunkeeMonk joined | 12:52 |
|
hlisv561
| octopod: And neither is doing git clone of one from other necressarily a good idea for repo that has branches to dcommit to SVN. | 12:54 |
|
octopod
| hlisv561: ok, thanks... basically what I want to do is be able to move local changes to a development server to let others preview them before they're committed to svn | 12:55 |
|
hlisv561
| octopod: DVCS (such as Git) easily can take development model that is hierarchial with peering. CVCS (such as SVN) pretty much assumes two-layer model (central repository and its users). | 12:56 |
| → destruct_ joined | 12:56 |
| → tiagosab joined | 12:56 |
|
tiagosab
| Hi! How do I find out in which branches a commit is? | 12:57 |
|
hlisv561
| octopod: If you just want to offer previews, make copy of the preview branch (rebased on top of latest from SVN) somewhere where it is accessable. But make clear to other users that that branch is not stable. | 12:57 |
|
octopod
| hlisv561: no one would be using git on the preview branch apart from me, I just really want to be able to push a local branch to the remote server, I'm not sure what you mean by "make a copy" | 12:59 |
|
hlisv561
| octopod: Pushing a branch makes copy of a branch since branches are local. | 13:02 |
|
namenlos
| hi, is there a possibility to interact with mercurial users using git? | 13:03 |
| → Leonidas joined | 13:04 |
| ← destruct left | 13:07 |
| destruct_ → destruct | 13:08 |
| ← glommer left | 13:08 |
| moh_ → moh | 13:09 |
| → Lash| joined | 13:12 |
| → robfitz_ joined | 13:17 |
| ← Cerebon left | 13:22 |
|
maks_
| namenlos: hg-to-git | 13:26 |
| ← barthus left | 13:27 |
| ← robfitz left | 13:28 |
| robfitz_ → robfitz | 13:31 |
| → loops joined | 13:31 |
| → careo joined | 13:33 |
|
namenlos
| maks_: thx. so i am able to convert from hg to git. but am i right if i say, that there is no such thing like git-svn? | 13:34 |
| ← johan-s left | 13:36 |
| ← Ademan left | 13:43 |
| → Ademan joined | 13:44 |
| → ironfroggy joined | 13:46 |
| ← ironfroggy left | 13:46 |
| → ironfroggy joined | 13:47 |
| → jj-_ joined | 13:48 |
| ← jj- left | 13:48 |
| → kukks joined | 13:51 |
| → TuxCM- joined | 13:51 |
| → Ryback_ joined | 13:53 |
| → bdiego joined | 13:57 |
| → EmilMedv1 joined | 13:58 |
| EmilMedv1 → emilmedv1 | 13:59 |
| emilmedv1 → EmilMedv1 | 13:59 |
| ← EmilMedv1 left | 13:59 |
| ← EmilMedve left | 14:02 |
| → EmilMedve joined | 14:03 |
| → Cerebon_ joined | 14:05 |
| ← Tux__ left | 14:07 |
| → unreal joined | 14:07 |
| ← kukks left | 14:11 |
| → kukks joined | 14:12 |
|
is_null
| what command to set the default branch please ? | 14:15 |
| → johan-s joined | 14:16 |
|
noodl
| hi. can anyone tell me what this error means, please? (the local machine is mac os 10.5 running 1.5.3.7 and the remote is linux running 1.5.3.8) http://dpaste.com/33136/ | 14:17 |
| Cerebon_ → Cerebon | 14:17 |
| ← ironfroggy left | 14:20 |
| → ironfroggy joined | 14:20 |
|
hlisv561
| is_null: If it is repository without working tree, I think one has to either use 'git symbolic-ref' or hand-edit the repository. The symbolic reference to default branch is called HEAD. | 14:22 |
|
is_null
| hlisv561: i have a working tree but i'm unsure if git is aware of it's name | 14:27 |
|
| HEAD has "ref: refs/heads/merged", which is my working tree | 14:29 |
|
hlisv561
| is_null: I was talking about the repository on the server... | 14:30 |
|
loops
| noodl, perhaps Git isn't set up properly on web3.. or not in path ? | 14:30 |
|
is_null
| hlisv561: thanks, i'm quiet confused since the repos i work on is on the server | 14:31 |
|
| *as woll | 14:32 |
|
noodl
| hmm, it's in /uar/local/bin but i'll make sure that's in PATH for a non-interactive shell | 14:32 |
| ← kukks left | 14:33 |
| → kukks joined | 14:34 |
| jj-_ → jj- | 14:34 |
|
loops
| is_null, i'm joining this conversation late; can you restate the issue you're having easily? | 14:34 |
|
is_null
| it was caused by a misunderstanding of mine and lack of reading the manual, causing two repos to cohabit on the server | 14:36 |
|
loops
| okay.. Git shouldn't have a problem with 2 repos on a server.. have you sorted it out for yourself? | 14:38 |
|
noodl
| loops: good call. it's not an issue with $PATH but the remote git installation seems incomplete (has roughly half the git-* executables as my local one) | 14:40 |
|
is_null
| i did sort the http hosting, thanks hlisv561. But i just figured that it's not possible to clone with --depth via HTTP; though that's something i want to be part for public deployment - which hosting solution allow it please ? | 14:41 |
|
loops
| noodl, it may have been installed with the gitexecdir option, moving some of the lower level plumbing commands out of standard PATH. | 14:42 |
|
| is_null, git-daemon. | 14:42 |
|
noodl
| loops: make install complains about: gtar: This does not look like a tar archive | 14:43 |
| ← priidu_ left | 14:44 |
|
loops
| noodl, sorry that's a new one on me.. | 14:45 |
|
noodl
| lemme try the build from scratch | 14:46 |
|
| failed again. here's the complete configure/make/make install output in case anyone has seen this, http://dpaste.com/33141/ | 14:53 |
|
loops
| noodl, do you have a copy of gnu tar installed on that machine instead of gtar ? | 14:54 |
| ← johan-s left | 14:54 |
|
noodl
| tar (GNU tar) 1.14 << that's the only one. (gtar links to it) | 14:55 |
|
loops
| noodl, looking at the Makefile, it seems gtar should only be invoked on SunOS.. odd | 14:55 |
| ← IRSeekBot left | 14:56 |
| → johan-s joined | 14:57 |
|
loops
| noodl, does the command gtar cf - . | gtar tf - | 14:57 |
|
| typed at the command line work for you? | 14:57 |
| → cannonball joined | 14:58 |
|
noodl
| yep | 14:58 |
| → mjc joined | 14:58 |
|
loops
| hmmm | 14:58 |
| → EmilMedv1 joined | 14:58 |
|
noodl
| shows the list of the directories from tar stream on stdin, and works in the templates/blt directory. same works with xf - | 14:58 |
| EmilMedv1 → emilmedv1 | 14:58 |
| ← EmilMedve left | 14:59 |
| ← emilmedv1 left | 14:59 |
| → EmilMedve joined | 15:00 |
|
is_null
| i'm failing to fetch to repo and i don't understand why, this is the log from git-deamon : http://nopaste.com/p/a4nyGqi5qb | 15:01 |
|
johannes
| touch /var/www/devangels/git/.git/git-daemon-export-ok might help | 15:02 |
|
loops
| is_null, take a look at the git-daemon man page.. you need to either use --export-all, or use a flag file in each repo to mark it for export via git-deamon | 15:02 |
|
noodl
| loops: gah, it fails because i have CDPATH set. not sure why, with '.' in the path, but anyway it's installed now. sorry :( | 15:03 |
|
is_null
| ah, i've read it but i didn't understand, thanks | 15:03 |
| → stick joined | 15:03 |
|
loops
| noodl, okay.. (btw you should never "export" CDPATH, it should only ever affect the shell, nothing executed by it) | 15:03 |
| cbrake_away → cbrake | 15:04 |
| ← lcapitulino left | 15:04 |
|
noodl
| loops: ah! my bad. and woohoo, i finally have the original clone command working. thanks a bunch for your time :) | 15:04 |
|
loops
| np.. glad you got it working. | 15:04 |
| → dysinger joined | 15:05 |
| → lcapitulino joined | 15:07 |
| → GrimRC joined | 15:10 |
| → pedro__ joined | 15:10 |
|
GrimRC
| hi all; I have kernel 2.6.24, and I've used git-init to turn it in to a repository; I've done make distclean, but there are still files that are (git)ignored; how do I list the untracked files? | 15:11 |
|
EmilMedve
| Did you try 'git ls-files -i'? | 15:13 |
|
GrimRC
| no, but I get this: ls-files: --ignored needs some exclude pattern | 15:14 |
|
| I'm new to git; I must be using that command wrongly | 15:16 |
|
EmilMedve
| Is adding --exclude-standard helping? | 15:16 |
|
| If all you want to do is to remove _all_ the untracked files, try 'git clean -d -x -f`... | 15:16 |
|
GrimRC
| it just dumps usage info with -i and --exclude-standard | 15:17 |
|
| I want to unignore all the ignored files, so that I can merge wireless-2.6 without fatal errors | 15:17 |
|
| I mean, I want to unignore the ignored files, because there shouldn't be any left after make distclean, if I understand it right; from Googling, it seems sometimes vmlinux* files get accidentally ignored | 15:18 |
|
loops
| GrimRC, if this is a brand new repo that you created, nothing should be ignored by Git. | 15:18 |
|
GrimRC
| Linux kernel comes with its own .gitignore files | 15:19 |
|
loops
| ahh.. so can you just edit those to get the results you want? | 15:19 |
|
GrimRC
| yeah, but I don't know how to get a list of untracked files so I can fix them all in one go | 15:19 |
|
EmilMedve
| At this point I'm not sure I understand what exactly do you want to do... | 15:20 |
| → zapnap joined | 15:20 |
|
EmilMedve
| git clean -x -d -f should clean up all the untracked files... | 15:21 |
| ← zapnap left | 15:21 |
|
Tv
| GrimRC: man git-ls-files | 15:22 |
| ← kanru left | 15:22 |
|
loops
| git ls-files is pretty awful when it comes to just asking for something simple like... give me a list of all ignored files.. | 15:23 |
|
GrimRC
| I can't work out the command-line to do it | 15:24 |
|
loops
| GrimRC, git ls-files -o seems to do it | 15:26 |
| ← kukks left | 15:26 |
|
Tv
| loops: how is that pretty awful? | 15:26 |
|
GrimRC
| what I'm ultimately doing is, turning my 2.6.24 kernel in to a repository, adding a branch called wifi and the remote wireless 2.6 repository, doing a git-fetch of the remote repository, then a git-merge so I have a modified 2.6.24 kernel - is this even right? | 15:26 |
|
loops
| but the documentation and UI sucks bad | 15:26 |
| → kukks joined | 15:27 |
|
loops
| Tv: to get ignored files you'd expect to be able to say "git ls-files --ignored" | 15:27 |
|
Tv
| yeah, and the docs lie about it needing an argument too | 15:27 |
|
| but still, that's an extra whooping 10 seconds time spent | 15:27 |
|
loops
| tv: and when you read the documentation.. you ask yourself what the --other option does and it says list "other" files.. not very helpful. | 15:27 |
|
Tv
| anything not covered above ;) | 15:27 |
|
GrimRC
| loops: thanks for that - it works | 15:27 |
|
loops
| Tv, sure.. it's not the end of the world.. just a blemish | 15:28 |
|
GrimRC
| doing git-fetch from a remote repository only fetches all that meta-data stuff right? so that when I do git-merge it only downloads what's needed? right?? | 15:28 |
| ← pedro__ left | 15:29 |
|
Arjen
| No | 15:29 |
|
loops
| No.. | 15:29 |
|
GrimRC
| is there any sensible way to do that? | 15:29 |
|
Arjen
| git fetch gets all that the local repository doesn't have yet, compared to the remote | 15:29 |
|
GrimRC
| so I have master which is 2.6.24 - I should have made a new branch called wireless-2.6 (the same name as the remote repository), then git-pulled? | 15:30 |
|
| I mean merge local master in to local wireless-2.6, then git-pull the real wireless-2.6? | 15:31 |
|
Tv
| GrimRC: more like git fetch && git checkout -b wireless-2.6 remotes/origin/wireless-2.6 | 15:31 |
|
| i guess | 15:31 |
|
| you're not being very precise, so I can't be very precise ;) | 15:31 |
| ← rubydiamond left | 15:31 |
|
GrimRC
| so git-fetch downloads objects, meaning it downloads all the data? | 15:32 |
|
Arjen
| Yes | 15:32 |
|
GrimRC
| how do I do a diff/rsync across the internet, of my kernel and theirs? | 15:32 |
| → chris2 joined | 15:33 |
|
Tv
| GrimRC: you really don't | 15:33 |
|
| GrimRC: you fetch, then do everything locally | 15:33 |
|
GrimRC
| but that'd mean I download everything from them, making my copy of the Linux kernel useless? | 15:34 |
|
Tv
| shared bits are reused | 15:34 |
|
GrimRC
| maybe the shared bits were reused, I can't tell | 15:34 |
|
| so I don't need to merge my kernel and theirs, I just check theirs out now | 15:35 |
|
| I mean, I fix these broken ignores and then do that | 15:36 |
| ← Lash| left | 15:36 |
|
Tv
| GrimRC: you sound quite confused about git fundamentals -- don't know if you have the right background for this, but can't hurt to try: http://eagain.net/articles/git-for-computer-scientists/ | 15:36 |
| → aroben joined | 15:36 |
| Dodji → Dodji|away | 15:39 |
|
GrimRC
| yeah so this stuff about hashing with SHA-1 means that I can pull from other people's repository in a sane manner, as long as I have my Linux kernel included with git-init | 15:39 |
|
Tv
| fetching a subsystem-specific tree is internally no different from fetching a new version from linus' tree | 15:41 |
| → kumbayo joined | 15:41 |
|
GrimRC
| so that should mean it's downloaded efficiently as possible (like rsync)? | 15:41 |
|
Tv
| better than rsync most of the time ;) | 15:42 |
| → bobesponja joined | 15:45 |
|
GrimRC
| du -ch !(.git) = 308MB and du -ch .git = 446MB --- I have Linux 2.6.24 in my working directory (and in master branch) and I have wireless-2.6 git repository git-fetched too | 15:46 |
| → pedro__ joined | 15:47 |
|
GrimRC
| .git/objects = 443MB - seems like I've done something wrong, coz wireless-2.6 is basically modified kernel | 15:48 |
|
arw_
| hm? i don't understand, why do you think there is something wrong? | 15:50 |
|
GrimRC
| when I commited my copy of the kernel to master, it seemed to take up much less space | 15:51 |
|
| are objects compressed? | 15:51 |
|
semi_
| hey, does git work with jira? (jira issue tracker http://www.atlassian.com/software/jira/ ) | 15:51 |
|
| svn apparently does | 15:52 |
|
| but couldn't find any info from the web | 15:52 |
|
arw_
| GrimRC: yes and no. | 15:52 |
|
| GrimRC: running 'git gc' compresses the uncompressed ones | 15:53 |
| ← EmilMedve left | 15:55 |
| ← johan-s left | 15:55 |
| → EmilMedve joined | 16:05 |
| → kanru joined | 16:16 |
| ← kumbayo left | 16:19 |
| ← kukks left | 16:22 |
| → kukks joined | 16:23 |
| ← namenlos left | 16:24 |
| ← dsaxena left | 16:24 |
| ← langenberg left | 16:28 |
| ← GrimRC left | 16:28 |
| → namenlos joined | 16:34 |
| tjafk2 → timj | 16:34 |
| ← namenlos left | 16:38 |
| → agorf joined | 16:39 |
|
agorf
| hello. anyone knows the git equivalent of svn copy? | 16:39 |
|
vmiklos
| just copy and git add | 16:40 |
|
agorf
| won't this prevent git from knowing where the copy came from? | 16:40 |
|
Debolaz2
| agorf: git detects this automagically. | 16:41 |
|
agorf
| Debolaz2: oh. ok, thanks | 16:42 |
|
arw_
| no. git detects the copy by the files content, not any special data that something like 'svn copy' records. | 16:42 |
|
Debolaz2
| agorf: The reason why this works is that git sees the file, as arw_ pinted out, has the same content, and hence is related to the original file. | 16:42 |
|
agorf
| Debolaz2: so i need to commit the copy before doing any changes to id | 16:43 |
|
| it* | 16:43 |
|
| Debolaz2: in subversion, you can svn copy foo bar and then make changes to bar, and subversion remembers that bar came from foo. | 16:44 |
|
vmiklos
| git log --follow does the same | 16:44 |
|
| you can do the same here | 16:45 |
|
jrockway
| agorf: no, you can change the copy on the same commit where you make the copy | 16:45 |
|
vmiklos
| then git will say "foo.c is copied from bar.c: they are 85% similar" | 16:45 |
|
jrockway
| yup | 16:45 |
| → chrizz joined | 16:46 |
|
arw_
| unless of course the similarities are so small that the copy will become undetectable, but then the copy was useless anyways :) | 16:46 |
|
agorf
| what i basically am doing is moving a big block of code from foo to bar | 16:47 |
|
vmiklos
| just do it, then see that git annotate -C will recognize it's copied from foo | 16:47 |
| → lol_h joined | 16:49 |
| → KirinDave joined | 16:50 |
|
agorf
| vmiklos: hm, it doesnt | 16:52 |
|
vmiklos
| you can try --find-copies-harder :) | 16:54 |
| → IRSeekBot joined | 16:54 |
| → HG` joined | 16:54 |
| ← cehteh left | 16:55 |
| ← djpig left | 16:55 |
| ← bentob0x left | 16:59 |
| → alley_cat joined | 16:59 |
| → johan-s joined | 17:02 |
|
agorf
| vmiklos: http://rafb.net/p/DJihCg62.html | 17:03 |
|
| here's a short example that doesnt work for me | 17:03 |
|
drizzd_
| agorf: By default there need to be at least 40 or so matching characters. You can change the default by supplying it to -C, e.g. git annotate -C -C10 copied_file | 17:04 |
| ← mediogre left | 17:05 |
| → L33trDaNu joined | 17:06 |
|
L33trDaNu
| is there a way to see what files were affected with git log ? | 17:06 |
|
agorf
| drizzd_: hm, i have no luck with that. maybe im doing something wrong | 17:06 |
| ← blix_ left | 17:06 |
| ← z3ro_ left | 17:07 |
|
drizzd_
| L33trDaNu: git log --name-status | 17:07 |
|
L33trDaNu
| drizzd_: thanks | 17:08 |
|
drizzd_
| agorf: In your case the similarities are so small, you'd probably have to use -C -C3 or something | 17:08 |
| ← Phoop left | 17:09 |
| → reval joined | 17:09 |
|
agorf
| drizzd_: yeah, i tried with C ranging from 1 to 10 | 17:09 |
|
Tv
| I don't think -C means the number of lines | 17:11 |
|
| the number afterwards is a more abstract "score" from in tens of percents | 17:12 |
|
| the 40 char limit is harcoded IIRC | 17:12 |
|
| make a less minimal minimal failing example ;) | 17:12 |
|
tiagosab
| I am using git to track an upstream cvs, but I just found that the stable branch has duplicated commits (only in git, not in cvs). I checked it out again with git-cvsimport and I found the same result. Any hints? | 17:13 |
|
agorf
| Tv: in my normal example, i moved 66 lines from foo to bar, and it still doesnt work | 17:13 |
|
Tv
| agorf: please just reiterate that "short example" so it has more data | 17:13 |
| ← tbecker left | 17:14 |
|
vmiklos
| i just checked, i moved a functom from foo.c to bar.c, i modified the function in May 2007. after copying the function, git annotate -C still says May 2007, and not Jan 2008, so the copy detection works properly here | 17:14 |
|
agorf
| Tv: yes, what im saying is that in my normal case, i did the exact same thing as with this small example, with the only difference that i had such enough data | 17:14 |
|
vmiklos
| function* | 17:14 |
|
Tv
| agorf: sure but please redo the short example with enough data | 17:15 |
|
vmiklos
| (the function is 141 lines long) | 17:15 |
| → desegnis joined | 17:15 |
| → z3ro joined | 17:15 |
|
Tv
| agorf: what happens to me usually at that point is i see the short example work, and realize what the difference is between it and the real case, and understand what happened and why | 17:15 |
|
agorf
| vmiklos: what is the output i should expect from git annotate? will it contain the name of the source file? | 17:16 |
|
| Tv: i see your point | 17:16 |
|
vmiklos
| without -C git annotate will say you modified the function today | 17:16 |
| ← sverrej left | 17:17 |
|
agorf
| vmiklos: ok my bad. it works | 17:17 |
|
vmiklos
| with -C, it will realize today you just copied it and it will show the date of the last _real_ modification | 17:17 |
|
agorf
| vmiklos: i was expecting to see a source filename of shorts | 17:17 |
|
| thank you both for your help | 17:17 |
|
vmiklos
| the commit name is shown, you can see the commit using git show <hash>, and then you'll probably see the source of the function as well | 17:18 |
|
agorf
| vmiklos: ack. thanks :) | 17:19 |
|
vmiklos
| np :) | 17:19 |
|
drizzd_
| agorf: git blame will show you the filename | 17:19 |
| → ReinH joined | 17:19 |
|
agorf
| drizzd_: indeed | 17:19 |
| ← reval left | 17:20 |
| ← FunkeeMonk left | 17:23 |
| ← alley_cat left | 17:33 |
| → lukass joined | 17:34 |
| → sunblush joined | 17:35 |
| ← nkallen left | 17:37 |
| → alley_cat joined | 17:38 |
| ← KirinDave left | 17:38 |
| → bogner joined | 17:40 |
|
bogner
| is it possible to write a hook to change my .gitignore file before it's read by git? i want to ignore files based on the existence of other files (ignore foo.ps and foo.dvi if foo.tex exists, for example) | 17:43 |
|
| i can write a script to find out which files to ignore and update the .gitignore, but i don't know how to get that script to be called at the right times | 17:44 |
| ← sgrimm left | 17:47 |
| → sgrimm joined | 17:47 |
|
jrockway
| bogner: why not ignore *.ps and *.dvi? do you ever want those checked in? | 17:47 |
| ← ironfroggy left | 17:47 |
|
bogner
| well, i can ignore dvi, but i happen to have a few ps files i want in the repository (they never change, but i like them to be cloned with the repo) | 17:48 |
|
| right now i just have .gitignores in the directories i have tex files in, which works well enough, but i'm curious about whether something like this is possible | 17:50 |
|
jrockway
| i don't think a hook exists right now... but it would be trivial to implement the functionality you desire | 17:50 |
|
| everything is shell/perl scripts. just hack something in :) | 17:50 |
|
| s/everything/nearly everything/ ;) | 17:50 |
| ← Catfish left | 17:52 |
|
bogner
| yeah. i suppose git-ls-files would be the place to hack it in, then? | 17:52 |
| ← harinath left | 17:52 |
| meyering → jim-errands | 17:55 |
| → harinath joined | 17:55 |
| ← alley_cat left | 17:56 |
| ← ebel left | 17:57 |
| → arwed joined | 17:58 |
| ← bogner left | 17:59 |
| → bogner joined | 17:59 |
| → reval joined | 18:01 |
| → langenberg joined | 18:01 |
|
drizzd_
| bogner: you'll probably be better off using exceptions. And you _can_ add ignored files I think. | 18:02 |
| ← pmezard_ left | 18:03 |
|
bogner
| drizzd_: add ignored files in a hook, you mean? | 18:03 |
|
Tv
| bogner: forget the hook part ;) | 18:04 |
| → KirinDave joined | 18:05 |
|
Tv
| bogner: and you really probably just want to put exceptions in .gitignore | 18:05 |
| → KirinDav joined | 18:05 |
| → alley_cat__ joined | 18:06 |
| → drizzd joined | 18:08 |
| ← kukks left | 18:12 |
| → kukks joined | 18:13 |
| → cehteh joined | 18:13 |
| → tvachon joined | 18:14 |
| → djpig joined | 18:14 |
| → docelic joined | 18:16 |
| ← langenberg left | 18:16 |
| → langenberg_ joined | 18:17 |
| → ironfroggy joined | 18:17 |
| ← arwed left | 18:18 |
| → xpgs joined | 18:18 |
| ← xpgs left | 18:19 |
| ← alley_cat__ left | 18:19 |
| → pgssgp joined | 18:19 |
| ← KirinDave left | 18:21 |
| KirinDav → KirinDave | 18:21 |
| ← drizzd_ left | 18:22 |
| ← cedricv left | 18:22 |
| ← janm left | 18:24 |
| ← Leonidas left | 18:25 |
| jwb → jwb_gone | 18:28 |
|
langenberg_
| Odd thing just happened, I did a: git svn rebase; git checkout -b new_feature; commit, commit, commit; git checkout master; git merge master..new_feature; git svn dcommit. And it anded up as a single SVN commit. | 18:37 |
|
| ended* | 18:37 |
|
| It shouldn't be doing that right? | 18:37 |
|
| Erh, and just a 'git merge new_feature' | 18:38 |
| → Sonderblade joined | 18:39 |
| → alley_cat joined | 18:39 |
|
doener
| langenberg_: that's how a real merge is supposed to end up | 18:41 |
|
langenberg_
| I just tried it again, now I get a serie of small commits. | 18:42 |
|
| Could it be because one of my commits was a git revert ? | 18:42 |
|
doener
| probably because you didn't get a merge commit, but a fast-forward | 18:42 |
| → kevwil joined | 18:43 |
|
langenberg_
| When does that happen? | 18:45 |
| ← bogner left | 18:45 |
|
doener
| when there's no new commit in master since you branched | 18:46 |
|
langenberg_
| Ah, then it squashes all the changes from the branch? | 18:46 |
| → timocratic joined | 18:47 |
|
doener
| no, then a fast-forward happens | 18:47 |
|
| say you do: git checkout -b foo; edit; git commit -m foo; git checkout master; git merge foo | 18:47 |
| → yeowman joined | 18:47 |
|
doener
| then you have: X (master) -> Y (foo) | 18:48 |
| → mithraic joined | 18:48 |
|
doener
| obviously, merging the changes from foo can be achieved by just moving master forward | 18:49 |
|
| but if you have this: | 18:49 |
|
| X --> Y (master) | 18:49 |
|
| \ | 18:49 |
|
| -> Z (foo) | 18:49 |
|
mithraic
| I seem to have wedged myself pretty good, and could use some help un-wedging. | 18:49 |
|
| Upon git push, I get this error: | 18:49 |
| → aazar joined | 18:50 |
|
mithraic
| error: remote 'refs/heads/master' is not a strict subset of local ref 'refs/heads/master'. maybe you are not up-to-date and need to pull first? | 18:50 |
|
doener
| then the merge must creates a new commit M, that joins the two lines of history | 18:50 |
|
| s/creates/create/ | 18:50 |
|
| M has two parents, Y and Z | 18:50 |
|
mithraic
| This is on a local branch that points to master on the remote | 18:51 |
| ← pombreda left | 18:51 |
| → Zariel joined | 18:52 |
|
doener
| SVN cannot represent such a history. So what git-svn does, is ignoring Z and just creating a new revision with the changes from Y to M | 18:52 |
|
Zariel
| right im trying to setup GIT on a webdav share, but i cant access the webdav in winxp =/ | 18:52 |
|
doener
| so the changes the happened in the merged-in branches are squashed in _SVN_, git still retains the correct history | 18:53 |
| ← L33trDaNu left | 18:53 |
| → L33trDaNu joined | 18:53 |
|
doener
| langenberg_: in general, unless you really _want_ such a squashed merge (e.g. when the branch also exists in SVN), you should rebase instead of merging | 18:54 |
|
langenberg_
| doener: Ah, I really don't want a squashed merge. All branches are locally. | 18:54 |
|
| I should rebase with the branch? | 18:54 |
| → pmezard joined | 18:55 |
|
doener
| langenberg_: yeah, just rebase, no need to merge at all. Just "git svn rebase" the branch and then dcommit it directly. If you then "git svn rebase" your master, it will get the commits from svn and you can drop your branch | 18:56 |
|
| langenberg_: or you can do "git rebase master my_branch; git checkout master; git merge my_branch" | 18:56 |
| jwb_gone → jwb | 18:57 |
|
doener
| that way, you're guaranteed to get a fast-forward and can just dcommit from master | 18:57 |
|
| which way you prefer is up to you. The latter is probably less confusing from the git point of view | 18:57 |
| → L33trDaN1 joined | 18:58 |
| → Ademan_ joined | 19:01 |
| ← docelic left | 19:02 |
|
langenberg_
| Okay | 19:03 |
|
hachi
| anyone know how to get git-cvsimport to authenticate with the cvs server? | 19:03 |
| ← Man-erg left | 19:03 |
|
langenberg_
| doener: Does that mean that all small commits I make during my branch, get also to be small commits in SVN? (That's what I prefer) | 19:03 |
|
hachi
| I'm stracing it and the comm with the server shows it not sending the password | 19:04 |
|
doener
| langenberg_: yep | 19:04 |
|
| langenberg_: rebasing creates a linear history without any merge commits | 19:04 |
| → arwed joined | 19:04 |
|
langenberg_
| doener: What about: git svn rebase; git checkout -b feature; modify; commit; git checkout master; git svn rebase; git rebase feature; git svn dcommit? | 19:05 |
|
doener
| langenberg_: nope, that will rebase master with "feature" as upstream | 19:06 |
| ← alley_cat left | 19:06 |
|
doener
| you can do "git rebase master feature" instead, but that basically ends up the same as my first suggestion | 19:06 |
|
langenberg_
| Ah, okay :) | 19:07 |
|
doener
| with master still requiring a "git svn rebase" to get the changes you dcommitted from feature | 19:07 |
|
langenberg_
| I'll try that the next time, thanks.\ | 19:07 |
|
mithraic
| Any suggestions for my little problem? | 19:08 |
|
doener
| langenberg_: to see how git-svn works, try looking at your master in gitk | 19:08 |
| ← Ademan left | 19:08 |
|
langenberg_
| doener: Well what I don't get about git-svn in gitk, is that I'm not seeing my local branches, why is that? | 19:09 |
|
doener
| langenberg_: were they merged yet? | 19:10 |
|
| langenberg_: gitk by default only shows the history of the current branch | 19:10 |
|
| try: gitk --all | 19:10 |
|
| langenberg_: if you look at your master's history in gitk, you should notice one branch that branched from master and then joins back into master | 19:11 |
|
| that join point is the merge commit that you see squashed in svn | 19:11 |
|
| git-svn only follows the primary line of history, creating SVN revision that are equal to the commits in that line of history. | 19:13 |
| ← L33trDaN1 left | 19:13 |
|
doener
| and that branch was outside the primary line of history, thus SVN only got two revisions: before the merge and after the merge | 19:14 |
| ← L33trDaNu left | 19:14 |
| ← kevwil left | 19:16 |
| ← sgrimm left | 19:17 |
|
langenberg_
| aah | 19:21 |
|
| lemme check | 19:21 |
| → p4tux joined | 19:26 |
| ← tiagosab left | 19:29 |
| → Leonidas joined | 19:33 |
| ← reval left | 19:33 |
|
mugwump
| you don't have to restart gitk, you can go "view...edit" and put "--all" in there | 19:40 |
| → capisce joined | 19:43 |
| → pombreda joined | 19:49 |
| ← lol_h left | 19:55 |
| → alley_cat__ joined | 19:58 |
| ← kukks left | 19:59 |
| → kukks joined | 19:59 |
| → mithraic_prime joined | 19:59 |
|
semi_
| can I sort all blobs in a repo by size? | 20:01 |
| ← arwed left | 20:01 |
|
semi_
| and if I were to remove some accidentally versioned unnecessary binary files from the repo after git-svn clone, would git-svn still be able to talk to the svn repo? | 20:02 |
|
| I mean, doing git-filter-branch to remove something from history | 20:03 |
| → antares joined | 20:03 |
| → sgrimm joined | 20:09 |
|
kergoth
| whats the easiest way to copy a commit & its associated tree from one git repo to another, that dont share history? copy it over in the filesystem and cherry-pick it? | 20:10 |
| → peso joined | 20:11 |
|
kergoth
| wait, nm, alternates worked easier | 20:13 |
|
vmiklos
| you can fetch the tree object | 20:13 |
|
| and then create a commit that points to the tree but has a parent from the other repo | 20:14 |
| ← mithraic_prime left | 20:14 |
|
kergoth
| fetch in what way? | 20:15 |
| ← mithraic left | 20:15 |
|
context
| kergoth: you could prolly use git-show and git-apply | 20:18 |
| ← capisce left | 20:20 |
| ← alley_cat__ left | 20:30 |
| → glommer joined | 20:35 |
| → shep-work joined | 20:36 |
|
shep-work
| how can i find what tags apply to a specific hash? | 20:37 |
|
| more specifically, the hash for the version that I am working in | 20:37 |
| → alley_cat joined | 20:38 |
|
shep-work
| i see git-show-ref | 20:43 |
|
johan-s
| is there a hook that can be run when people clone a repos? | 20:43 |
|
shep-work
| which seems really close | 20:43 |
| ← saimon left | 20:43 |
|
thiago_home
| shep-work: git-describe | 20:45 |
| → saimon joined | 20:45 |
|
shep-work
| thiago_home: thanks! looking at the man page, i see that if the HEAD^1 is tagged, then it will add cruft to the end of the tag | 20:49 |
|
| thiago_home: is there a way to skip that, and only show if a tag points at *this* version ? | 20:49 |
| ← alley_cat left | 20:51 |
| → madewokherd joined | 20:51 |
|
semi_
| is git-svn supposed to detect svn merges? | 20:54 |
|
drizzd
| shep-work: git show-ref -d <tagname> | grep `git rev-parse HEAD` | 20:54 |
|
| If <tagname> points at HEAD, this will succeed. | 20:55 |
| → mikearthur joined | 20:55 |
|
mikearthur
| hey | 20:57 |
|
| http://git.fredemmott.co.uk/?p=yanihp;a=summary | 20:57 |
|
| http://mikearthur.co.uk/gitweb/?p=mikepete.git;a=summary | 20:58 |
|
| the prior has a URL field whereas mine (the latter) doesn't | 20:58 |
|
| how do I add that? | 20:58 |
|
shep-work
| drizzd: thanks. that is close to what I want | 20:59 |
|
| drizzd: what I really want to do is tag the code with a version, then use this bit of code to see if i am building a tagged version | 20:59 |
|
| drizzd: so i dont already know the version, as you suggest | 21:00 |
|
| also, where can i file bug reports for git documentation? | 21:02 |
|
| and feature requests | 21:02 |
|
drizzd
| shep-work: then you can just do git-describe --abbrev=0 | 21:03 |
|
shep-work
| drizzd: but, say I tag now, then change a file | 21:04 |
|
| drizzd: git-describe would report that the current state is tagged | 21:04 |
|
thiago_home
| semi_: no | 21:04 |
|
semi_
| how about tags? | 21:04 |
| → kevwil joined | 21:05 |
| ← lcapitulino left | 21:05 |
|
semi_
| it asks for the tags dir but still makes a tags/foo branch instead of a tag | 21:05 |
|
| with --stdlayout | 21:05 |
|
| s/asks for the tags dir but still// | 21:05 |
| → sNov joined | 21:06 |
| → langenberg joined | 21:07 |
| ← kevwil left | 21:08 |
|
thiago_home
| semi_: tags in Subversion are actually branches. For all purposes, that is. | 21:09 |
|
| why git-svn does it like that, I don't know. | 21:09 |
|
semi_
| thiago_home: yes, I'm aware that svn does not actually have real branches or tags, just copies | 21:10 |
|
| but still git-svn has options for setting tags dir | 21:10 |
|
| so it might do something special to them | 21:10 |
|
vmiklos
| so subversion tags are branches. why git-svn would create a tag for a branch? | 21:10 |
|
thiago_home
| in git, a tag is something that appears in the middle of your branch | 21:11 |
|
semi_
| I'm just asking why does it take tags dir as option | 21:11 |
|
| if it matters squat | 21:11 |
|
thiago_home
| so your current tip is a child of that tag | 21:11 |
|
| in Subversion, a tag is a tip of a branch. | 21:11 |
|
| even if it tagged, very seldom would your current HEAD be a child of that tag | 21:11 |
| → nzkoz joined | 21:12 |
|
drizzd
| semi_: You may want to have a look at http://repo.or.cz/w/git.git?a=blob_plain;f=GIT-VERSION-GEN | 21:13 |
| ← duncanm left | 21:13 |
|
semi_
| drizzd: looking, but I am not sure which discussion you refer to | 21:15 |
| ← langenberg_ left | 21:15 |
|
drizzd
| semi_: It checks if the repo is dirty, for example. You were asking about that. | 21:15 |
|
doener
| semi_: it does matter. Without the tags dir, it wouldn't be able to find the tags | 21:15 |
|
| semi_: and to avoid name clashes, it prefixes the remote branches for the svn tags with tags/ | 21:16 |
|
drizzd
| semi_: I guess I lost you somewhere | 21:16 |
| ← pombreda left | 21:17 |
|
semi_
| drizzd: I'm not sure if I was asking that. Am I just having a brain deadlock or am I the right person? | 21:17 |
|
doener
| semi_: doing real tags is impossible as soon as someone comes up with the great idea of actually modifying a "tag-branch" in svn | 21:17 |
|
drizzd
| semi_: No, I confused you with shep-work... | 21:18 |
|
semi_
| drizzd: ok np | 21:18 |
|
| doener: so I figured, but couldn't it do things optimistically with some special command line parameter and if that fails then redo the regular way | 21:18 |
|
doener
| semi_: personally, I'd find that even more confusing, because suddenly tags could disappear | 21:19 |
|
semi_
| oh, true, that could happen in the future after you did the clone | 21:20 |
|
| didn't realize | 21:20 |
|
| now I see | 21:21 |
|
| thanks | 21:21 |
|
doener
| and finding a matching commit in some of the real branches - if such a thing exists at all - is probably way too costly | 21:21 |
| → GrimRC joined | 21:21 |
|
shep-work
| drizzd: heh, i was wondering if some of that would be useful to me ;-) | 21:21 |
|
doener
| and then, I went out of ideas when I originally thought about improving the situation ;-) | 21:21 |
|
GrimRC
| hi again; does anybody know if I can merge just 1 file from another branch in to my working copy? | 21:22 |
| → dsaxena joined | 21:22 |
| ← unreal left | 21:22 |
|
doener
| GrimRC: you can incorporate the changes, but git won't store any metadata about such a "merge" | 21:23 |
|
GrimRC
| doener: oh cool yeah; how do I do that? | 21:23 |
| → nud joined | 21:24 |
|
drizzd
| shep-work: yeah, sorry about that. it's late... I didn't quite understand what you meant by the current 'state' being tagged. You were talking about the repository being dirty, right? | 21:25 |
|
doener
| easiest is probably: git checkout $dstBranch; git diff $(git merge-base $dstBranch $srcBranch) $srcBranch -- $file | patch -p1 | 21:25 |
|
| thiago_home has the code to find the original commit | 21:26 |
|
thiago_home
| if the svn tag is a perfect copy of another branch and is never modified | 21:26 |
|
| this breaks if there are any file modifications or if the copy isn't of the full and entire branch | 21:27 |
|
doener
| GrimRC: another possibility is: git show $(git merge-base $dstBranch $srcBranch):$file > baseFile; git show $srcBranch:$file > newFile; git merge-file $file baseFile newFile; rm baseFile newFile | 21:27 |
| ← careo left | 21:30 |
|
Tv
| i'd imagine git show BRANCH FILE | git apply | 21:31 |
| ← dsaxena left | 21:32 |
|
doener
| Tv: s/show/diff/ ? | 21:32 |
|
Tv
| doener: pretty much the same thing | 21:33 |
|
GrimRC
| doener: git-diff HEAD other_branch_here -- path/to/file seems to work | 21:33 |
|
shep-work
| drizzd: been there :-) | 21:33 |
|
Tv
| doener: but not with that exact s// | 21:33 |
|
| doener: is you show a commit, it shows the diff | 21:33 |
|
| doener: and is easier to type than the *right* syntax to git diff | 21:33 |
|
| doener: as you demonstrated ;) | 21:34 |
|
shep-work
| drizzd: but yeah, say i have --A--o--o--> | 21:34 |
|
| drizzd: with tag 'A' | 21:34 |
|
| drizzd: if i am at the HEAD of that branch | 21:34 |
|
| drizzd: git-describe will say 'A-2-asdasd' | 21:34 |
|
GrimRC
| git-show other_branch:path/to/file > path/to/file | 21:35 |
|
doener
| Tv: but you don't show a commit with the command you gave. Actually "git show HEAD~20 builtin-commit.c" is empty here, while "diff" shows a patch | 21:35 |
|
Tv
| doener: your diff doesn't do what you think | 21:35 |
|
| doener: and your HEAD~20 doesn't happen to touch that file | 21:35 |
|
GrimRC
| git-diff HEAD other_branch -- path-to-file | patch -p1 | 21:35 |
|
| doener: need a : between path and commit I think | 21:36 |
|
Tv
| GrimRC: correct, lower level, more to type | 21:36 |
|
| GrimRC: no | 21:36 |
|
| BRANCH:FILE means show this file | 21:36 |
|
| git show BRANCH means show the whole commit | 21:36 |
|
| git show BRANCH FILE FILE.. means show these files of the commit | 21:36 |
|
| the change to those files that is | 21:37 |
|
doener
| Tv: ah sorry. Still, as soon as you have more than one commit, or just know a range in which the commit lies, diff is easier | 21:37 |
|
Tv
| doener: yeah if you're not talking about a single commit | 21:37 |
|
doener
| Tv: and in what way does my diff not do what I expect? | 21:37 |
|
Tv
| doener: that form compares working tree to the commit you name | 21:38 |
|
| doener: not the changes that commit introduced | 21:38 |
|
| doener: oh and i meant the s/// thing | 21:38 |
|
| doener: the full merge-base thing you said seems correct (though not very robust) | 21:39 |
|
doener
| Tv: yeah. That was due to the single commit vs. commit range misunderstanding. | 21:39 |
|
| just didn't want to type the whole merge-base thing again. For HEAD~20, the merge base is obvious and I simply assumed a clean working directory ;-) | 21:40 |
| ← mithro left | 21:41 |
|
doener
| oh well, and I obviously would've merge some stuff from the current branch into the current branch... blah :-) | 21:41 |
|
| s/merge/merged/ | 21:41 |
|
| doener should stop talking now | 21:41 |
|
GrimRC
| I asked the wrong thing; I was just after pulling one file out, not true merge; the git-show and git-diff work for me; surprised it's not simpler | 21:44 |
| ← EmilMedve left | 21:44 |
|
doener
| GrimRC: just getting a file from a certain commit is easy: git checkout $sha1 -- $file | 21:44 |
| ← peso left | 21:44 |
|
GrimRC
| ohhh! | 21:44 |
|
| doener: so that long line was to merge properly | 21:45 |
|
doener
| yeah | 21:45 |
| → EmilMedve joined | 21:45 |
|
GrimRC
| hehe my bad | 21:45 |
| ← pgssgp left | 21:46 |
|
drizzd
| shep-work: yeah but git-describe --abbrev=0 will just show you the tag and using git-show-ref -d you can check if it points to the current HEAD | 21:47 |
|
shep-work
| drizzd: ah, thats the key i need | 21:49 |
|
| drizzd: let me go try that | 21:49 |
| ← lukass left | 21:50 |
| ← hharrison left | 21:50 |
| ← mikearthur left | 21:52 |
| ← timocratic left | 21:53 |
| → sverrej joined | 21:53 |
| ← glommer left | 21:55 |
| ← GrimRC left | 21:56 |
|
shenson_not_here
| I have a git repository that one of the objects is missing from, how do I go about fixing that? | 21:57 |
| → unreal joined | 21:58 |
| bdiego → midgar | 21:59 |
| → timocratic joined | 22:01 |
| ← sunblush left | 22:02 |
|
mugwump
| shenson_not_here: procedure in the git user's manual | 22:06 |
| ← Sonderblade left | 22:06 |
| shenson_not_here → shenson | 22:10 |
| → dsaxena joined | 22:10 |
| ← EmilMedve left | 22:10 |
|
nzkoz
| mugwump: you going to warkworth this weekend? | 22:11 |
|
mugwump
| nzkoz: yes, starting the drive up tonight | 22:12 |
|
| I guess I'll pitch camp at the first looking soft spot when it starts to get dark and finish the drive in the morning :) | 22:12 |
|
halorgium
| nzkoz: have you fallen into the git-pit? :) | 22:13 |
|
| oh, kiwifoo-ing eh? | 22:13 |
| → lyakh joined | 22:18 |
|
lyakh
| hi, another simple question: how can I see from what branch I branched my current branch? | 22:18 |
| ← desegnis left | 22:19 |
|
lyakh
| or just any branch for that matter | 22:19 |
|
nzkoz
| halorgium: yeah, kiwifoo, but git-questions abound | 22:19 |
|
lyakh
| and without gitk preferably | 22:19 |
| ← Cerebon left | 22:20 |
|
nzkoz
| mugwump: you should do a session on 'getting to git' or some such, migration for us is harder than it should be, but definitely something we're considering | 22:21 |
| ← langenberg left | 22:22 |
| → majoh joined | 22:28 |
| shenson → shenson_not_here | 22:29 |
| → rhett joined | 22:29 |
|
rhett
| how do I search git commits that mach a string? gitk is really confusing to me | 22:29 |
|
| there are like 3 search fields, and none of them work | 22:30 |
| ← Leonidas left | 22:30 |
| → lamont` joined | 22:30 |
|
loops
| rhett, from the command line you can do git log -S'search string' | 22:31 |
|
mugwump
| nzkoz: sounds a very technical topic for kiwifoo :) | 22:31 |
|
nzkoz
| mugwump: getting to beer? | 22:32 |
|
| then surprise us with git | 22:32 |
|
loops
| rhett, the latest version of gitk has a box you can just fill in to search | 22:32 |
|
mugwump
| My planned talk title was "When You Have a Hammer: applying lessons from source control to management of legislation, or: Git + Law = Westminster++" | 22:32 |
| ← octopod left | 22:33 |
|
nzkoz
| ok, I guess I'll have to 'buy' you a beer and talk about our specific needs :) | 22:34 |
|
mugwump
| sure, sounds good ... I can show off my Perforce importer as well, I'm thinking it could be adapted to work for SVN and CVS | 22:35 |
|
gitster
| lyakh: the answer to the question is undefined, if you are talking about the global history. Inside your local repository, you can find it out by "git log -g that-branch" and look for an Reflog entry that says "branch: created from blah". | 22:35 |
|
nzkoz
| people use perforce? ;) | 22:36 |
|
loops
| hi gitster | 22:36 |
|
mugwump
| google do, rampantly | 22:36 |
|
loops
| mugwump, is your p4 importer in contrib? or a different one? | 22:36 |
| → DrBehavior joined | 22:36 |
| ← bobesponja left | 22:36 |
|
mugwump
| loops: it's the one at http://utsl.gen.nz/gitweb/?p=git-p4raw | 22:36 |
|
gitster
| loops: I suspect rhett wanted to learn "git log --grep=string". | 22:36 |
|
mugwump
| It's not quite ready for prime time yet, but will be soon | 22:36 |
|
lyakh
| gitster: thanks, I think, looking for "created from" will do! | 22:37 |
|
rhett
| thanks guys | 22:37 |
|
gitster
| lyakh: The obvious reason that the question does not have any meaningful answer in the global history is this (I am not doing this only to help lyakh, by the way, but for people to look in the channel log). | 22:38 |
| ← DrBehavior left | 22:38 |
|
gitster
| "git branch b1 master; git branch b2 master; git checkout -b mine master; work work; git commit". | 22:38 |
|
rhett
| no gitster that just greps the log messages | 22:38 |
|
| i want to search the source code edited | 22:39 |
|
gitster
| rhett: your question was ambiguous. | 22:39 |
|
rhett
| ok, my bad | 22:39 |
|
gitster
| Then -S or "git log -p | less". | 22:39 |
|
loops
| mugwump, nice.. | 22:39 |
| ← lamont left | 22:39 |
|
gitster
| Now, did the branch "mine" come from master, b1, or b2? | 22:39 |
|
| You cannot tell from the topology you can see from the global history. | 22:40 |
|
lyakh
| hm, I think you can define it to be "master" | 22:40 |
|
gitster
| The best you can do is "git merge-base master mine" to see where 'mine' diverged from 'master'. | 22:40 |
|
| Think again. master, b1 and b2 all point at the same commit. | 22:41 |
|
lyakh
| I understand, but b1, b2, and mine _start_ there | 22:41 |
|
| and master brings you there | 22:41 |
|
Mikachu
| there is no such distinction in git | 22:42 |
|
gitster
| That's not recorded in anywhere in the global history. | 22:42 |
|
Mikachu
| a branch only points at the one commit, and that commit in turn has the history | 22:42 |
|
gitster
| Yes. Branch is an illusion without reflog. | 22:42 |
|
| And it is designed that way. | 22:43 |
|
mugwump
| I like to think of that as branches are observed, not declared | 22:43 |
| ← pmezard left | 22:44 |
|
gitster
| If you do this "git checkout -b mine master; git commit; git commit; git checkout master; git merge mine; git checkout mine; git commit ; git commit", then, you _started_ mine from master 4 commits ago (master~2), but there is nothing in the shape of the resulting history that records that fact. | 22:44 |
|
| The only thing you can tell is that mine has two more commits ahead of master. | 22:45 |
| ← aazar left | 22:45 |
| → aazar joined | 22:45 |
| ← agorf left | 22:47 |
|
lyakh
| but one can trace branches? like show log of a branch? | 22:48 |
|
Mikachu
| you can see what you have done with the branch with git-reflog | 22:48 |
|
lyakh
| ok, thanks | 22:49 |
|
vmiklos
| (or git log -g) | 22:50 |
|
gitster
| yeah, the important point to remember is that reflog is a local matter. | 22:50 |
|
nzkoz
| mugwump: interesting stuff in this new p4 thing. for us the challenge is on the other side, how do we maintain a backwards compatible read only mirror in svn | 22:51 |
|
gitster
| In the global history, it does not matter if you created those 4 commits (see example 6 minutes ago) on 'mine' branch and then fast-forward-merged them into 'master', or you just built them directly on 'master', if you show the resulting 'master' to other people to make it global. | 22:52 |
|
loops
| nzkoz, there was a proposed SoC project to make a svn server for git.. (like the git cvsserver) | 22:52 |
|
| don't know if it was accepted or anything done tho. | 22:53 |
|
nzkoz
| loops: yeah, something like that could be really interesting, but it's non-existent from what mugwump said last time we spoke | 22:53 |
| → rxKaffee joined | 22:53 |
|
nzkoz
| visa issues or somethign? | 22:53 |
|
lyakh
| git log -g doesn't show "created" for me... | 22:53 |
|
| ah, ok, it was "Created":-) | 22:53 |
|
rxKaffee
| anyone know of some reviews of repo.or.cz, or comparisons to other similar services? | 22:54 |
| ← Fullmoon left | 22:55 |
|
halorgium
| nzkoz: excellent, i'm not invited but i'm flying up to akl tonight, having lunch with a couple of guys who are going :) | 22:57 |
| → csc` joined | 22:58 |
| → pombreda joined | 22:59 |
| ← Ryback_ left | 23:00 |
| ← mjc left | 23:01 |
| → ilogger2 joined | 23:03 |
| → mithro joined | 23:18 |
| → flaguy joined | 23:25 |
| → dataangel joined | 23:30 |
|
dataangel
| git newb question: So when you 'add' a file it puts it in the pool of files to be in the next commit. And when you commit, it just commits to your local copy, right? And then, if you decide to have a central repository somewhere, the way that you handle committing to it is have the central repository pull yours, yes? | 23:31 |
|
| dataangel is seeing if he understands this whole distributed thing | 23:31 |
| → nud_ joined | 23:31 |
|
doener
| dataangel: a distribution point (e.g. a repo at repo.or.cz) is usually being pushed to | 23:33 |
|
fonseca
| It is easier to push your changes to the central repo. | 23:33 |
|
dataangel
| what does repo.or.cz mean? I saw that written somewhere else | 23:34 |
|
doener
| dataangel: that's a domain name ;-) It's a git hosting service | 23:34 |
|
dataangel
| oh ;p | 23:34 |
|
doener
| ie. http://repo.or.cz/ | 23:34 |
|
dataangel
| if you're using a repository like that though, when you commit it's still only to your own local git right? Then when you do a 'push' it can go to some remote host like repo.or.cz, but not when you commit like in cvs? | 23:35 |
|
doener
| yeah. commit is local. Only when you want to publish your commits you push them. | 23:36 |
| → sNov joined | 23:38 |
|
dataangel
| sweetness | 23:43 |
|
| I like the idea of tracking history on your box before you have to push :D | 23:43 |
|
hachi
| anyone know how to get git-cvsimport to auth properly with a pserver? I'm dumping the network traffic and it's not sending the password as far as I can see | 23:43 |
|
dataangel
| so if I checkout a project to two different folders, A, and B, and then I make some changes in the A folder, and then commit, the B folder version will never know about it unless I tell it explicitly to merge with the A folder version right? It's not like cvs where you can be in folder A, change things, commit, and then update in B and have the changes reflected there | 23:45 |
|
hachi
| I'm really wanting to check out the source to openldap using git | 23:45 |
|
doener
| dataangel: right. But you can also just create a branch in B. Nobody will see it, unless you push it | 23:48 |
| → bobesponja joined | 23:49 |
| → jaalto joined | 23:49 |
|
jaalto
| I mistakenly added many files to be committed. Can the effect be cancelled by "rm .git/index" safely? | 23:50 |
|
nzkoz
| jaalto: git status tells you how to get out of that situation | 23:52 |
|
mugwump
| jaalto: try git reset --mixed | 23:52 |
|
cehteh
| jaalto: git gui offers a nice way to deselect them | 23:52 |
|
mugwump
| or use git gui | 23:52 |
|
jaalto
| git gui is not available (I'm logged remotely) | 23:52 |
|
| nzkoz: In this case I'm seeking for sledgehammer to calcel all in one sweep. The "git reset HEAD" works for single files | 23:53 |
| → emiquelito joined | 23:53 |
|
emiquelito
| hi all! how can I change the message of an old commit? | 23:54 |
|
| the commit hasn't been pushed to the shared repo yet | 23:54 |
|
mugwump
| emiquelito: try git rebase -i | 23:54 |
|
jaalto
| mugwump: The reset cleans the staging area? | 23:54 |
|
mugwump
| jaalto: correct | 23:54 |
|
jaalto
| ok | 23:54 |
|
mugwump
| with --mixed it does | 23:54 |
|
| with --hard it does the files as well | 23:54 |
|
emiquelito
| mugwump thanks, but I thought rebase -i was used to remove an entire commit | 23:55 |
|
| I would like to keep the commit but just change its message | 23:55 |
|
mugwump
| you can edit the commit message on the way through | 23:55 |
|
emiquelito
| cool, thanks | 23:56 |
|
nzkoz
| git commit --amend too | 23:56 |
|
mugwump
| I personally use stacked git for this; stg uncommit -n 5; stg pop -n 4; stg refresh -e; stg push -a; stg commit | 23:56 |
|
| to change the commit message of a commit 4 commits ago | 23:56 |
|
jaalto
| mugwump: I have always been wondering why people would use quilt functionality with git? For me the branches seem more natural | 23:57 |
|
mugwump
| that's right, many people are quite happy with 'git rebase -i' | 23:57 |
|
| It's a bit unidirectional for me | 23:58 |
|
| I like to go forward, backwards, change a bit here, a bit there, etc | 23:58 |
|
jaalto
| I mean, separate branch for each feature: Like push/pop with quilt | 23:58 |
|
| Perhaps it's the workflow question. I on the other hand like to merge features together and keep the lines of development separate (in contrast to push/pop like in quilt) | 23:59 |