| 2009-05-26 |
| → bremner_ joined | 00:00 |
| → reprore__ joined | 00:02 |
| ← mclem left | 00:03 |
| → drmclem joined | 00:03 |
| ← reprore__ left | 00:03 |
| ← bremner_ left | 00:04 |
| → reprore__ joined | 00:04 |
| → bremner_ joined | 00:04 |
| ← reprore left | 00:05 |
| ← drmclem left | 00:05 |
| → drmclem joined | 00:06 |
| → scarabx joined | 00:06 |
| → cads joined | 00:06 |
| ← bremner_ left | 00:06 |
|
cads
| how do I create a new git in a directory, where I can add files and stage and commit? | 00:07 |
|
| I know how to clone from git-hub | 00:07 |
|
RandalSchwartz
| go to the directory, type "git init" | 00:07 |
|
| then "git add ." and "git commit" | 00:07 |
| ← Nazcafan left | 00:07 |
|
RandalSchwartz
| that'll create an initial commit of the current file config | 00:07 |
|
| RandalSchwartz waits for cads to catch up | 00:08 |
|
cads
| thanks | 00:08 |
|
RandalSchwartz
| if you had gone through teh basic tutorial, you would have seen that. | 00:08 |
|
| I suggest you do the basic tutorial | 00:09 |
| ← djgera left | 00:09 |
|
RandalSchwartz
| definitely not a waste of time | 00:09 |
|
cads
| yeah, I went through some github tutorial | 00:09 |
|
RandalSchwartz
| no - the one that comes with git | 00:09 |
|
| highly recommended | 00:09 |
|
cads
| where's the basic tutorial | 00:09 |
| → memiux_ joined | 00:10 |
|
andres
| cads: "git help tutorial" | 00:10 |
| ← memiux left | 00:10 |
|
andres
| cads: or man gittutorial | 00:10 |
|
Gitbot
| cads: the gittutorial manpage can be found at http://git.or.cz/man/gittutorial | 00:10 |
|
RandalSchwartz
| but don't look on the website | 00:10 |
|
| it's on your disk already | 00:10 |
|
| git help tutorial | 00:10 |
|
cads
| wow, nice | 00:11 |
| → tvakah joined | 00:14 |
| ← dodo_the_last left | 00:15 |
| ← tvakah left | 00:16 |
| → tvakah joined | 00:17 |
| → rettub_ joined | 00:18 |
|
Chani
| and why does git push not have --quiet either? | 00:18 |
| ← mitkok left | 00:19 |
| ← drmclem left | 00:22 |
| → hobodave joined | 00:24 |
| ← Mkop left | 00:31 |
| ← Zonker left | 00:32 |
| ← tntcoda left | 00:34 |
| almostautomated → almostautomated| | 00:37 |
| → petercoulton joined | 00:41 |
| → nighthwk1 joined | 00:42 |
| ← WinterWeaver left | 00:43 |
| ← memiux_ left | 00:47 |
| → memiux joined | 00:47 |
| → mithro joined | 00:48 |
| ← memiux left | 00:51 |
| → memiux_ joined | 00:51 |
| → _ joined | 00:53 |
| _ → Guest6411 | 00:53 |
| → talexb joined | 00:54 |
| ← sfwc left | 00:56 |
|
Pieter
| man git-update-ref | 00:56 |
|
Gitbot
| Pieter: the git-update-ref manpage can be found at http://git.or.cz/man/git-update-ref | 00:56 |
| ← Guest6411 left | 00:58 |
| → Guest6411 joined | 00:59 |
| ← cads left | 00:59 |
| → montylounge joined | 01:00 |
| → ia joined | 01:04 |
| → memiux joined | 01:05 |
| ← memiux_ left | 01:05 |
| → bwwww joined | 01:07 |
| ← ben_h left | 01:08 |
| ← scarabx left | 01:11 |
| ← Guest6411 left | 01:11 |
| → Guest6411 joined | 01:11 |
| ← Radar left | 01:14 |
| → Radar joined | 01:15 |
| ← solydzajs left | 01:18 |
| ← SRabbelier left | 01:18 |
| ← memiux left | 01:23 |
| ← markelikalderon left | 01:23 |
| → reprore_ joined | 01:24 |
| → memiux joined | 01:27 |
| ← jrmuizel left | 01:28 |
| joshthecoder → joshthecoder_afk | 01:29 |
| → schacon joined | 01:30 |
| ← mithro left | 01:38 |
| → mithro joined | 01:38 |
| ← squentin_ left | 01:41 |
| → markelikalderon joined | 01:41 |
| ← montylounge left | 01:45 |
| → jrmuizel joined | 01:46 |
| ← reprore__ left | 01:47 |
| ← jrmuizel left | 01:47 |
| ← Guest6411 left | 01:49 |
| → jrmuizel joined | 01:49 |
| → Guest6411 joined | 01:49 |
| → reprore__ joined | 01:52 |
| → WALoeIII joined | 01:55 |
| → repro____ joined | 01:55 |
| ← ajonat left | 01:56 |
| → cedric_ joined | 01:56 |
| ← reprore_ left | 01:57 |
| ← codebrulee left | 01:57 |
| → xorg62 joined | 01:57 |
| ← bwwww left | 01:59 |
| → cemerick joined | 02:00 |
| → limx__ joined | 02:00 |
| ← reprore__ left | 02:04 |
| ← Guest6411 left | 02:05 |
| ← cemerick left | 02:05 |
| → jksz joined | 02:06 |
| → jchris joined | 02:07 |
| → travisjeffery joined | 02:08 |
| ← limx__ left | 02:13 |
| → Guest6411 joined | 02:13 |
| → Minimiscience joined | 02:14 |
| → reprore_ joined | 02:14 |
| → wmoxam joined | 02:16 |
| → parth-vader joined | 02:19 |
| ← parth-vader left | 02:19 |
| ← blaenk left | 02:20 |
| → cytrinox_ joined | 02:21 |
| → lmarinho joined | 02:27 |
| ← memiux left | 02:27 |
| → blaenk joined | 02:29 |
| → repror___ joined | 02:31 |
| ← repro____ left | 02:31 |
| → bgerber joined | 02:37 |
| → JasonWoof joined | 02:38 |
| → RurouniJones joined | 02:40 |
| ← Guest6411 left | 02:42 |
| → TekLok joined | 02:42 |
| → summerbug joined | 02:47 |
| → Mkop joined | 02:48 |
| ← reprore_ left | 02:48 |
| → memiux joined | 02:50 |
| → tjafk2 joined | 02:52 |
| → Guest7710 joined | 02:54 |
|
Guest7710
| hello. | 02:55 |
| Guest7710 → UltraBob | 02:55 |
|
UltraBob
| have a (probably stupid) question | 02:55 |
| → montylounge joined | 02:56 |
|
UltraBob
| I am in a situation where I am in a subnet and have a local ip address, and it is not feasible to accept ssh connections. I am connecting to a server that does have a public static ip, so basically my connection is one way | 02:56 |
| → ericindc_ joined | 02:56 |
| → x_or joined | 02:56 |
|
UltraBob
| I can connect from my local machine to the server, but not the other way around | 02:56 |
|
| my thought is to have a master repository locally where I work on files and then push them to the server | 02:57 |
|
| my question is how do I clone my local repository onto the server, and then how do I manage pushing to it? | 02:58 |
|
cehteh
| isnt that the common case? | 02:59 |
|
| i mean i dont use my server to call my laptop | 02:59 |
| ← montylounge left | 02:59 |
|
cehteh
| what do you mean by 'master' repository .. git makes no such distinctions | 03:00 |
|
UltraBob
| ok, that was just a distinction in my mind. like I said probably a stupid question, but I'm not getting my head around it todday | 03:00 |
|
cehteh
| usually you have the one (or more) where you work on and publish your work on some server | 03:00 |
|
UltraBob
| so in this common case how do you do it? | 03:00 |
|
cehteh
| the repository on the server should be bare | 03:01 |
|
| you work and commit locally and push that up to the server | 03:01 |
|
| if you server is shared between developers, other may push there too .. in their own repository, or in their own branches, or maybe even in some central merge branch (master?) | 03:02 |
|
UltraBob
| ok, I didn't explain in enough detail | 03:02 |
|
| I want the rep on the server to be usable as a directory in the website | 03:02 |
| → ekristen joined | 03:03 |
|
UltraBob
| I am editing plugin files locally and then when I push them, I want them to be in the same form on the server | 03:03 |
|
ekristen
| how do I checkout a repo up to a specific commit id? | 03:03 |
| → incognit_O_ joined | 03:03 |
|
cehteh
| UltraBob: thats little more complicated because it cant be bare then, actually its not recommended | 03:03 |
| ← hobodave left | 03:04 |
|
incognit_O_
| maybe... :-)) | 03:04 |
|
| ati gasit si cripta si mausoleul ?!!? | 03:04 |
|
cehteh
| but well we do that with our website too :) .. usually you reset the working copy in the post-recieve hook , there are examples laying around | 03:04 |
|
incognit_O_
| Maus-o-leul ?? | 03:04 |
|
UltraBob
| cehteh I suppose I could have a bare repository on the server and then run a script to log into the server and pull to a working rep on the same server | 03:05 |
| ← Minimiscience left | 03:05 |
| joshthecoder_afk → joshthecoder | 03:05 |
| incognit_O_ → umbritool | 03:05 |
|
UltraBob
| cehteh with that second rep being the one in the web directory | 03:05 |
| → dreiss joined | 03:05 |
|
cehteh
| UltraBob: yes that would work too | 03:05 |
|
umbritool
| La Festa si La Fildes sunt nebunii !!! | 03:05 |
| ← umbritool left | 03:05 |
|
cehteh
| http://lumiera.org/.git/hooks/post-receive << our hack, not the best/recommended way but works | 03:06 |
|
| ekristen: prolly you want to create a branch for that? .. git checkout -b temporary-work $sha1 | 03:07 |
|
ekristen
| thanks | 03:07 |
|
UltraBob
| cehteh ok, so if you can help me develop this a little further. assuming I go twith the two reps on the server route. first I create a bare rep on the server, then I need to 1) clone my local rep to it. 2) clone that rep to my working copy 3) figure out how to push to the bare rep. Could you help me with how to do 1 and 3? | 03:08 |
| → sfwc joined | 03:08 |
|
cehteh
| UltraBob: just similar in a post-recieve hook | 03:08 |
|
| first you set it up git clone /path/to/bare public_checkout | 03:09 |
| → summerbug_ joined | 03:09 |
| ← blaenk left | 03:09 |
| ← sfwc left | 03:09 |
| ← jrmuizel left | 03:09 |
|
almostautomated|
| UltraBob: not sure of your traffic; but you might also want to think of using 3 repos. 1 bare, then two that you'd switch the load to via apache ( or whatever you use ) It'd suck to cause errors for currently connected sessions | 03:10 |
| ← chocolate_jesus left | 03:10 |
| → MachX joined | 03:10 |
|
cehteh
| then you just add cd /path/to/public_checkout; git pull; to the bare post-recieve hook | 03:10 |
|
UltraBob
| cehteh can we use some pseudo connect info so I'm sure I understand? say ssh://my.server/path/to/rep | 03:10 |
|
cehteh
| maybe you have to unset some GIT_* env vars not to confuse git | 03:10 |
|
| this was server local paths | 03:11 |
|
| could be almost verbatim used, just with the correct paths | 03:11 |
| ← ekristen left | 03:12 |
|
UltraBob
| see the place where I'm confused is with how to get my local data up to the bare rep on the server | 03:12 |
|
cehteh
| and the env unsetting (i never tried it this way, improvizing :)) | 03:12 |
|
| git push | 03:12 |
|
| .. in steps: | 03:12 |
|
| on your local | 03:12 |
|
| git remote add myserver [email@hidden.address] | 03:13 |
|
| then you can use git push myserver ... | 03:13 |
|
UltraBob
| aha! | 03:13 |
|
cehteh
| with some configs you can configure what to push by default or just give branches explicitly | 03:13 |
|
UltraBob
| that was the part I couldn't get to come to the surface from when I was first experimenting with git a few months ago | 03:14 |
|
cehteh
| you could use that w/o registering the remote too | 03:14 |
|
| git push [email@hidden.address] ... | 03:14 |
|
UltraBob
| so you can push to a bare rep with nothing in it? | 03:14 |
|
cehteh
| or use ssh:// urls .. whatever you prefer | 03:14 |
|
UltraBob
| no need to establish any connection there first | 03:14 |
|
cehteh
| yes, actually thats the way i prefer to initialize repos | 03:15 |
|
| mkdir project; cd project; git init --bare | 03:15 |
| ← WALoeIII left | 03:15 |
|
UltraBob
| cehteh ok just for further personal fortification. Say that I then tried to run a push from a completely seperate repository to that same bare rep, what would happen? | 03:15 |
|
cehteh
| there are some other spells to do that, rsyncing it up or cloning will work too | 03:16 |
| ← lmarinho left | 03:16 |
|
cehteh
| depends on what branches you push and what state they are | 03:16 |
| ← jchris left | 03:16 |
|
cehteh
| usually git refuses to do destructive things but allows fast forwards | 03:16 |
|
UltraBob
| say that I have rep a which contains one project and rep b which contains a completely seperate project | 03:17 |
|
cehteh
| you can even configure the server side to refuse to override it | 03:17 |
|
UltraBob
| I set up a bare rep and push to it from a and then push to it from b | 03:17 |
|
| it would refuse that by default? | 03:17 |
|
cehteh
| in theory you can push completely unrelated prokects into one repo | 03:17 |
|
| git only knows about heads (branches and tags etc) it doesnt know about projects | 03:18 |
|
| of course if both projects have a 'master' and you try to push these as master on the remote git will notice that these have nothing in common and refuse to do so | 03:18 |
|
UltraBob
| cehteh, I need to go read the documentation again, but this has been invaluable (I think, actually trying it will be the test) for getting me up and going quickly. Thanks! | 03:18 |
|
cehteh
| well keeping more than one project in a single repo is very uncommon | 03:19 |
|
| (except kde .. but :P) | 03:19 |
| → blaenk joined | 03:19 |
| ← RurouniJones left | 03:25 |
| → RurouniJones joined | 03:25 |
| → bousquet joined | 03:26 |
| → sakyamuni joined | 03:27 |
|
bousquet
| Why does git think my css file is a single line? Multiple changes to it get recorded as 1 deletion, 1 addition (the whole file) | 03:27 |
|
offby1
| interesting! | 03:27 |
|
| I dunno but will be curious to hear the solution | 03:28 |
| ← kwirky0 left | 03:28 |
| ← summerbug left | 03:29 |
| → sfwc joined | 03:30 |
| → orafu joined | 03:33 |
| ← cedric_ left | 03:36 |
| → brizly joined | 03:36 |
| → jony joined | 03:37 |
| ← Radar left | 03:37 |
| → Radar joined | 03:37 |
| → solydzajs joined | 03:38 |
| ← Radar left | 03:38 |
| → Radar joined | 03:39 |
| ← sfwc left | 03:40 |
| ← MachX left | 03:44 |
|
bousquet
| Anyone have any ideas on this? - Why does git think my css file is a single line? Multiple changes to it get recorded as 1 deletion, 1 addition (the whole file) | 03:44 |
|
almostautomated|
| well, that was definitely an interesting read: http://userweb.kernel.org/~junio/200810-Chron.pdf | 03:44 |
| → reprore joined | 03:45 |
| → kmap joined | 03:46 |
|
DrNick
| bousquet: are you on a Mac, by chance? | 03:46 |
|
bousquet
| yeah | 03:48 |
|
| is there a binary flag or something that's getting set accidenatally? | 03:48 |
| → repr_____ joined | 03:50 |
| ← repror___ left | 03:50 |
| → sfwc joined | 03:56 |
| ← memiux left | 03:58 |
| → cedricv joined | 04:00 |
| → srid joined | 04:02 |
|
offby1
| perhaps each change is modifying the line separators? | 04:03 |
| ← jony left | 04:05 |
| ← reprore left | 04:09 |
|
bousquet
| not sure, i haven't been working across win/osx | 04:09 |
| ← summerbug_ left | 04:12 |
| → k0001 joined | 04:13 |
| ← Mkop left | 04:16 |
|
bousquet
| DrNick: any ideas? | 04:19 |
| ← solydzajs left | 04:21 |
| almostautomated| → almostautomated | 04:21 |
| ← srid left | 04:23 |
| joshthecoder → joshthecoder_afk | 04:23 |
| → scarabx joined | 04:30 |
| → bousquet_ joined | 04:31 |
| → jchris joined | 04:32 |
| ← bousquet left | 04:32 |
| ← travisjeffery left | 04:32 |
| ← schacon left | 04:33 |
| → schacon joined | 04:35 |
| ← bousquet_ left | 04:35 |
| → bousquet joined | 04:35 |
| ← leachim6 left | 04:36 |
| ← sfwc left | 04:39 |
| → sfwc joined | 04:40 |
| → jrmuizel joined | 04:41 |
| → kate21de joined | 04:42 |
| ← jrmuizel left | 04:42 |
| ← schacon left | 04:43 |
|
cxreg
| bousquet: sounds like some autocrlf issue | 04:45 |
| → schacon joined | 04:46 |
| → Flathead joined | 04:46 |
| ← jchris left | 04:47 |
| → jrmuizel joined | 04:47 |
| → priidu joined | 04:48 |
|
bousquet
| so how do I force it to be treated as a text file? | 04:51 |
| ← brizly left | 04:53 |
| → brizly joined | 04:54 |
| ← schacon left | 04:55 |
| → schacon joined | 04:55 |
| → solydzajs joined | 04:57 |
|
cxreg
| bousquet: is there a .gitattributes file anywhere? | 04:57 |
|
bousquet
| cxreg: not yet | 04:57 |
|
cxreg
| Mac OS used to use only \r as line separators, I wonder if that's what DrNick meant | 04:58 |
| ← ericindc_ left | 04:58 |
|
cxreg
| lacking \n, git would think it's just one line | 04:58 |
| ← schacon left | 04:59 |
|
bousquet
| ah, that could be it, i don't think this has been touched by windows. which a lot of the newline results mentioned | 04:59 |
| → schacon joined | 05:00 |
|
| almostautomated is pretty sick of newlines and windows. | 05:00 |
|
cxreg
| not being a Mac user, I'm not sure how to tell you what's going on there.. | 05:01 |
|
| try something like this? | 05:01 |
|
| perl -ne 'print if /\n/' my-style.css | wc -l | 05:01 |
| → thiago_home joined | 05:01 |
|
bousquet
| 0 | 05:02 |
|
DrNick
| yeah, git assumes that line endings are LF and has code to convert DOS/Windows CRLF line endings, but no support for old-school Mac CR line endings | 05:03 |
| ← solydzajs left | 05:05 |
| ← scarabx left | 05:05 |
| → curvature joined | 05:06 |
|
bousquet
| interesting. | 05:06 |
|
cxreg
| if you dont mind fixing your newlines (and you should), try perl -pi -e 's/\r/\n/g' my-style.css | 05:06 |
| → ankit9 joined | 05:07 |
| → bdowning_ joined | 05:08 |
| → jony joined | 05:08 |
|
bousquet
| cxreg: ok, dope. that looks like it did the trick. git is showing each line now when i diff in the working dir | 05:08 |
| → davidfetter joined | 05:09 |
|
bousquet
| cxreg: do you guys usually run with config.global autocrlf = true? | 05:10 |
| bdowning_ → bdowning | 05:10 |
| → smiskis joined | 05:10 |
| → ajonat joined | 05:10 |
| → solydzajs joined | 05:11 |
|
cxreg
| I've never used it | 05:11 |
|
bousquet
| i don't have any windows users on the team. not even sure why this newline issue came up | 05:12 |
|
cxreg
| likely someone either with an old mac, or an old editor, or something? | 05:12 |
|
offby1
| bousquet: I have that set when I use git on Windows, which isn't often | 05:12 |
|
bousquet
| yeah, maybe an old editor. this css was given to me from another dev, they probably use dreamweaver or something dumb | 05:13 |
| → roop joined | 05:13 |
| → agile joined | 05:14 |
| → hyperair joined | 05:17 |
| → jony1 joined | 05:18 |
| ← schacon left | 05:20 |
| → psankar joined | 05:20 |
| → MrAwesome joined | 05:21 |
| → jceb joined | 05:21 |
| → schacon joined | 05:21 |
| → sea-gull joined | 05:21 |
| → schacon_ joined | 05:22 |
| → schacon__ joined | 05:23 |
| ← schacon left | 05:23 |
| ← schacon_ left | 05:23 |
| ← jony left | 05:27 |
| → girishr joined | 05:32 |
| → seangrove joined | 05:33 |
| → robin joined | 05:36 |
| ← petercoulton left | 05:37 |
| → tchan joined | 05:39 |
| ← jrmuizel left | 05:40 |
| → NoOffenc joined | 05:40 |
| ← thiago_home left | 05:42 |
| ← repr_____ left | 05:43 |
| ← bousquet left | 05:46 |
| ← solydzajs left | 05:47 |
| ← seangrove left | 05:47 |
|
| almostautomated wonders if there is an automatic way of dealing with line endings in an _organized_ mixed line ending project? | 05:53 |
|
cehteh
| with gitattributes and a lot of magic | 05:54 |
|
| eh even easier .. rtfm :) | 05:56 |
| → sunoano joined | 05:56 |
| ← brizly left | 05:56 |
|
almostautomated
| hrrmmm auto crlf = input? I'm thinking more of a catch the dev error type thing | 05:57 |
| → seangrove joined | 05:57 |
|
cehteh
| how do you define a 'error'? | 05:58 |
| ← robin left | 05:59 |
|
almostautomated
| The dev clones the repo with cauto crlf = on then tries pushing it; causes lots of yucky modified msgs | 06:00 |
|
| We have two main dirs | 06:00 |
| ← nighthwk1 left | 06:00 |
| ← NoOffenc left | 06:00 |
|
almostautomated
| One is from Scintilla and the other is PowerEditor | 06:00 |
| → nighthwk1 joined | 06:00 |
|
almostautomated
| PowerEditor is crlf and Scintilla isn't | 06:01 |
|
| So, there isn't an issue if git is setup right; but if it isn't I'm just wondering if there'd be an 'automatic' way to catch it | 06:02 |
|
cehteh
| i am not very used to this crlf think .. but there is either some way to preserve it or you can use a pre-commit hook to check for all kinds of policies you set up | 06:03 |
|
tansell
| what do people use for code review with git? | 06:04 |
|
almostautomated
| tansell: not sure I was surfing google earlier to find something but got side-tracked | 06:05 |
| ← nighthwk1 left | 06:05 |
| ← bla left | 06:06 |
|
almostautomated
| cehteh: that's what I'm thinking... pre commit hook checking the target dir and verifying the endings | 06:06 |
|
cehteh
| look at gitattributes too ..'filter' | 06:06 |
|
almostautomated
| thanks, will do | 06:06 |
| → aposada joined | 06:09 |
| ← aposada left | 06:10 |
| → ohadlevy joined | 06:10 |
| → fridim_ joined | 06:10 |
|
ohadlevy
| hello, anyone willing to help with a strange git svn rebase issue? | 06:11 |
|
almostautomated
| go for it; not many will answer without a specific question | 06:12 |
|
ohadlevy
| I have a git-svn repo, I created a branch, worked on it, checkout master, merged the new branch, adn did dcomit, but now svn rebase fails | 06:12 |
|
| complaining that some files do not exists in the index | 06:13 |
|
| when doing a manual merge, its really strange, as those files were not modified at all | 06:13 |
|
| in different directories etc | 06:13 |
| ← sakyamuni left | 06:14 |
|
almostautomated
| ohadlevy: I haven't used git svn to go back to dcommit yet... | 06:16 |
|
ohadlevy
| almostautomated: well.. dcommit works, just rebase | 06:16 |
| → ph^ joined | 06:16 |
|
ohadlevy
| another thing to mention, I linked a file to a sub dir of the repo, and worked on it in some part of the time, could that mess up things a bit? | 06:17 |
|
almostautomated
| hopefully someone else will know... just hang out someone will likely answer. | 06:18 |
| ← jceb left | 06:20 |
| almostautomated → almostautomated| | 06:20 |
| → godog joined | 06:20 |
| ← blaenk left | 06:22 |
| → bschindler joined | 06:23 |
| → lohrun joined | 06:23 |
| → sakyamuni joined | 06:26 |
| → johan-s joined | 06:26 |
| → stuffcorpse joined | 06:27 |
| → mbroeker joined | 06:28 |
| → savonarola joined | 06:35 |
| → dterei joined | 06:35 |
| ← savonarola left | 06:35 |
| → solar_ant joined | 06:36 |
|
solar_ant
| hi all | 06:36 |
|
| is it possible that if I have a repository X | 06:36 |
|
| that has two folder X/a and X/b | 06:36 |
|
| that i can somehow clone only X/a | 06:36 |
| ← kate21de left | 06:38 |
| ← schacon__ left | 06:40 |
| ← ajonat left | 06:44 |
| → bla joined | 06:47 |
|
sdiz
| solar_ant: no | 06:49 |
| → altern joined | 06:51 |
| → dreiss_ joined | 06:52 |
| ← dreiss_ left | 06:52 |
| ← altern left | 06:52 |
| ← roop left | 06:52 |
| → galderz joined | 06:54 |
| → Freenode joined | 06:55 |
| ← UltraBob left | 06:56 |
| Freenode → Guest65312 | 06:56 |
| → Freenode_ joined | 06:56 |
| ← mbroeker left | 06:59 |
| ← hyperair left | 07:00 |
| → gilimanjaro joined | 07:02 |
| → j416 joined | 07:02 |
| → ciskje joined | 07:03 |
| → hyperair joined | 07:05 |
| → ben_h joined | 07:05 |
| → mbroeker joined | 07:06 |
| → Tuomas joined | 07:07 |
| ← ben_h left | 07:09 |
| → giallu joined | 07:09 |
| → Alinermedia joined | 07:09 |
| ← dterei left | 07:09 |
| → bmalee joined | 07:12 |
| ← bmalee left | 07:12 |
| ← gilimanjaro left | 07:12 |
| → bmalee joined | 07:12 |
|
cxreg
| http://lwn.net/Articles/131657/ is an amusing read | 07:12 |
| ← Guest65312 left | 07:14 |
| → khmarbaise joined | 07:14 |
| → Stravy joined | 07:15 |
| ← tbf left | 07:16 |
| → tbf joined | 07:16 |
|
solar_ant
| sdiz: I have seen such kind of clone on compiz | 07:17 |
|
| wonder how they made it possible | 07:17 |
|
wereHamster
| why *they*? | 07:19 |
|
| you cloned a repository that was already split up? | 07:20 |
|
cxreg
| git-subtree maybe? | 07:21 |
| → roop joined | 07:22 |
| → qhoxie joined | 07:22 |
| → jmesnil joined | 07:23 |
|
solar_ant
| wereHamster: yes | 07:24 |
|
| I just google and found out about git submodule add :) | 07:25 |
|
| ok now I have another challenge | 07:26 |
|
| I am able to add *~ to .gitignore | 07:26 |
|
| but i also want to ignore config.php in the current directory | 07:27 |
|
| and not in other directories | 07:27 |
|
| i tried ./config.php | 07:27 |
|
wereHamster
| config.php | 07:27 |
|
solar_ant
| wereHamster: wont that ignore like config.php in all the directories? | 07:27 |
| → madduck joined | 07:28 |
|
wereHamster
| no | 07:28 |
|
| err, /config.php | 07:28 |
|
| man gitignore, as always ;) | 07:29 |
|
Gitbot
| wereHamster: the gitignore manpage can be found at http://git.or.cz/man/gitignore | 07:29 |
|
solar_ant
| :) | 07:29 |
|
| sorry | 07:29 |
|
| thanks | 07:29 |
| ← JasonWoof left | 07:36 |
| → lucsky joined | 07:38 |
|
eMBee
| good afternoon | 07:39 |
|
| can i tell git-status to list files that are ignored through gitignore? | 07:39 |
|
| eMBee can't find such an option in the manpage | 07:39 |
| dwmw2_gone → dwmw2 | 07:40 |
|
charon
| eMBee: i think git ls-files can do that, through some combination of -i and possibly --exclude-standard | 07:40 |
| → marc_kdab joined | 07:40 |
|
charon
| eMBee: looks like git ls-files -io --exclude-standard does it | 07:41 |
| → jaeckel joined | 07:41 |
|
eMBee
| charon: which version of git do you have? that command gives a usage error in 1.6.2.4 | 07:42 |
| ← jaeckel left | 07:42 |
| → jaeckel joined | 07:43 |
| ← agenteo left | 07:43 |
|
eMBee
| -i -o works though | 07:45 |
|
charon
| hmm, "git version 1.6.3.1.345.g53491" | 07:46 |
| → {SD} joined | 07:46 |
| ← Alinermedia left | 07:46 |
|
eMBee
| ah, seems the handling of single letter options has been improved :-) | 07:47 |
| → dvorak1 joined | 07:47 |
| ← madduck left | 07:47 |
| → madduck joined | 07:47 |
| → Sho_ joined | 07:49 |
| → psoo joined | 07:51 |
| → ceyusa joined | 07:51 |
| → the_zeno joined | 07:51 |
| → gilimanjaro joined | 07:51 |
| ← psoo left | 07:52 |
| → wshimmy joined | 07:52 |
|
charon
| ce8e88040 is the "culprit" | 07:52 |
|
Gitbot
| [git ce8e88040]: http://tinyurl.com/qfbrh4 -- parse-opt: migrate builtin-ls-files. | 07:52 |
|
eMBee
| :-) | 07:52 |
| ← Sho_ left | 07:55 |
| → cao joined | 07:55 |
|
eMBee
| is there a convenient way to import a whole snapshot of a source tree (like an exported tree). currently i checkout some commit (where i want to apply the changes from the snapshot) then remove everything and untar the snapshot in its place. then commit as is... | 07:55 |
| → psoo joined | 07:55 |
|
Arrowmaster
| i thought there was something you could just feed archives to | 07:56 |
| → Sho_ joined | 07:56 |
|
eMBee
| yeah, that would be nice... | 07:56 |
|
charon
| eMBee, Arrowmaster: there are some scripts in <HEAD:contrib/fast-import/> | 07:57 |
|
Gitbot
| charon: I'm sorry, there's no such object: HEAD:contrib/fast-import/. | 07:57 |
|
charon
| meh. | 07:57 |
|
| <HEAD:contrib/fast-import/import-tars.perl> | 07:57 |
|
Gitbot
| [git import-tars.perl]: http://tinyurl.com/ohuov6 [blob] | 07:57 |
|
| eMBee looks, thanks | 08:00 |
| jony1 → jony | 08:04 |
| → rshann_ joined | 08:04 |
| → GodEater joined | 08:05 |
| ← tbf left | 08:05 |
| ← wshimmy left | 08:06 |
|
eMBee
| ah, it imports to a seperate branch, good | 08:06 |
| → shruggar joined | 08:07 |
| → tbf joined | 08:07 |
| ← roop left | 08:09 |
| → lbt joined | 08:10 |
| → Ademan joined | 08:10 |
|
klmann
| hi guys. is there a script/command that creates the pull request mails? | 08:14 |
|
eMBee
| hmmm, it creates a seperate branch with no ancestor, not good. unless i change my workflow | 08:14 |
|
klmann
| or is it done manually every time? does not look like that i.e. on the lkml | 08:15 |
|
charon
| eMBee: you can always graft it ;) | 08:15 |
|
| klmann: man git-request-pull | 08:15 |
|
Gitbot
| klmann: the git-request-pull manpage can be found at http://git.or.cz/man/git-request-pull | 08:15 |
|
klmann
| thanks | 08:16 |
|
sea-gull
| can anybody explain why after checkout 'w' flag in the file mode diseappear? | 08:17 |
| → gaveen joined | 08:18 |
| → dwave joined | 08:18 |
|
eMBee
| charon: can you explain how to graft? | 08:20 |
|
charon
| eMBee: suppose $root is from your fast-import experiment, and $last is the last commit along the same ancestry in your "target" history | 08:21 |
|
eMBee
| ok | 08:21 |
|
Arrowmaster
| http://git-scm.org/gitwiki/GraftPoint | 08:21 |
|
charon
| eMBee: then you can do 'echo $root $last >> .git/info/grafts' | 08:21 |
|
| which effectively tells git to pretend the parents of $root were $last | 08:21 |
|
eMBee
| to pretend, ah, ok | 08:21 |
|
charon
| then verify that the result is correct with gitk or similar, and then finally make them "real" by applying filter-branch | 08:22 |
|
eMBee
| ohhh | 08:22 |
| → dwave_ joined | 08:23 |
| → ceyusa_ joined | 08:24 |
|
| eMBee was going to apply what he learned here: http://colabti.org/irclogger/irclogger_log/git?date=2008-12-19#l459 (esp: http://colabti.org/irclogger/irclogger_log/git?date=2008-12-19#l497 ) to set the commits. but graft and filter-branch seems much easier | 08:26 |
| → gitte joined | 08:27 |
| ← ceyusa left | 08:29 |
| → tono joined | 08:31 |
| → targion joined | 08:33 |
| ← rshann_ left | 08:36 |
| ← Sho_ left | 08:37 |
| → up_the_irons2 joined | 08:38 |
| ← dwave left | 08:38 |
| ← psoo left | 08:38 |
| → Sho_ joined | 08:38 |
| → doener joined | 08:38 |
| ← Sho_ left | 08:39 |
| → rshann_ joined | 08:39 |
| → Sho_ joined | 08:39 |
| ← Radar left | 08:39 |
| → Lgb joined | 08:39 |
| → Radar joined | 08:42 |
|
eMBee
| i em getting: error: bad graft data: ... | 08:44 |
|
| i just put two commitids on a line | 08:44 |
| ← Radar left | 08:44 |
|
hyperair
| where did you see that error exactly? | 08:44 |
| → psoo joined | 08:44 |
|
Ilari
| eMBee: Do those two commit IDs exist? Are they complete (40 hex chars, with lowercase a-f)? | 08:45 |
| → naeu joined | 08:45 |
|
eMBee
| yes, i picked them with git show ... | 08:46 |
| → roop joined | 08:47 |
|
eMBee
| oh, hmm, maybe i picked the wrong thing | 08:47 |
|
| hmm, no | 08:47 |
|
| git show only lists the commit id | 08:47 |
| → tvw joined | 08:48 |
| dwave_ → asksol | 08:50 |
| → niki joined | 08:51 |
| ← disjunctor left | 08:51 |
| → bx2 joined | 08:58 |
| → wshimmy joined | 08:58 |
| → hutingung joined | 09:00 |
|
hutingung
| cool mibbit | 09:00 |
|
| any1 can tel me which i should use GIT or SVN? | 09:01 |
|
| reason? | 09:01 |
|
| 任何人? | 09:02 |
|
Ilari
| eMBee: Also, another reason for that might be that you created cyclic reference? | 09:02 |
|
hutingung
| 任何人在这里? | 09:02 |
|
Ilari
| EPARSE | 09:02 |
|
hutingung
| 测试工具的transalation | 09:02 |
|
| 意思吗? | 09:02 |
| ← eletuchy left | 09:02 |
|
hutingung
| 无聊频道 | 09:03 |
|
| 我退出 | 09:03 |
| ← hutingung left | 09:03 |
| → eletuchy joined | 09:03 |
| ← Flathead left | 09:03 |
| → un|ogic joined | 09:04 |
|
eMBee
| Ilari: hmm, i have A--B--C, and then ran import-tars which created a commit X, and then set X C into grafts. X has no children, so nothing could cause a cycle here | 09:05 |
|
| X has no other parents either | 09:06 |
|
smiskis
| What is GIT's bigest advantages except being able to have local repositories? | 09:07 |
| ← rshann_ left | 09:07 |
| ← markelikalderon left | 09:07 |
| → disjunctor joined | 09:07 |
| → intripoon joined | 09:08 |
|
wereHamster
| smiskis: being able to have local repositories sums pretty much all the other advantages up | 09:08 |
|
drizzd
| wereHamster: except better merge support | 09:09 |
|
wereHamster
| local repos allow you to edit/rearrange commits before you push those. | 09:09 |
|
drizzd
| a centralized system could do that as well | 09:09 |
|
wereHamster
| ather advantages are: stash, bisect | 09:09 |
|
eMBee
| speed, ability to fix history (git rebase -i is really great), efficiently manage many branches, powerful tools to handle complex commits, bisect is very nice for debugging too | 09:10 |
|
smiskis
| drizzd: Why is merging better.. than lets say SVN? | 09:10 |
|
drizzd
| smiskis: I don't know. I've never used SVN. Everybody just tells me so. | 09:11 |
|
eMBee
| up to 1.5 svn did not track merges at all | 09:11 |
|
| which means you had to manyally take care of what you wanted to merge | 09:11 |
|
smiskis
| i must say git suffers from unintutive CLI.. just like older SCMs | 09:12 |
|
drizzd
| smiskis: I suppose a major reason is speed itself. Due to the slowness of centralized repositories, many merge strategies are infeasible. | 09:12 |
| ← ohadlevy left | 09:12 |
|
smiskis
| okey.. thanx guys | 09:12 |
|
drizzd
| smiskis: improvements are always welcome | 09:12 |
| → mstrl joined | 09:13 |
|
eMBee
| git's commandline interface it not less intuitive than that of svn, really. it may just be a bit overwhelming if you look at all the commands available. but is easy if you follow a guide which tells you the most common commands and ignore all others (which you'll rarely, if ever, need) | 09:14 |
| → Octalot joined | 09:14 |
| → emdete joined | 09:14 |
|
smiskis
| eMBee.. i meant its as overwhelming as older ones.. like SVN | 09:15 |
|
emdete
| when i use git-apply, arent those changes committed? how can i achieve that | 09:15 |
|
eMBee
| smiskis: well, you were comparing to svn at first, so... | 09:15 |
|
drizzd
| emdete: git am | 09:15 |
|
smiskis
| eMBee: could you advice me on such make-it-feel-easy guide? | 09:15 |
| ← ceyusa_ left | 09:16 |
|
emdete
| drizzd: thnks... | 09:16 |
|
drizzd
| emdete: git apply doesn't expect commit info | 09:16 |
|
eMBee
| anyone else have a good link for smiskis off hand? | 09:16 |
| → kraymer joined | 09:16 |
|
| eMBee would need to look | 09:16 |
| → KingBug_ joined | 09:16 |
| → ferdy joined | 09:17 |
|
drizzd
| smiskis: I think the manual (not the manpages) is quite easy to read | 09:17 |
|
Ademan
| if I want to discard the changes I've made on a given file rather than resolving a merge, how would I do that?\ | 09:19 |
|
eMBee
| generally, i think it is not relevant to compare the git commandline to gui tools. and as far as the commandline goes git fares well even compared to other modern scms | 09:19 |
|
| and there are git gui tools (most notably gitk) which is really helpful in understanding the branches and history in your repository. | 09:21 |
|
drizzd
| Ademan: git checkout :2:file | 09:21 |
|
eMBee
| of all scm gui tools i have seen, gitk looks the best (comparing screenhots here) | 09:21 |
|
drizzd
| or is it :3:file? | 09:21 |
|
| Ademan: it's in the 'how to merge' section of the manual | 09:22 |
|
Ademan
| alright thanks drizzd | 09:22 |
| → aspotashev joined | 09:22 |
|
drizzd
| ok, 1 is base, 2 is HEAD, and 3 is MERGE_HEAD | 09:23 |
|
| drizzd has to remember that | 09:23 |
| ← {SD} left | 09:24 |
|
Arrowmaster
| isnt there a shortcut for that stuff now? | 09:24 |
| → d0k joined | 09:24 |
|
Arrowmaster
| like --ours/--theirs | 09:25 |
|
doener
| git checkout --theirs/--ours <file> | 09:25 |
|
| Ademan: did that "git checkout :3:file" work at all? AFAIK, it should not | 09:26 |
| → ceyusa_ joined | 09:26 |
|
doener
| and it does not :-) | 09:26 |
| ← plasticine left | 09:31 |
|
Ademan
| doener: we tried the "nice" way with mergetool | 09:31 |
|
| no luck at present though | 09:31 |
|
| even after resolving the merge he cant commit, it says he still has a pending merge | 09:32 |
|
eMBee
| could grafts error be because there is no common ancestor between the two commits? | 09:33 |
|
hyperair
| no, that shouldn't be an issue | 09:33 |
|
| you're changing the ancestor by grafting the tree | 09:33 |
|
jaeckel
| smiskis: try to have a look at the 2 git cheat sheets | 09:33 |
| → legnaleurc joined | 09:34 |
|
eMBee
| right | 09:34 |
|
jaeckel
| there are all often used commands listed and also the possible flows | 09:34 |
|
| eMBee wonders what's wrong then | 09:34 |
| ← dreiss left | 09:34 |
|
jaeckel
| http://git.or.cz/gitwiki/GitCheatSheet http://jan-krueger.net/development/git-cheat-sheet-extended-edition | 09:36 |
| ← Stravy left | 09:36 |
| ← sakyamuni left | 09:36 |
| → Stravy joined | 09:37 |
| ← kraymer left | 09:40 |
| → plasticine joined | 09:40 |
| → struberg joined | 09:42 |
|
Ilari
| eMBee: Some nasty "invisible gremlins" on that line? Try to dump it using 'od -t x1'? | 09:43 |
|
| eMBee: For instance, its surprisingly easy to type U+00A0 instead of U+0020. | 09:43 |
| ← jksz left | 09:45 |
| → sadleder joined | 09:48 |
| ← cedricv left | 09:48 |
| ← mithro left | 09:48 |
|
eMBee
| no, possibly the fact that there was a tag and a branch witrh the same name pointing to different commits, causing confusion | 09:48 |
| ← bschindler left | 09:49 |
| ← ceyusa_ left | 09:49 |
|
eMBee
| now i only get an error if the commits are in the wrong order (even though that should work too | 09:49 |
|
| but i still do not see a 'new' history | 09:50 |
|
| git log of the branch with the grafted commit does not show any new parent, nor does gitk | 09:50 |
| → mithro joined | 09:55 |
|
mithro
| can a branch have a comment? | 09:56 |
|
wereHamster
| mithro: no | 09:56 |
|
| a branch is just a pointer to a commit | 09:57 |
| → knitt1 joined | 09:58 |
| → ekristen joined | 10:02 |
| ← ekristen left | 10:02 |
| → aqmaiu joined | 10:02 |
| → HG` joined | 10:04 |
| ← fridim_ left | 10:05 |
| ← targion left | 10:14 |
| ← tvw left | 10:14 |
| ← dvorak1 left | 10:16 |
| ← bx2 left | 10:17 |
| → cousine_ joined | 10:19 |
|
eMBee
| is there any documentation for the format in the grafts file? i don't get it | 10:19 |
|
| the parent comes first, and then the child? | 10:19 |
| cousine_ → cousine | 10:19 |
|
doener
| eMBee: <commit> <parent1> <parent2>... | 10:22 |
|
eMBee
| ok | 10:22 |
|
doener
| i.e. the same format you get from --parents (rev-list, log, show, ...) | 10:23 |
| ← emdete left | 10:25 |
|
eMBee
| hmm | 10:25 |
|
| eMBee has no luck making it work | 10:25 |
|
eMBee
| ohh, restarting gitk help | 10:26 |
|
| with grafts do i replace parents or add the? | 10:27 |
|
| them | 10:27 |
| → aziz joined | 10:29 |
| → HG`` joined | 10:32 |
|
Grum
| eMBee: replace | 10:33 |
|
| so for a merge you need at least 2 parents | 10:33 |
|
| and for a root commit 0 | 10:34 |
| → petermarks joined | 10:34 |
|
eMBee
| ok, thanks. seems gitk is a little sensitive when reloading, restarting makes errors go away | 10:37 |
|
| it becomes much clearer when you can see the effects of the graft actually working | 10:37 |
|
petermarks
| Newbie question: I want to keep track of which version of our code is currently in staging in the remote repository my team shares. I was thinking about using a branch called "staging" and pushing to it just after we deploy. Is this a sensible approach or is there a better way? Also, If we rollback the version in staging, how do I reset the staging branch to an earlier version? | 10:39 |
| → bschindler joined | 10:40 |
| ← HG` left | 10:41 |
| → Hendu joined | 10:42 |
| → DavidKlein joined | 10:42 |
|
drizzd
| petermarks: you can always overwrite a branch using git push origin +staging | 10:43 |
|
petermarks
| drizzd: cool, so the + syntax completely overwrites a remote branch? | 10:45 |
|
drizzd
| yes, also push -f, but be careful with that. You don't want to rewrite a branch others are working on | 10:47 |
|
petermarks
| what about a slightly different approach: if I have a tag in my remote repository, can I set a branch in the remote repository to the tagged commit? | 10:48 |
| → codebrulee joined | 10:50 |
| ← sfwc left | 10:52 |
| → sfwc joined | 10:52 |
| → parasti joined | 10:55 |
| → cxvii joined | 10:55 |
|
drizzd
| petermarks: You seem to think that remote repositories are anything special | 10:56 |
|
| they are not | 10:56 |
|
| every remote is a git repository just as much as your local repo | 10:56 |
|
| the concept of remotes is simply there to ease synchonization between repositories | 10:57 |
|
| anything you can do to your local repo you can do to your remote by pushing (synchronizing) | 10:57 |
| ← eletuchy left | 11:00 |
| → ntoll joined | 11:00 |
| → mitkok joined | 11:01 |
| ← up_the_irons2 left | 11:02 |
| → up_the_irons2 joined | 11:06 |
|
petermarks
| drizzd: what seems different about a remote repository to a local one is that I can't use most of the git commands on it directly (please correct me if I'm wrong). You seem to have to do things locally first then push them to a remote. However, branches seem to be a repository specific thing so doing something to a remote branch is a confusing concept to me. | 11:09 |
|
| If I understand correctly, to do what I suggested I have to create a tag locally, push it to the remote. then push my local tag to the remote branch I want to set. Is that correct? | 11:10 |
| ← codebrulee left | 11:11 |
| → adamtanner joined | 11:14 |
| → adamtanner_ joined | 11:16 |
| ← adamtanner_ left | 11:17 |
| → runasand joined | 11:17 |
| ← sgronblo left | 11:17 |
| runasand → ninjarobot | 11:18 |
| ← mitkok left | 11:19 |
| ← jony left | 11:19 |
| → markelikalderon joined | 11:21 |
| ← ankit9 left | 11:28 |
| KingBug_ → KingBug | 11:29 |
| ← cxvii left | 11:33 |
| ← adamtanner left | 11:33 |
| → Moult_ joined | 11:34 |
| ← markelikalderon left | 11:34 |
| ← giallu left | 11:35 |
| → giallu joined | 11:36 |
| → Modius_ joined | 11:40 |
| ← smiskis left | 11:42 |
| → tcurdt joined | 11:43 |
| ← ciskje left | 11:43 |
| ← psankar left | 11:44 |
|
tcurdt
| hey folks, git-svn question: right now I am tracking only trunk ... how do I make git-svn aware of the fact that a branch was added in svn? so I can also commit to that branch via git-svn | 11:44 |
|
| just adding a svn-remote branch in the config? | 11:45 |
|
wereHamster
| tcurdt: add a new fetch refspec | 11:46 |
| → Modius__ joined | 11:47 |
| → bx2 joined | 11:51 |
| → zomg joined | 11:52 |
| → Nazcafan joined | 11:52 |
|
Nazcafan
| hello | 11:52 |
|
| How can I track the commits that impacted a particular file ? (knowing that in my case the file is a driver) | 11:53 |
|
ph^
| I'm trying to make a git hook on our shared repository to close redmine tickets, so I figured I should put a hook on the server, but I don't know which hook to edit? | 11:54 |
|
| post-update? post-receive? I need one with revisions | 11:54 |
| → ericindc joined | 11:54 |
|
gitte
| Nazcafan: "git log -- <file>" | 11:55 |
|
Nazcafan
| ah thanks | 11:55 |
| ← ericindc left | 11:55 |
|
wereHamster
| koenb: ah, that makes sense | 11:55 |
|
drizzd
| petermarks: that's one possibility. or you simply have a local branch pointing to the commit of your choice and push that | 11:55 |
|
gitte
| ph^: the documentation suggests post-receive. Did you read Documentation/githooks.txt? | 11:57 |
|
zomg
| Hi all.. I did a stupid mistake and I need to revert some lines of files back to the way they were before, preferably without killing the new stuff I added | 11:57 |
|
| I'm quite new to git and not sure how I should approach this | 11:58 |
|
gitte
| zomg: Do you have any uncommitted changes? | 11:58 |
|
zomg
| Nothing that I don't mind losing | 11:58 |
|
| =) | 11:58 |
|
gitte
| zomg: either stash it or commit it. | 11:58 |
|
| zomg: that is a good practice in any case, if you want to do something slightly adventurous, start with a clean working directory. | 11:59 |
|
zomg
| Oh and there are few commits of these broken files | 11:59 |
|
gitte
| zomg: then you could use a combination of git checkout and git gui to revert the changes. | 11:59 |
|
| zomg: in detail: "git checkout <known-good-commit> -- <file>" to get the old version back. | 12:00 |
|
| zomg: then use "git gui" to unstage all, and then go through the modified files hunk by hunk (or even line by line), and only stage those reverts you actually want. | 12:00 |
|
| zomg: then commit and stash. | 12:01 |
|
| zomg: to clean up your branch, you could use rebase -i (but only if you haven't pushed in the meantime). | 12:01 |
|
zomg
| Thanks, that should help me get started =) | 12:01 |
|
ph^
| gitte: thanks, I've tried to read, but I get confused with some of the terminology | 12:04 |
| ← Modius_ left | 12:04 |
| ← priidu left | 12:05 |
| → MisterN joined | 12:08 |
| → codebrulee joined | 12:10 |
| → Modius joined | 12:11 |
|
petermarks
| drizzd: thanks for your help | 12:12 |
| → hoohah joined | 12:13 |
|
hoohah
| hello. I'm unsure about a certain aspect of branch merging. Once I perform the merge, will *all* commit history be retained in addendum to the master, or it be considered as one (massive) commit? | 12:14 |
|
gitte
| hoohah: both. | 12:15 |
|
| hoohah: it will add a merge commit which has two parents. | 12:15 |
|
hoohah
| gitte: no way to specify one or the other? | 12:15 |
|
| i'm after the latter effect only | 12:15 |
|
gitte
| hoohah: there is no merge without a merge commit, except when there is nothing to merge. | 12:15 |
|
| hoohah: probably you are looking for "git merge --squash" | 12:15 |
| → mitkok joined | 12:17 |
| → uau joined | 12:21 |
| ← Modius__ left | 12:21 |
| → mobhawk joined | 12:23 |
| → tfoo joined | 12:24 |
| → memiux joined | 12:24 |
| ← gaveen left | 12:25 |
| ← tcurdt left | 12:25 |
| → gaveen joined | 12:25 |
|
hoohah
| gitte: ah thanks. So --squash basically creates one commit for the whole merge of the branch.. and I guess once that branch is removed, no history of commits can ever be identified with the affected files from branch | 12:26 |
|
gitte
| hoohah: correct. | 12:26 |
| → name joined | 12:27 |
|
hoohah
| do you have time for me to bother you with one last q? | 12:28 |
|
| regarding git implementation in my $HOME to manage dotfiles, say I worked with multiple distros sharing the same home path during the day. Would it be advisable to implement git in a way such that master branch in git repo in ~/ contains all similar options, with branches created for the individual distros? | 12:29 |
|
| and perhaps, somewhere in the distros rc.local, have git checkout respective branch? | 12:29 |
| → cmarcelo joined | 12:33 |
| ← cousine left | 12:33 |
|
gitte
| hoohah: dunno. I'd try to have the distro-specific stuff in the files themselves, but that's just a personal matter. I do not track my $HOME with Git. | 12:34 |
|
hoohah
| gitte: yeah, for a while I was implementing cases left and right, but found that I needed logic beyond shell scripts (e.g. for apps like rtorrent whose version differs across distros) | 12:36 |
|
| thereby requiring different configuration options | 12:37 |
|
| i guess i'll just stick with what I'm doing currently | 12:37 |
|
gitte
| hoohah: so you answered your question yourself ;-) | 12:37 |
|
hoohah
| gitte: yeah hehe it seems i always end up doing that | 12:37 |
|
| gitte: at least with an attentive ear, i can avoid talking to myself :) | 12:38 |
| ← girishr left | 12:39 |
| → angerman joined | 12:39 |
| ← memiux left | 12:41 |
| → LiamH joined | 12:41 |
| ← bobmcw left | 12:45 |
| ← jmesnil left | 12:46 |
| → jmesnil joined | 12:46 |
| → lorandi joined | 12:47 |
| → tcurdt joined | 12:47 |
| ← tcurdt left | 12:48 |
| → boto joined | 12:50 |
| → leanucci joined | 12:51 |
| ← solar_ant left | 12:51 |
|
eMBee
| yes, lack of versioned build dependencies is really an issue | 12:52 |
|
| ooops | 12:52 |
| → hpoydar joined | 12:53 |
| → ShadeHawk joined | 12:54 |
|
ShadeHawk
| According to Google Summer of Code timeline the "community bonding" period ended, and students should have started working on their projects. | 12:55 |
| → ben_h joined | 12:55 |
| → scarabx joined | 12:56 |
|
ShadeHawk
| I wonder what is happening with our GSoC students (they didn't announce and introduce themselves on git mailing list), and with "foreign" GSoC students that work on projects related to git: hg-git from Mercurial, git# from Mono, Build Service from OpenSUSE, GitFS from Plan9, PyVCAL from Python | 12:56 |
| → gh34 joined | 12:56 |
|
| wshimmy is quite busily hacking away ;) | 12:57 |
| → rshann_ joined | 12:57 |
|
ninjarobot
| ShadeHawk: you should poke the students | 12:57 |
| ninjarobot → runasand | 12:57 |
|
runasand
| wonder why I had that nick :] | 12:57 |
| ← tfoo left | 12:58 |
|
frsk
| You probably felt like a ninja when choosing it | 12:58 |
|
runasand
| anyways, some students might be busy with exams these days and a friendly poke wouldn't hurt | 12:58 |
|
| frsk: I always feel like a ninja ;) | 12:58 |
|
frsk
| ShadeHawk: You were asking around for the students about a week ago too, right? (Or was that someone else?) | 12:59 |
| → qrush joined | 12:59 |
|
gitte
| wshimmy: what are you working on? | 12:59 |
|
frsk
| I recall gitte talking about the progress a few nights ago | 13:00 |
|
runasand
| hm.. there's only two GSoC students | 13:00 |
|
wshimmy
| gitte: at the moment, whipping some diff engine code into shape | 13:00 |
| ← struberg left | 13:01 |
|
gitte
| runasand: there are more. With 150 orgs I'd estimate many more than two. | 13:01 |
|
| wshimmy: oh? | 13:01 |
|
wshimmy
| exactly 1000, IIRC | 13:02 |
|
runasand
| gitte: only two working for git, I mean. | 13:02 |
|
gitte
| wshimmy: can I see some? | 13:02 |
|
| wshimmy: I am working on a diff engine for JGit as much as my time allows (which is not very much). | 13:02 |
|
wshimmy
| gitte: sure. atm im just trying to adapt/extend some of the code thats used in monodevelop for generating hunks | 13:03 |
|
ShadeHawk
| wshimmy: what GSoC project (and what GSoC org) are you working on? | 13:03 |
|
wshimmy
| gitte: but its a bit old, and since git gives diffing much more exercise than the occasional svn addin, it needs a few more hooks and things | 13:03 |
|
| ShadeHawk: im that evil mono student | 13:03 |
| → _rane joined | 13:04 |
| → BooK joined | 13:04 |
| → webcoder joined | 13:04 |
|
_rane
| hey, I have 'spec/spec.opts' in .git/info/exclude, but git status keeps saying modified: spec/spec.opts -- any ideas? | 13:04 |
|
gitte
| wshimmy: you are actually the first non-evil one for Mono. You talk to us, at least. | 13:04 |
|
| wshimmy: that's more than can be said of most of Mono's mentors, too. | 13:05 |
|
ShadeHawk
| _rane: ignored is about files which are not tracked; if it is tracked (known to git) then ignore rules do not matter | 13:05 |
| → freelook1 joined | 13:05 |
|
wshimmy
| gitte: thanks - i like to think of myself as non-evil the majority of the time :) | 13:06 |
|
_rane
| so how would I get that file ignored locally? | 13:06 |
|
ShadeHawk
| Nice... from foreign GSoC students we have touched base (that I know of) with Build Service from OpenSUSE (on its IRC channel), GitFS from Plan (here); ........... PyVCAL somehow did vanish from list of Python projects for GSoC2009 | 13:07 |
| → ProperNoun joined | 13:07 |
|
ShadeHawk
| I don't know about hg-git project (Git backend to Mercurial frontend), ... and of course our student ... | 13:08 |
|
gitte
| wshimmy: nobody thinks of themselves as evil. Not even certain warlords putting part of the planet into misery while profiting from it. | 13:08 |
|
Pieter
| like Nero | 13:08 |
|
ShadeHawk
| well, I know that with graphical UI there is problem with bikeshedding on git mailing list... | 13:08 |
|
gitte
| ShadeHawk: search the channel log for "sea-gull" | 13:09 |
| → dodo_the_last joined | 13:09 |
|
gitte
| ShadeHawk: exactly. The UI guy also said beforehand that he'd be busy for one week these days. | 13:09 |
|
_rane
| ShadeHawk: .gitignore works as expected, but because it's tracked in the repo it doesn't produce the wanted results | 13:10 |
|
| it doesn't seem to make any difference whatever I have in .git/info/exclude | 13:10 |
| ← wmoxam left | 13:11 |
|
zomg
| gitte: after a ton of confusion and failure, I managed to fix the problem, create a patch and apply it. Thanks for pointing me to the right direction =) | 13:11 |
|
ShadeHawk
| Thanks for the info gitte | 13:11 |
|
gitte
| zomg: good that you have a solution! | 13:12 |
|
| ShadeHawk: yw | 13:12 |
|
zomg
| with svn I would've been done an hour ago tho | 13:13 |
|
| ;> | 13:13 |
|
| but I guess I'll just have to learn | 13:13 |
|
| hehe | 13:13 |
|
ShadeHawk
| gitte: but sea-gull of GitFS for Plan9 I have met on #git | 13:13 |
| → memiux joined | 13:14 |
|
gitte
| ShadeHawk: oh, right. | 13:14 |
|
| ShadeHawk: As for Hg-git, no, we haven't met (yet). According to SRabbelier, the mentor is intimate with the Hg-git project, so I guess we will be able to get into touch. | 13:14 |
| → krh joined | 13:14 |
|
andres
| How would you estimate the chances that a patch to add builtin support for context diffs is accepted (git and libxdiff)? | 13:15 |
| → boto_ joined | 13:15 |
|
ShadeHawk
| _rane: hmmm... .gitignore and .git/info/exclude work the same way, so unless you have some conflict (one file excludes, one file unignores) it should work or not work, and not that one works while other doesn't | 13:18 |
|
| _rane: ignore rules are about *unknown* (untracked) files _only_ | 13:18 |
|
davidfetter
| hello | 13:18 |
| → kukks joined | 13:19 |
| → cemerick joined | 13:19 |
|
davidfetter
| i've got a git-cvsimported repo, and would like to get to a particular CVS tag. how to do this? | 13:19 |
| → jrmuizel joined | 13:20 |
|
andres
| davidfetter: git checkout tags/tagname like normally? | 13:21 |
|
ShadeHawk
| davidfetter: check out "git tag -l" and/or "git branch -a" output | 13:21 |
|
| davidfetter: where it is | 13:21 |
|
davidfetter
| andres, ShadeHawk, thanks :) | 13:21 |
| → kwatz joined | 13:21 |
|
davidfetter
| andres, this is in aid of testing the git-to-cvs migration :) | 13:21 |
|
andres
| davidfetter: I doubt that will happen that fast ;-) | 13:22 |
|
ShadeHawk
| davidfetter: and then as andres said: "git checkout <tag>" (it will detach HEAD, c.f. situation with sticky tags in CVS), or "git checkout -b <newbranch> <tag>" | 13:22 |
| → loincloth joined | 13:22 |
|
ShadeHawk
| davidfetter: git to CVS? not CVS to git? | 13:22 |
|
davidfetter
| er, cvs-to-git | 13:23 |
|
| davidfetter has not yet had any coffee | 13:23 |
|
davidfetter
| and it's 0623 here in oakland :P | 13:23 |
| → bdiego joined | 13:23 |
|
andres
| davidfetter: now you just have to convice Davide or somebody else to add context diff support to libxdiff ;-) | 13:24 |
|
davidfetter
| do tell | 13:24 |
|
| who's Davide and how do i reach him? | 13:24 |
|
andres
| The author of libxdiff | 13:24 |
|
davidfetter
| and is that what comes with git? | 13:24 |
|
andres
| yes. | 13:26 |
|
ShadeHawk
| more or less (git uses modified, enhanced and slimed down version of LibXDiff in xdiff/ directory) | 13:26 |
| → shana joined | 13:27 |
| ← naeu left | 13:28 |
| → peteinlux joined | 13:29 |
| ← scarabx left | 13:29 |
| → Modius_ joined | 13:29 |
| ← khmarbaise left | 13:30 |
| → pete__ joined | 13:30 |
| → solar_ant joined | 13:30 |
| ← boto left | 13:30 |
| → ryanew joined | 13:31 |
| ← ryanew left | 13:32 |
| → ryanew joined | 13:32 |
| ← peteinlux left | 13:32 |
| → wmoxam joined | 13:32 |
|
ShadeHawk
| wshimmy: By the way, do you know if there was any usable code produced by previous git# (managed git) projects at previous Google Summers of Code? | 13:33 |
|
wshimmy
| heh | 13:33 |
| → Arafangion joined | 13:33 |
|
Arafangion
| Hey, want's the easiest way to email a git repo? | 13:33 |
|
| compress a bare repo and email? | 13:33 |
| ← ryanew left | 13:33 |
|
| hyperair has a horrified look | 13:33 |
|
hyperair
| why would you do that | 13:33 |
|
| github! | 13:33 |
|
| or something | 13:34 |
|
qrush
| Arafangion: yep | 13:34 |
|
wshimmy
| ShadeHawk: as far as im aware, thats a negative | 13:34 |
|
ph^
| what is body as opposed to subject in a commit message? | 13:34 |
|
Ilari
| Arafangion: 'git bundle create foo.bundle --all'? | 13:34 |
|
Arafangion
| Ilari: Thanks, that's the example I was hoping for! | 13:34 |
|
| Ilari: What's the inverse? | 13:34 |
|
wshimmy
| ShadeHawk: there was a student in 2007 that disappeared before the start of coding (got a job or something i think), so produced nothing; and last year 1 of 2 awol'd and the other one wrote garbage | 13:35 |
|
Ilari
| Arafangion: I think bundles support being target of fetch-type operations. | 13:35 |
|
Arafangion
| Ilari: Nice. | 13:35 |
|
MisterN
| wshimmy: "awol"? what's that? | 13:35 |
| ← dodo_the_last left | 13:36 |
|
Arafangion
| MisterN: "Went away, without contact". | 13:36 |
|
wshimmy
| absent without leave, sorry | 13:36 |
|
Arafangion
| Usually without notice. | 13:36 |
|
MisterN
| oh | 13:36 |
| ← Modius_ left | 13:36 |
|
ShadeHawk
| Arafangion: man git-bundle... or yes, compress and send | 13:37 |
|
Gitbot
| Arafangion: the git-bundle manpage can be found at http://git.or.cz/man/git-bundle | 13:37 |
|
MisterN
| GSOC doesn't seem to be very productive | 13:37 |
|
wshimmy
| MisterN: in general i think the majority of projects are fairly productive | 13:37 |
| → khmarbaise joined | 13:38 |
|
wshimmy
| it just depends | 13:38 |
|
Arafangion
| ShadeHawk: I think I might go the bundle approach. | 13:38 |
|
ShadeHawk
| MisterN: depending on project... | 13:38 |
|
MisterN
| wshimmy: dunno i've seen some projects have more hassle than benefit | 13:38 |
|
| and git# adds to the list | 13:38 |
| ← aziz left | 13:38 |
| → Modius_ joined | 13:39 |
|
ShadeHawk
| MisterN: from 6 projects Git had last year, 3 were complete success (builtin merge, fetch in Eclipse, git statistics), 2 produced code but are not included in Git (gitweb caching which is used by git.kernel.org, and unfinished but worked on git-sequencer), with only one fail (GitTorrent Protocol) | 13:40 |
|
gitte
| MisterN: it would be better if you encouraged the student, rather than discouraged him. | 13:40 |
|
| MisterN: thank you for your cooperation. | 13:40 |
| ← pete__ left | 13:41 |
|
MisterN
| gitte: huh? there's a SOC student present? and i think being sceptical is still allowed :P | 13:41 |
|
wshimmy
| skeptical is fine. but IMO its no hassle, and only potential benefit, so it works for me ;) | 13:42 |
|
gitte
| MisterN: you can be sceptical all you want, but if you discourage some GSoC student openly, you will get reprimanded by me. | 13:42 |
| → dodo_the_last joined | 13:42 |
|
gitte
| MisterN: so, stop it. | 13:42 |
|
MisterN
| gitte: i didn't want to discourage anybody | 13:43 |
| → Modius__ joined | 13:43 |
| ← Modius_ left | 13:43 |
| ← shana left | 13:45 |
| → shana joined | 13:47 |
| → rudi_s joined | 13:47 |
|
ShadeHawk
| By the way, that reminds me that SoC*Projects git wiki pages are not updated... | 13:47 |
| ← gaveen left | 13:48 |
| → gaveen joined | 13:49 |
| → gberdyshev_ joined | 13:49 |
| ← jrmuizel left | 13:52 |
| ← Modius left | 13:52 |
|
gitte
| ShadeHawk: my Git time budget is way negative right now. | 13:53 |
| → nighthwk1 joined | 13:54 |
| → komplex joined | 13:55 |
| ← rudi_s left | 13:55 |
|
Arafangion
| gitte: How is that possible? | 13:56 |
|
gitte
| Arafangion: very easy. You work too much on Git during the time you had other work to do. | 13:57 |
|
Arafangion
| gitte: Doesn't that affect the /other/ projects? | 13:58 |
| → priidu joined | 13:59 |
| → dvorak1 joined | 14:00 |
| → jony joined | 14:01 |
| jony → jony|away | 14:01 |
| ← hoohah left | 14:02 |
| ← gberdyshev left | 14:03 |
| → squentin_ joined | 14:09 |
| → tango_ joined | 14:11 |
| → suman_g joined | 14:11 |
| → drizzd_ joined | 14:12 |
| → Modius_ joined | 14:12 |
| → aziz joined | 14:12 |
| → alezandro joined | 14:13 |
| ← ben_h left | 14:13 |
| ← Modius__ left | 14:14 |
| → girishr joined | 14:16 |
| ← hyperair left | 14:20 |
| → hyperair joined | 14:20 |
| ← bx2 left | 14:21 |
| → jchris joined | 14:21 |
| → mtvee joined | 14:22 |
| ← priidu left | 14:22 |
| ← plasticine left | 14:23 |
| ← rshann_ left | 14:23 |
| almostautomated| → almostautomated | 14:24 |
| → priidu joined | 14:24 |
| ← mstrl left | 14:24 |
| ← Nazcafan left | 14:26 |
| ← Lgb left | 14:26 |
| → flazz joined | 14:27 |
| → Lgb joined | 14:27 |
| ← solar_ant left | 14:27 |
| → jrmuizel joined | 14:30 |
| → Nazcafan joined | 14:32 |
| → killerchicken_ joined | 14:33 |
| ← parasti left | 14:34 |
|
killerchicken_
| hey, I have a commit that fixes stuff from two different earlier commits. Is there a shorthand for doing a split of that commit, and then squashing the two parts into the appropriate commits? | 14:34 |
|
| like "squash this commit, but only for those lines that affect the earlier commit"? | 14:35 |
|
| I guess there isn't, but maybe I'm surprised :-) | 14:35 |
|
andres
| killerchicken_: you could split the current commit with add --interactive and then do a rebase --interactive and squash the commits belonging to each other | 14:36 |
|
killerchicken_
| andres: well, the "current" commit is not the topmost commit here. I'd just do an interactive rebase to split the commit | 14:37 |
|
andres
| Well, thats nearly the same ;-) | 14:37 |
|
killerchicken_
| that wouldn't be a problem at all, I was more wondering if there was something more specialized for the situation of fixing part of an earlier commit | 14:38 |
|
| would make this one faster | 14:38 |
| → piyo joined | 14:38 |
|
charon
| killerchicken_: isn't the "only those lines that affect the earlier commit" actually AI complete? | 14:39 |
|
killerchicken_
| hm? | 14:39 |
|
charon
| i mean, of course sometimes the overlaps will be textual, but sometimes they're just semantic fixes in other areas of the code, in which case a computer cannot decide which part affects what | 14:39 |
| ← DavidKlein left | 14:40 |
|
killerchicken_
| right. For me, they're all overlaps in line numbers | 14:40 |
| → summerbug joined | 14:41 |
|
Arafangion
| Hey, I've asked someone to compress and email me their bare repo, and I've got it now but it has no HEAD, though a quick glance tells me it obviously has the commits. | 14:42 |
|
| How do I fix this? (HEAD points to refs: refs/heads/master | 14:42 |
| → RedShift joined | 14:42 |
|
RedShift
| hi | 14:42 |
|
Arafangion
| But it doesn't exist) - what is a liekly mistake? They used 7zip to compress it. | 14:42 |
| ← Stravy left | 14:43 |
| → rudi_s joined | 14:43 |
|
ShadeHawk
| Arafangion: you can use git-symbolic-ref to change where HEAD points to | 14:43 |
|
wshimmy
| Arafangion: if its a bare repo you don't have a working directory | 14:43 |
|
RedShift
| I've got a question, so git is built for branching and merging, but what if I want to 'tag' a certain version of all files as a release? | 14:43 |
| → altrux joined | 14:43 |
|
RedShift
| like in CVS you have 'tags' | 14:43 |
|
Arafangion
| wshimmy: But surely it has a refs/master | 14:43 |
|
PerlJam
| RedShift: git has tags too | 14:43 |
|
Arafangion
| (Which it doesn't) | 14:43 |
| ← d0k left | 14:44 |
|
RedShift
| I'm reading http://www-cs-students.stanford.edu/~blynn/gitmagic/ but it doesn't mention tagging as far as I've read | 14:44 |
|
ShadeHawk
| Arafangion: if it is bare repository, then "current branch" doesn't make sense (no branch is checked out), so HEAD might not exist | 14:44 |
|
ToxicFrog
| RedShift: man git-tag | 14:44 |
|
charon
| wshimmy, Arafangion: even in bare repos, HEAD is useful as it indicates (to some extent, the protocol isn't good enough to handle it all) the default branch that new clones should check out | 14:44 |
|
Gitbot
| RedShift: the git-tag manpage can be found at http://git.or.cz/man/git-tag | 14:44 |
|
Arafangion
| wshimmy: I tried to clone it, but it fails. | 14:44 |
|
RedShift
| thanks | 14:44 |
|
ShadeHawk
| Arafangion: refs/master instead of refs/heads/master is likely a mistake (e.g. in push refspec) | 14:45 |
|
wshimmy
| it should definitely have the refs | 14:45 |
|
Arafangion
| charon, wshimmy: There are /no/ branches, though it obviously has the contents. | 14:45 |
|
ShadeHawk
| Arafangion: dod you check out output of "git branch -a" and/or refs/packed-refs file? | 14:45 |
|
ToxicFrog
| RedShift: you can create light named tags (which are basically just alternate names for given commits), as well as heavier, cryptographically signed tags with message content. | 14:45 |
|
Arafangion
| It was a git --bare init; then from the original repo, it was a git push /path/to/bare/repo master | 14:46 |
|
ToxicFrog
| The man page has all the gory details. | 14:46 |
|
Arafangion
| ShadeHawk: The refs directory is entirely empty. | 14:46 |
| ← ph^ left | 14:47 |
| ← khmarbaise left | 14:47 |
|
ShadeHawk
| Arafangion: push, not fetch? Because fetch without refspec saves fetched head only in FETCH_HEAD | 14:47 |
| → khmarbaise joined | 14:47 |
|
Arafangion
| Actually, the utterly freaky thing is... All the directories are empty! (Wierd, I'm blaming 7zip!) | 14:47 |
|
| ShadeHawk: Push, to populate the bare repo. | 14:48 |
|
charon
| Arafangion: umm, how do you know it has any contents when it's empty? :) | 14:48 |
|
Arafangion
| charon: I did an ls, and saw all the sha1's. :) | 14:48 |
|
| charon: And missed that I shouldn't have seen them... As they should've been in objects. | 14:48 |
|
charon
| maybe you unpacked it "flat" to a single directory? the objects should all be in objects/xx/sha1 | 14:48 |
|
Arafangion
| charon: Looks that way, in which case 7zip is utterly idiotic. | 14:49 |
|
charon
| and you most likely have a ./master that should have ended up in refs/heads/ or so | 14:49 |
|
Arafangion
| charon: I expect so. | 14:49 |
|
RedShift
| ToxicFrog: nice, ty | 14:50 |
| ← Lgb left | 14:50 |
|
SamB
| Arafangion: you did it that way with the GUI, or the CLI? | 14:50 |
| → d0k joined | 14:51 |
|
Arafangion
| SamB: The problem is 7zr, not git. | 14:51 |
|
SamB
| Arafangion: okay, the CLI then | 14:51 |
|
| I was talking about 7-zip's GUI and CLI | 14:51 |
|
ShadeHawk
| RedShift: See also my answer about difference between Git and CVS here: http://stackoverflow.com/questions/802573/difference-between-git-and-cvs/824241#824241 | 14:51 |
| ← memiux left | 14:52 |
|
Arafangion
| SamB: The originator probably used the GUI, I'm using the CLI. | 14:52 |
| → willb joined | 14:52 |
| ← Modius_ left | 14:53 |
|
Arafangion
| SamB: Do you happen to know how to tell 7zr to behave? | 14:53 |
|
SamB
| Arafangion: yeah, you often have to be careful when using archivers that originated on the PC ... | 14:53 |
| → Lgb joined | 14:53 |
|
Arafangion
| SamB: I can understand that, but this is frankly idiotic! | 14:53 |
| → Modius_ joined | 14:54 |
|
SamB
| Arafangion: oh, you use the "x" command | 14:54 |
|
| not the "e" command | 14:54 |
| → cannonball joined | 14:54 |
|
Arafangion
| SamB: Wow. Thanks for your help! | 14:54 |
|
SamB
| according to 7zr --help | 14:54 |
| ← asksol left | 14:54 |
| ← lohrun left | 14:54 |
|
Arafangion
| SamB: I saw 'e Extract' | 14:55 |
|
SamB
| unrar uses the same commands for those activities ... | 14:56 |
|
| Arafangion wishes everybody used .tar.gz, as God Intended. (The GNU version) | 14:57 |
| ← johan-s left | 14:58 |
|
Arafangion
| Thanks SamB :) | 14:59 |
| ← summerbug left | 14:59 |
|
Slashbunny
| I have a bunch of local branches associated with remote tracking branches- Is there an easy way to fetch/merge them all in one shot? It looks like the way to do it would be to check each one out and "pull" individually- is that how I should do it? | 15:00 |
| → Modius__ joined | 15:02 |
| → feanil joined | 15:02 |
| ← roop left | 15:03 |
| → UncleCJ joined | 15:03 |
|
offby1
| I think there's a "git remote update" | 15:04 |
|
UncleCJ
| Hi. Is there a good way to address the "branching point" commit between the current and some other branch? | 15:04 |
| ← Modius_ left | 15:04 |
|
offby1
| UncleCJ: git merge-base | 15:04 |
|
UncleCJ
| Hmm... | 15:04 |
|
charon
| Slashbunny: if you want to update the local (tracking) branches safely, yes ... you can optimize away the checkout by manually verifying that it'll be a fast-forward, but that's more or less it | 15:05 |
|
| you could just drop the local branches and only use the remote/*/* family though, if you only fast-forward them anyway | 15:06 |
| → memiux joined | 15:06 |
|
ShadeHawk
| UncleCJ: git-merge-base (or a..b, usually), or branch.<name>.merge config variable | 15:06 |
|
UncleCJ
| ShadeHawk: What does branch.<name>.merge have to do with it, I thought that was for tracking branches? | 15:07 |
| → leo2007 joined | 15:07 |
| ← leo2007 left | 15:07 |
|
UncleCJ
| ShadeHawk: What does branch.<name>.merge have to do with it, I thought that was for tracking branches? | 15:08 |
|
| offby1: Indeed, merge-base does the trick! | 15:08 |
| ← girishr left | 15:08 |
| → leo2007 joined | 15:09 |
| ← gaveen left | 15:09 |
|
sadleder
| Slashbunny: the branches must be tracking | 15:10 |
|
ShadeHawk
| UncleCJ: to know the branch for git-merge-base | 15:10 |
|
Slashbunny
| charon: thanks.. They will usually be fast-forward only, but sometimes not... I guess under normal circumstances I wouldn't even need the local branch until I have to do something.. then checkout -b would work | 15:10 |
|
sadleder
| Slashbunny: see "git config -e", there should be definitions like [branch "master"] remote = origin merge = refs/heads/master | 15:11 |
|
| Slashbunny: for all branches you want to track | 15:11 |
| ← petermarks left | 15:11 |
| ← Arafangion left | 15:11 |
| → xrfang joined | 15:12 |
|
xrfang
| hello what is the difference between HEAD and ORIG_HEAD? | 15:12 |
|
UncleCJ
| ShadeHawk: Ah... wonder if that is relevant for me, I don't rally let tracking branches deviate from each other and in this case wanted to find the merge-base to do a cleanup interactive rebase against it | 15:12 |
|
| xrfang: Just the question I was abotu to ask! | 15:12 |
|
xrfang
| :) | 15:13 |
|
charon
| Slashbunny: note that non-ff merges/pulls always risk a conflict and may be rather hard to automate. though in your case, you can probably merge them all in turn and stop if a conflict happens; then simply fix the conflict, commit the merge and re-run the script, as it'll just do nothing on the already-merged branches | 15:13 |
| → priidu_ joined | 15:13 |
|
Slashbunny
| sadleder: yeah.. let's say I have master, dev, stuff, remotes/origin/master, remotes/origin/dev, remotes/origin/stuff. And I have master checked out. If I do "git pull", it will do a fetch from origin and update all the remotes/... branches, and then merge master with origin/master. But it won't touch local branches "dev" and "stuff", unless I check them out and do git pull or git merge origin/x | 15:13 |
|
xrfang
| I am confused while doing some wine test. I did git checkout wine-1.1.1, after I am done with it, I do: git checkout HEAD, it still stay at 1.1.1, and then I did git checkout ORIG_HEAD, it goes to 1.1.17, but the head should be 1.1.22! | 15:14 |
| ← jony|away left | 15:15 |
|
Slashbunny
| charon: Yeah, that's what I was planning on doing, I was wondering if there was a magical way- It makes sense though, you don't want to "pull all" the way "push all" works (push.default matching) because it's going to create a bunch of merge commits which may or may not blow up in the process | 15:15 |
| → balint joined | 15:15 |
|
charon
| xrfang: you're mostly confused about HEAD. HEAD is always the commit (actually it knows the branch) currently checked out, so checking out HEAD is a no-op. ORIG_HEAD is mostly a relic that is superseded by the reflog | 15:16 |
|
SamB
| charon: dunno about that "checking out HEAD is always a no-op" | 15:16 |
|
charon
| Slashbunny: pull is simply not the opposite of push, so the opposite of "push all" is actually "fetch" | 15:16 |
|
xrfang
| charon: what is the reflog and relic etc? what I wanted to do is to checkout the latest revision in the current branch, that's all. what should I do? | 15:17 |
| → jony joined | 15:17 |
|
charon
| SamB: a plain 'git checkout HEAD' should be | 15:17 |
| → section31work joined | 15:17 |
|
charon
| of course it's slightly different if you give it path arguments | 15:17 |
|
SamB
| I keep finding myself with a repository who's HEAD is rather out of sync with the index | 15:17 |
|
section31work
| How can i remove a file from the entire repository | 15:17 |
|
xrfang
| charon: so HEAD means "current working copy", NOT the last commit in the current branch?? | 15:17 |
|
charon
| xrfang: by saying 'git checkout wine-1.1.1' (i.e., a tag), you switched to _no_ branch (a detached HEAD). you no longer have a current branch. tell git to go back to some with, say, 'git checkout master' | 15:18 |
|
SamB
| xrfang: it means whatever revision you're supposed to have checked out | 15:18 |
|
charon
| SamB: it will just compare HEAD and index, figure they're different, and re-merge the changes between (the previous) HEAD and index onto (the new, but same) HEAD, thereby doing nothing but a status display. | 15:18 |
|
xrfang
| charon: I have heard about this, but I don't really understand... they say you should use git checkout -b mybranch wine-1.1.1 etc. | 15:19 |
|
| to create a "local branch" | 15:19 |
|
SamB
| where by "supposed to have", I mean you can easily confuse git by using git update-ref on the branch you've got checked out ... | 15:19 |
|
xrfang
| but, what if I want to remain in master, just get back in time? | 15:19 |
| → bcardarella joined | 15:19 |
|
charon
| (please don't tell newbies about update-ref....) | 15:19 |
|
SamB
| charon: sorry! | 15:19 |
|
charon
| :) | 15:19 |
|
Slashbunny
| charon: good point. Thanks for the help. | 15:20 |
|
SamB
| I actually was hoping you'd tell me about a safer way to do that, that wouldn't confuse git so much | 15:20 |
|
xrfang
| I really hope there are some good visualization tool (gitk is not enough)... I don't care about how git does its work under the hood, but I would like a big picture of "branches" etc. | 15:20 |
| → Modius joined | 15:21 |
|
charon
| SamB: check out said ref and use merge or reset (--hard usually, but that's also dangerous), depending on what you want to do | 15:21 |
|
| xrfang: read man gittutorial and friends, and/or google for "git for computer scientists" | 15:21 |
|
xrfang
| ok, gurus... how about my questions? 1) check out a history version, and remain in master; 2) go back to the LATEST commit of the current branch... | 15:21 |
|
Gitbot
| xrfang: the gittutorial manpage can be found at http://git.or.cz/man/gittutorial | 15:21 |
|
ShadeHawk
| UncleCJ: but git-rebase finds merge-base by itself... | 15:21 |
| → eno__ joined | 15:21 |
|
xrfang
| ok, thanks | 15:22 |
|
SamB
| xrfang: what, you want to change master to point at the ancient revision ? | 15:22 |
|
charon
| xrfang: your point (1) is already a contradiction. please read the tutorial, it should become clear | 15:22 |
|
xrfang
| SamB: my scenario is, I want to do a bisect but I forgot which version the bug appears | 15:22 |
|
SamB
| xrfang: you don't need to stay in "master" to do that | 15:23 |
|
xrfang
| say, wine is at 1.1.22 now, I want to rewind to 1.1.1 to test whether the bug appears or not, then start a bisect | 15:23 |
| ← jony left | 15:23 |
|
xrfang
| so I need to checkout that version | 15:23 |
|
SamB
| sure! | 15:23 |
|
| there's no harm in having a non-branch checked out, really | 15:23 |
|
xrfang
| SamB: I don't need to stay in master, yes, but I don't see a need to create a branch for this! do I have to ? | 15:23 |
|
SamB
| it's just that certain things are irrelevant and therefore don't happen | 15:23 |
|
| xrfang: not really | 15:24 |
|
| not if you're just going to test the workingness of the commit pointed at by the tag | 15:24 |
|
ShadeHawk
| xrfang: why not give 1.1.1 as appropriate bad or good revision, or starting point in bisect instead? man git-bisect | 15:24 |
|
Gitbot
| xrfang: the git-bisect manpage can be found at http://git.or.cz/man/git-bisect | 15:24 |
| → jony joined | 15:24 |
|
SamB
| ShadeHawk: he wants to make sure it actually is good, first | 15:24 |
|
xrfang
| ShadeHawk: I must find out a 100% good revision to start bisect | 15:24 |
| ← priidu left | 15:24 |
|
xrfang
| yes | 15:25 |
|
SamB
| anyway, there's no need to have a branch if all you're going to do is look | 15:25 |
|
| a branch is only needed if you're going to start making commits | 15:25 |
|
xrfang
| ok. this is good. so now, someone said above that after a "branch-less" checkout, I need to type "git checkout master" to return to the latest commit of master, right? | 15:26 |
|
SamB
| (and even then, it's not absolutely needed unless you want to switch to some other commit ...) | 15:26 |
|
| xrfang: yeah | 15:26 |
|
| and get that to be the branch that moves when you commit, and so forth | 15:27 |
|
xrfang
| ok, so HEAD is the pointer of current working copy, it really means nothing, (i.e. it is variable, not constant) right? | 15:27 |
|
SamB
| (if you have checked out from a tag or SHA1, it won't move any branch, of course) | 15:27 |
| → sakyamuni joined | 15:27 |
| → ciskje joined | 15:28 |
|
SamB
| xrfang: well, it means something | 15:28 |
|
xrfang
| I am confused about HEAD, ORIG_HEAD and origin/master etc. | 15:28 |
|
SamB
| it can point at either a commit or another ref | 15:28 |
|
xrfang
| maybe they are not related at all, but... | 15:28 |
|
SamB
| if it points at a ref, that ref gets updated when you commit | 15:28 |
| ← hpoydar left | 15:28 |
|
xrfang
| SamB: ok, I will ignore that for not, "ref" confused me even more ;) | 15:29 |
|
| last question for now: | 15:29 |
|
SamB
| xrfang: sure! | 15:29 |
| → ruz_mac joined | 15:29 |
|
xrfang
| I did git branch to see the status | 15:29 |
|
SamB
| you don't have to understand it all right now | 15:29 |
|
xrfang
| the * is on (no branch) | 15:29 |
|
| what on earth is no branch? | 15:29 |
|
| why ? | 15:29 |
|
SamB
| it just means you aren't on a branch at the moment | 15:29 |
| → hpoydar joined | 15:29 |
|
SamB
| if you look in .git/HEAD, it presumably contains an SHA1 | 15:30 |
|
xrfang
| so why? I checked out a history version on master, then I lost my track? | 15:30 |
|
ShadeHawk
| (no branch) means that HEAD points directly to commit (so called 'detached HEAD'), and not to branch which in turn point to commit | 15:30 |
| ← RedShift left | 15:30 |
|
ShadeHawk
| if you do "git checkout <tag>" or "git checkout <remote tracking branch>" you would land on detached HEAD | 15:30 |
|
SamB
| xrfang: the past commits along a branch aren't really associated with the branch per-se anymore in git's way of thinking | 15:30 |
|
ShadeHawk
| git-rebase and I think also git-bisect make use of detached HEAD (git-bisect used to use 'bisect' branch) | 15:31 |
| → dwave joined | 15:31 |
|
SamB
| they're just parents of the branch tip | 15:31 |
|
ruz_mac
| hi, is there way to get next commit after X so I can walk towards to HEAD one commit at a time? | 15:31 |
|
xrfang
| SamB: you mean, if I visualize the git tree, there is actually no concept of a tree | 15:31 |
|
| e.g. in wine. 1.1.22 is master, but 1.2.1 or 1.1.1 is no longer "master"? | 15:31 |
|
SamB
| xrfang: I mean, that it doesn't remember what branch something was first on, except in the reflog | 15:31 |
|
| which is a local thing | 15:32 |
|
| I doubt 1.1.22 is master | 15:32 |
|
| well, could be | 15:32 |
| → mytruehero joined | 15:32 |
|
SamB
| I guess if it's like Linus' kernel tree ... | 15:32 |
|
| anyway, yeah, historical commits don't remember what branch they were made on | 15:33 |
| ← Modius__ left | 15:33 |
|
xrfang
| ok, consider a chain.... can't I say that a revision is like a "node" on that chain? there is no idea of "parent" as in other VCS? | 15:33 |
|
SamB
| sure there is an idea of parent | 15:33 |
|
xrfang
| but you said "anyway, yeah, historical commits don't remember what branch they were made on" | 15:33 |
|
| charon points at "git for computer scientists" again | 15:33 |
| → fridim_ joined | 15:33 |
| → secleinteer joined | 15:33 |
| ← gitte left | 15:33 |
|
xrfang
| ok, charon, I think I'd better do more reading ;) | 15:33 |
|
mytruehero
| I have a commit that I merged into my master branch and pushed. I decided that I don't want to deploy that commit yet, however, so I cherry-picked it into a separate branch. How can I remove that commit from master? Or do a commit that essentially un-does the commit I want to remove, while allowing me to merge it back in later from the branch it now resides in? | 15:34 |
|
xrfang
| thanks all | 15:34 |
|
| bye | 15:34 |
|
SamB
| but the branch name just refers to one node at a time -- hopefully, public branches only move from one commit to (a child of )*that commit | 15:34 |
|
| (that parenthesized bit with the asterisk is in regex notation) | 15:34 |
|
wereHamster
| xrfang: git revert $commitsha | 15:34 |
|
xrfang
| ? | 15:35 |
| → Dvyjones joined | 15:35 |
|
secleinteer
| hi, i used git-svn to download an svn repository. now i'd like to commit my changes to a _different_ svn repository. i used --stdlayout when i initially downloaded the repository. when i committed to the new repository, it didn't translate back to stdlayout (i.e., "branch", "trunk", "tags" directories in svn). does anybody know why this is? | 15:35 |
|
Dvyjones
| How do I pull changes from another repo? | 15:35 |
|
hyperair
| Dvyjones: git pull git://otherrepo branch | 15:35 |
|
wereHamster
| xrfang: git-revert creates a new commit that reverts the changes of another commit | 15:35 |
|
Dvyjones
| hyperair: branch is the branch I want to pull it into? | 15:36 |
|
hyperair
| Dvyjones: no, the branch you wanna pull from. | 15:36 |
|
Dvyjones
| hyperair: Oh, ok. | 15:36 |
|
hyperair
| Dvyjones: you're expected to be on the branch you want to pull to | 15:37 |
|
xrfang
| wereHamster: yes I got some idea, but I am a bit confused about the status of working copy and the repo etc. quite hard to explain now... I think I need just to read the manual... anyway, this seems is not my current question? ;) | 15:37 |
|
Dvyjones
| hyperair: Doesn't seem to work... | 15:37 |
|
| hyperair: I want to pull this: http://github.com/danlucraft/redcar into this: http://github.com/dvyjones/redcar | 15:37 |
|
wereHamster
| xrfang: git-scm.com <- there's plenty of documentation | 15:38 |
| ← balint left | 15:38 |
| → ph^ joined | 15:38 |
| → netoman joined | 15:38 |
|
ShadeHawk
| Dvyjones: First, use git URL, and not GitHub URL, as an argument to git-pull / git-fetch / git remote add | 15:38 |
|
hyperair
| Dvyjones: git clone git://blabla/dvyjones/blabla.git; git remote add danlucraft git://blabla/danlucraft/blabla.git; git pull danlucraft | 15:38 |
|
| er i forgot to cd blabla | 15:39 |
|
ShadeHawk
| dvorak1: git pull git://github.com/danlucraft/redcar.git | 15:39 |
|
| Dvyjones: git pull git://github.com/danlucraft/redcar.git | 15:39 |
|
Dvyjones
| ShadeHawk: I am :P | 15:39 |
|
| It says "already up-to-date" | 15:39 |
|
| *Everything | 15:39 |
|
xrfang
| wereHamster: thanks | 15:39 |
|
ShadeHawk
| so that means that there aren't any new commits to be fetched... nothing to be done | 15:39 |
| → aspotashev_ joined | 15:40 |
|
Dvyjones
| Well, there's a lot of commits missing... | 15:40 |
|
| Wait, nevermind... | 15:40 |
|
| D'oh | 15:40 |
| → jacobat joined | 15:40 |
| ← aspotashev_ left | 15:41 |
| ← mitkok left | 15:41 |
| → aspotashev_ joined | 15:41 |
| → com4_ joined | 15:42 |
| ← jony left | 15:42 |
| ← aspotashev_ left | 15:42 |
| → jony joined | 15:44 |
| ← ciskje left | 15:44 |
| → aspotashev_ joined | 15:44 |
| ← xrfang left | 15:44 |
| ← mytruehero left | 15:45 |
| → miriamg joined | 15:45 |
| ← aspotashev_ left | 15:45 |
| → aspotashev_ joined | 15:45 |
| ← jony left | 15:46 |
| → ciskje joined | 15:46 |
|
ShadeHawk
| Some of git web interfaces (GitHub, Gitorious) present a kind of "tree blame" in a 'tree' view (probably following what ViewVC and other web interfaces for per-file SCMs), with "date the file changed" beside each file (and sometimes "commit that changed the file") | 15:47 |
|
| Is such information useful? Would it be worth adding it (as an option) to gitweb, for example? | 15:47 |
| ← sfwc left | 15:49 |
| ← giallu left | 15:50 |
| → sfwc joined | 15:50 |
| ← boto_ left | 15:50 |
| → hobodave joined | 15:51 |
| ← aspotashev left | 15:54 |
| → parasti joined | 15:54 |
| → RayMorgan joined | 15:55 |
| ← gilimanjaro left | 15:56 |
| → juanjoc joined | 15:56 |
| → Yuuhi joined | 15:56 |
| ← Nazcafan left | 15:57 |
| → schacon joined | 15:58 |
| ← sfwc left | 15:59 |
| → abstrusething joined | 15:59 |
| → akitada joined | 15:59 |
| → sfwc joined | 15:59 |
|
freelook1
| I'm trying to track a remote git repository but make my own custom changes to it. The problem is that I have a desktop and a laptop, and so I'd like to keep changes synced in between them. Any ideas on a good way to do this? I've got a local server as well. Perhaps having a repository on the server is a good way of doing it? | 15:59 |
| joshthecoder_afk → joshthecoder | 16:00 |
| → carrus85 joined | 16:01 |
| ← abstrusething left | 16:01 |
|
Aides
| just push and pull your changes from/to desktop to/from laptop | 16:02 |
| → Bass10 joined | 16:03 |
| ← priidu_ left | 16:03 |
|
Aides
| best way of course would be to setup remotes on both sides and pull | 16:03 |
|
| because pushing to non-bare repository could be not nice | 16:04 |
| ← gberdyshev_ left | 16:04 |
| → georgyberdyshev joined | 16:04 |
|
| thiago also recommends pulling only | 16:04 |
|
freelook1
| That could work except my desktop is not always on, and my laptop is often away. It would be nice to have a central point for myself to pus from/pull to | 16:04 |
|
| push* | 16:04 |
|
thiago
| then do it | 16:05 |
|
SamB
| freelook1: you could set up something on github or gitorious or repo.or.cz (not sure repo.or.cz can do that today, though -- it was partly-down for maintenance yesterday) | 16:05 |
|
Aides
| then yes, local server is nice | 16:05 |
|
| just make it bare, so you can push safely | 16:05 |
| → WinterWeaver joined | 16:05 |
|
freelook1
| ok, I'll try that. Thanks a lot | 16:05 |
| → priidu_ joined | 16:06 |
| ← agile left | 16:06 |
|
freelook1
| Aides: in the case of a local server then, is gitosis the recommended way? | 16:06 |
| ← psoo left | 16:07 |
| ← WinterWeaver left | 16:07 |
|
Aides
| freelook1, if you'll be using it yourself, just use plain ssh | 16:07 |
|
| drop it somewhere, say /home/user/repo | 16:07 |
|
| and then access as ssh://server/home/user/repo | 16:08 |
|
freelook1
| great. thanks Aides | 16:08 |
|
Aides
| gitosis is nice for several users, because git loves to screw file permissions | 16:08 |
|
freelook1
| ahh | 16:08 |
| ← bschindler left | 16:10 |
| → georgyberdyshev_ joined | 16:10 |
| → JasonWoof joined | 16:11 |
| → DavidKlein joined | 16:12 |
| → webcoder_ joined | 16:13 |
| ← qhoxie left | 16:13 |
|
akitada
| When I work with code using git, I always try to make a good commit, which is a fix or chagne of some specific problem/enhancement. Git is great for this. I usually create a branch for each fix and try to make up a good commit. but there's one problem. How I can work with multiple branches. | 16:13 |
|
| As I said, each branch is for a specific problem. Sometimes a fixing a bug takes a lots of time and during working on that, sometimes I have to work with another problem. | 16:15 |
|
wshimmy
| akitada: that's the whole point of working with branches in git ;) | 16:16 |
|
| akitada: man git branch and man git checkout should help you | 16:17 |
|
akitada
| In that case, I would: git stash; git checkout -b another_bug; hack hack; git add; git commit; git checkout -b branch-i-came-from; git pop --index; hack again... | 16:17 |
| → WinterWeaver joined | 16:17 |
|
wshimmy
| akitada: sounds about right, except you don't want the -b in checking out branch-i-came-from | 16:18 |
|
Slashbunny
| I noticed git can create physical paths for branches, which is pretty cool- Like git branch majorchange/subchange1, git branch majorchange/subchange2 . Let's say for example one of those changes is going to require more work, or more experimental tests done on it- Following this heirarchy, I would create another sub folder... Now I understand why git branch majorchange/subchange1/subsubchangeA doesn't | 16:19 |
|
| work on a technical level (it's trying to create a directory where a file is), but how do you think I should handle this? make a subchange1/master branch and a subchange1/subsubchangeA branch? Has there ever been talk of having branches represented as directories to begin with and having a directory/.hash file... I assume this would be more clunky and slower... just curious | 16:19 |
|
ShadeHawk
| freelook1: Take a look at GitTips page on git wiki: http://git.or.cz/gitwiki/ | 16:19 |
|
akitada
| and here's my question. Am I using git right? I think I could do it better and like to have some advice from git experts. | 16:19 |
|
| wshimmy: oops, that's typo... | 16:19 |
|
wshimmy
| akitada: and you can use git checkout -b another_bug master, for example, if you don't want the new branch to have the commits on your current branch, which is probably the case | 16:20 |
| ← altrux left | 16:20 |
| ← webcoder left | 16:20 |
| → eletuchy joined | 16:21 |
|
akitada
| wshimmy: oh, that's nice. is that cause the branch is based on master? cool. | 16:21 |
| → johan-s joined | 16:21 |
|
wshimmy
| akitada: git help branch | 16:22 |
| ← WinterWeaver left | 16:22 |
|
akitada
| wshimmy: ah, <start-point>. cool... | 16:22 |
| → mgerwitz joined | 16:24 |
| ← lorandi left | 16:24 |
|
wshimmy
| Slashbunny: do you really need that much hierarchy? | 16:25 |
|
akitada
| git checkout -b yet-another; hack hack; git add; git commit; git checkout master; git merge yet-another; | 16:25 |
| → lorandi joined | 16:25 |
|
akitada
| this is my workflow. | 16:25 |
|
wshimmy
| Slashbunny: if so, I would probably just put a master under my branch dirs, just from a taxonomic point of view | 16:27 |
|
SamB
| I wish git stash could handle in-progress merges :-( | 16:28 |
| ← aspotashev_ left | 16:30 |
|
Slashbunny
| wshimmy: yeah, that seems reasonable | 16:30 |
| → aspotashev joined | 16:31 |
| ← georgyberdyshev left | 16:31 |
| → schacon_ joined | 16:31 |
|
miriamg
| anyone know how to specify a specific revision to pull a submodule at? i see "git submodule add -b <branch>", but nothing to specify a revision... | 16:32 |
| ← angerman left | 16:32 |
|
ShadeHawk
| SamB: yes, unfortunately git-stash cannot handle in-progress merges... but that was brought into attention; it is not technically impossible (each index stage could be separate parent, for example) | 16:32 |
| ← georgyberdyshev_ left | 16:32 |
| → georgyberdyshev_ joined | 16:32 |
| → Alinermedia joined | 16:33 |
| ← khmarbaise left | 16:33 |
|
SamB
| ShadeHawk: I know that! | 16:33 |
|
| it's certainly something it could do | 16:33 |
|
| it'd just need more work | 16:33 |
|
wshimmy
| rumour has it they accept patches ;) | 16:33 |
|
SamB
| I dunno if I can do the work or not, though | 16:34 |
| ← priidu_ left | 16:34 |
|
akitada
| learning git is fun. cool features are still there even in "git-add". learning something new everyday :) | 16:34 |
| ← leanucci left | 16:34 |
|
| SamB sometimes wishes git didn't have so many "features" | 16:35 |
| → leanucci joined | 16:35 |
|
ShadeHawk
| SamB: as in... if you wait, perhaps it would be soon in git (I mean stashing away merges...) | 16:35 |
|
SamB
| (where feature means something like "projecting corners upon which to injure oneself" ...) | 16:35 |
| ← schacon left | 16:37 |
| → jayallen joined | 16:38 |
| ← mgerwitz left | 16:38 |
| → qhoxie joined | 16:38 |
| ← davidfetter left | 16:38 |
| → davidfetter joined | 16:39 |
| → azol joined | 16:40 |
| ← dwmw2 left | 16:40 |
| ← georgyberdyshev_ left | 16:41 |
| ← marc_kdab left | 16:41 |
| → Galaxor joined | 16:42 |
|
Galaxor
| Hey. I've got a git repo that I can't push to anymore. It says: error: unable to create temporary sha1 filename ./objects/19: File exists | 16:42 |
|
| What can I do about that? | 16:42 |
| → WinterWeaver joined | 16:43 |
| ← ciskje left | 16:43 |
| ← shruggar left | 16:43 |
|
Galaxor
| the repo I'm trying to push from is on a machine with git 1.6.0.1, while the intended recipient is running 1.6.0. | 16:43 |
| → kraymer joined | 16:45 |
| → scientes joined | 16:46 |
| ← ntoll left | 16:47 |
| ← akitada left | 16:48 |
|
ShadeHawk
| Galaxor: it looks like something f**ked up on remote side. Is objects/19 a file, or a directory? | 16:49 |
| → javatexan joined | 16:49 |
| → FauxFaux joined | 16:49 |
| → random8r joined | 16:49 |
| → lois[pac] joined | 16:49 |
|
Galaxor
| A directory. | 16:49 |
|
| It's got one file in it. | 16:50 |
|
ShadeHawk
| hmmm... | 16:50 |
|
doener
| hm, looks like the usual "Permission denied" being half-fixed | 16:50 |
| → abstrusething joined | 16:50 |
| → Modius_ joined | 16:50 |
| ← fujin left | 16:50 |
|
ShadeHawk
| well, strange error message it is... | 16:50 |
| → naeu joined | 16:51 |
|
doener
| the "Permission denied" message was also wrong. The fallback code eats the original error message | 16:51 |
|
| now if I could recall where that code is... | 16:51 |
| ← hpoydar left | 16:51 |
|
Galaxor
| Aha. Permission denied indeed. I found that some of the objects directories were owned by "root:root" instead of "git:git". | 16:51 |
|
| I changed it and it now accepts pushes. | 16:52 |
|
| Permission denied would've been a much more helpful error. | 16:52 |
| → hpoydar joined | 16:52 |
| → drmclem joined | 16:52 |
|
doener
| Galaxor: yeah, your version probably still has the bug that made it always try to create the directory when creating the file fails | 16:53 |
|
| Galaxor: and that kills the original error message | 16:53 |
| → dreiss joined | 16:54 |
|
Galaxor
| Aha. Cool, I'll try to upgrade when I've got some time. Thanks. | 16:54 |
|
doener
| Galaxor: got fixed in 1.6.0.5 | 16:55 |
|
| Galaxor: (server side is what matters here) | 16:55 |
| → solydzajs joined | 16:55 |
| → thiago_home joined | 16:55 |
|
Galaxor
| doener: Okay, thanks. | 16:56 |
| → Modius__ joined | 16:56 |
| → voker57_ joined | 16:57 |
| ← tono left | 16:57 |
| → rshann_ joined | 16:58 |
| → solar_ant joined | 17:00 |
| → Weaselweb joined | 17:02 |
| ← random8r left | 17:05 |
| ← schacon_ left | 17:05 |
| → schacon joined | 17:06 |
| → factotvm joined | 17:07 |
| ← Modius left | 17:07 |
| ← Yuuhi left | 17:08 |
| → dwmw2 joined | 17:09 |
| → cloudhead joined | 17:09 |
|
miriamg
| ah, I found the answer here (if anyone else was wondering): http://woss.name/2008/04/09/using-git-submodules-to-track-vendorrails/. clearly I still don't really understand submodules | 17:10 |
| → __iron joined | 17:10 |
| ← voker57 left | 17:10 |
| → tvw joined | 17:11 |
| ← drmclem left | 17:11 |
|
ShadeHawk
| Does anybody know why Bazaar-NG wasn't considered as viable choice for Linux kernel at the time git was being created? | 17:11 |
|
| (July 2005) | 17:11 |
| ← j416 left | 17:11 |
|
FauxFaux
| SLOW | 17:12 |
| → Dashkal joined | 17:12 |
| ← Modius_ left | 17:13 |
| ← Modius__ left | 17:14 |
| → krawek joined | 17:15 |
|
secleinteer
| hi, i used git-svn to download an svn repository. now i'd like to commit my changes to a _different_ svn repository. i used --stdlayout when i initially downloaded the repository. when i committed to the new repository, it didn't translate back to stdlayout (i.e., "branch", "trunk", "tags" directories in svn). does anybody know why this is? | 17:15 |
| ← memiux left | 17:16 |
| mtvee → mtvee|away | 17:16 |
| → ceez joined | 17:17 |
| → cxvii joined | 17:17 |
| ← Galaxor left | 17:17 |
| → Fullmoon joined | 17:19 |
| ← jmesnil left | 17:20 |
| → laj joined | 17:21 |
| → agile joined | 17:23 |
| → knweiss joined | 17:24 |
| → sgrimm joined | 17:25 |
| → moonflux joined | 17:26 |
|
wereHamster
| secleinteer: git-svn doesn't automatically commit all branches to the svn repo, only the currently active one | 17:26 |
| → memiux joined | 17:28 |
| ← jrmuizel left | 17:33 |
| → towski joined | 17:33 |
| ← Hendu left | 17:34 |
| → jrmuizel joined | 17:34 |
|
ShadeHawk
| FauxFaux: You mean that Bazaar-NG was too slow for Linux kernel? | 17:35 |
|
| Errr... Bazaar: Initial release 14 December 2007 | 17:35 |
|
| didn't exist then | 17:35 |
|
| (and Arch has too complicated UI) | 17:35 |
|
doener
| ShadeHawk: that was 1.0 | 17:36 |
|
| ShadeHawk: http://doc.bazaar-vcs.org/bzr.1.15/en/release-notes/NEWS.html#bzr-0-0-0-69-2005-03-22 -- first public release 2005-03-22 | 17:36 |
| ← memiux left | 17:37 |
| → memiux joined | 17:37 |
|
ShadeHawk
| ah... so it did exist then... | 17:38 |
| → eletuchy_ joined | 17:38 |
| → adamtanner joined | 17:39 |
| → kuadrosx joined | 17:39 |
| ← legnaleurc left | 17:40 |
| ← dreiss left | 17:40 |
| → JEEBcz joined | 17:41 |
| ← juanjoc left | 17:42 |
| ← sadleder left | 17:42 |
| → juanjoc joined | 17:42 |
| → salty-horse joined | 17:44 |
| ← sunoano left | 17:44 |
| → djgera joined | 17:45 |
|
secleinteer
| wereHamster: is there a way to change that behavior? | 17:45 |
| ← adamtanner left | 17:46 |
| ← sakyamuni left | 17:46 |
| → sakyamuni joined | 17:46 |
| bleything|away → bleything | 17:48 |
| → sunoano joined | 17:49 |
|
almostautomated
| Hiya all; could someone configrm that when viewing diff out that the highlighted '^M' I'm seeing is a marker designating whitespace at EOL ? | 17:51 |
| → FylGood joined | 17:51 |
|
doener
| almostautomated: it's a CR | 17:51 |
|
wereHamster
| secleinteer: I don't think so. Do you want to mirror the svn repo through git to another svn repo? | 17:52 |
| ← rshann_ left | 17:52 |
|
almostautomated
| doener: Thanks; I knew I had mixed line endings ( expected ) yet wasn't expecting that. Thank you. | 17:52 |
| → robin joined | 17:53 |
| → jwheare joined | 17:54 |
| ← eletuchy left | 17:55 |
| ← bcardarella left | 17:55 |
|
jwheare
| i just made 5 commits that i want to completely remove, not just git revert | 17:55 |
|
Aides
| have you pushed them? | 17:55 |
|
jwheare
| no | 17:55 |
| ← towski left | 17:55 |
| ← memiux left | 17:55 |
|
Aides
| then git reset --hard HEAD^^^^^ | 17:55 |
| ← cxvii left | 17:56 |
|
jwheare
| i guess i can replace HEAD^^^^^ with the sha that i want to reset to | 17:56 |
|
| cheers | 17:57 |
| → psoo joined | 17:58 |
| ← psoo left | 17:58 |
| ← FylGood left | 17:58 |
| → jspiros joined | 17:58 |
| bleything → bleything|away | 17:59 |
| bleything|away → bleything | 18:00 |
|
knweiss
| Or shorter: git reset --hard HEAD~5 | 18:00 |
| ← ruz_mac left | 18:02 |
| → lanwin joined | 18:02 |
| ← agile left | 18:02 |
|
sakyamuni
| I want to undo a checkin. I haven't done a push. I did git reset HEAD^1.. what's the next command that I should do? | 18:02 |
| → psoo joined | 18:03 |
|
lanwin
| hi a question. Is there an command to add all deleted files to the next commit without calling git rm for each separatly? | 18:04 |
|
frsk
| sakyamuni: well, git reset head^ removes the commit.. what more do you want to do? =) | 18:04 |
| → kobani joined | 18:04 |
|
jaeckel
| sakyamuni: why not only amending? | 18:04 |
|
Aides
| lanwin, git add -u | 18:04 |
|
sakyamuni
| jaeckel: never done that, how is that accomplished? | 18:04 |
| → khmarbaise joined | 18:04 |
|
sakyamuni
| frsk: i thought --hard removes it whilst the way I did it, soft, it's still "sorta" still there. | 18:05 |
|
frsk
| sakyamuni: --hard reverts changes in the file as well | 18:05 |
|
jaeckel
| in git gui changing radio button from 'new commit' to 'amend last commit' | 18:05 |
|
sakyamuni
| I dod a git diff and I see the changes, should I just do git reset --hard now? | 18:05 |
|
jaeckel
| :) | 18:05 |
| → bradly joined | 18:05 |
|
jaeckel
| don't use commandline for committing | 18:05 |
| ← sfwc left | 18:05 |
|
frsk
| sakyamuni: If you'd want to throw the changes away, yes | 18:06 |
| → SRabbelier joined | 18:06 |
|
sakyamuni
| frsk: i want to throw 'em away so git reset --hard worked | 18:06 |
|
frsk
| sakyamuni: If you're not 100% sure, you could always make a backup of the files your first time, though =) | 18:06 |
|
| okey, great =) | 18:06 |
|
jaeckel
| but my git cheat sheet says commit -a --amend | 18:06 |
|
Aides
| cheater! | 18:07 |
|
jaeckel
| =D | 18:07 |
| ← jwheare left | 18:07 |
|
jaeckel
| well | 18:07 |
|
| finishing time | 18:07 |
| → lymeca joined | 18:07 |
|
jaeckel
| bye | 18:07 |
| ← jaeckel left | 18:08 |
| ← naeu left | 18:08 |
| → sfwc joined | 18:10 |
| ← factotvm left | 18:13 |
| → agile joined | 18:13 |
|
lanwin
| ah thanks Aides | 18:14 |
| → mozinator joined | 18:16 |
| ← abstrusething left | 18:16 |
| → abstrusething joined | 18:20 |
| → boto joined | 18:20 |
| → altrux joined | 18:22 |
| → bschindler|lapto joined | 18:25 |
| ← solar_ant left | 18:26 |
| ← boto left | 18:27 |
| → boto joined | 18:27 |
| → solar_ant joined | 18:28 |
| ← Dashkal left | 18:29 |
| → Dashkal joined | 18:29 |
| ← bschindler|lapto left | 18:33 |
| → bobesponja joined | 18:35 |
| ← robin left | 18:36 |
| → dreiss joined | 18:37 |
| ← jayallen left | 18:38 |
|
secleinteer
| wereHamster: yes, that's right | 18:39 |
|
| i use git locally to work on a public project | 18:40 |
|
| we are temporarily managing a branch locally due to some licensing issues, using svn as well | 18:40 |
|
| no one else will use git :( | 18:40 |
| ← aqmaiu left | 18:44 |
| ← HG`` left | 18:48 |
| → icwiener joined | 18:48 |
|
jbwiv
| is it possible to edit timestamps in a git repository? Say I wanted to rewrite history and have every commit occur between 4 pm and 6 pm? Strange question, I know | 18:51 |
|
Chani
| hmm. there's no git cp? is this because git will magically know I've copied? | 18:51 |
|
Grum
| Chani: yes | 18:52 |
|
Chani
| cool. | 18:52 |
| ← wshimmy left | 18:52 |
|
SamB
| jbwiv: it's possible, but you're going to have to come up with a better use-case if you want me to say how... | 18:52 |
| → memiux joined | 18:52 |
| ← bgerber left | 18:53 |
| ← agile left | 18:55 |
| → cousine_ joined | 18:55 |
| cousine_ → cousine | 18:56 |
| ← hyperair left | 18:56 |
| ← psoo left | 18:57 |
| ← memiux left | 18:58 |
| → bgerber joined | 18:58 |
| → khmarbaise_ joined | 18:59 |
|
ShadeHawk
| Chani: git would turn of copy detection if you enable / request it; git cp is just cp + git add. | 18:59 |
| ← cousine left | 18:59 |
| → cousine joined | 19:00 |
| ← schacon left | 19:00 |
|
ShadeHawk
| jbwiv: man git-rewrite-hist + GIT_AUTHOR_DATE and GIT_COMMIT_DATE environmental variables | 19:00 |
|
Grum
| ShadeHawk: rm+add | 19:00 |
|
ShadeHawk
| Grum: 'git cp' if it existed would be equivalent to 'cp' + 'git add' | 19:01 |
|
Grum
| errr yes sorry not mv >< | 19:01 |
|
ShadeHawk
| On the other hand 'git rm' and 'git mv' has built in extra safeties | 19:01 |
| → psoo joined | 19:01 |
| ← flazz left | 19:02 |
| → flazz joined | 19:02 |
| ← abstrusething left | 19:03 |
| → hyperair joined | 19:05 |
| ← solydzajs left | 19:06 |
| → mge joined | 19:08 |
| ← khmarbaise left | 19:08 |
| → jetru joined | 19:09 |
| → grahal joined | 19:09 |
|
mge
| so I accidentally did a git checkout github/master and reverted my commited changes I had loally to what was on the github server. Any way to recover mylocally commited changes? | 19:09 |
| → blaenk joined | 19:10 |
| → Modius joined | 19:11 |
|
maxb
| git checkout whatever-branch-you-were-on-before ? | 19:12 |
|
| Unless you were working on a disconnected head? | 19:13 |
|
FauxFaux
| git fsck --unreachable, rite? | 19:13 |
|
mge
| I am a complete newb.. this is my first attempt at merging changes remotely with my local changes | 19:13 |
|
| git checkout master maybe? | 19:13 |
|
hiffy
| mge: yup | 19:14 |
|
ShadeHawk
| mge: 'git checkout master' (assuming that you were on branch 'master' before 'git checkout github/master') | 19:14 |
|
hiffy
| if it got comitted you should be ok | 19:14 |
|
ShadeHawk
| mge: git would refuse to checkout if it would mean losing your local changes | 19:14 |
|
hiffy
| so in this case this means that github/master is not mge's origin/master? | 19:14 |
|
| oh right | 19:15 |
|
| it prolly makes a distinction b/w origin master and the local master | 19:15 |
|
mge
| it looks like git checkout master got me back to where I was | 19:15 |
| → omakase joined | 19:15 |
| → solydzajs joined | 19:16 |
| → wshimmy joined | 19:16 |
| → icwiener_ joined | 19:17 |
| → jayallen joined | 19:18 |
| ← icwiener left | 19:18 |
| → drdave joined | 19:20 |
| → jetienne joined | 19:20 |
|
jetienne
| q. is there a way to measure the size of a change between version ? | 19:20 |
| → walken joined | 19:20 |
|
walken
| hi.... I've been wondering, what is .git/branches for ? all my branches show up in .git/refs/heads instead. | 19:21 |
| bleything → bleything|away | 19:21 |
|
drdave
| Hi, I'm trying to write a script that exports a revision of a given file - say the third from the HEAD revision. I'm trying things like: | 19:21 |
|
thiago_home
| jetienne: and how do you measure change? | 19:21 |
|
| walken: legacy. It's not used anymore. | 19:22 |
|
drdave
| git show Court~3:"opn_Plugins/opn_Text/rev/object/View|Layouts|Horizontal|Three/group_1207" | 19:22 |
|
| or git show HEAD~3:"opn_Plugins/opn_Text/rev/object/View|Layouts|Horizontal|Three/group_1207" | 19:22 |
|
thiago_home
| drdave: I don't think wildcards work there | 19:22 |
| bleything|away → bleything | 19:22 |
|
thiago_home
| drdave: just tested: they don't. You should pass the full path. | 19:23 |
|
drdave
| ok - trying... | 19:23 |
| ← webcoder_ left | 19:23 |
| bleything → bleything|away | 19:24 |
| ← jetienne left | 19:24 |
|
Chani
| how do I set what files git ignores in ~/.gitconfig? the gitignore man page explained how to do it in .gitignore but that's different... | 19:25 |
| ← rudi_s left | 19:25 |
| ← lorandi left | 19:25 |
|
drdave
| fatal: ambiguous argument 'Court~3:/[[full_path]]': unknown revision or path not in the working tree. | 19:27 |
|
| Use '--' to separate paths from revisions | 19:27 |
|
| The [[full_path]] exists and is inside the git repository | 19:27 |
|
salty-horse
| is there a way to set svn props with git-svn? | 19:28 |
|
thiago_home
| salty-horse: not that I know of | 19:28 |
|
| drdave: can you do git shouw Court~3 ? | 19:28 |
|
Chani
| .gitconfig could really do with some more documentation... | 19:29 |
|
thiago_home
| Chani: man git-config | 19:29 |
|
Gitbot
| Chani: the git-config manpage can be found at http://git.or.cz/man/git-config | 19:29 |
| bleything|away → bleything|away|a | 19:30 |
|
Chani
| thiago_home: yeah, I looked there too | 19:30 |
|
drdave
| Yes - though as it is not referencing a given file - it does not return the text of the revision, but a load of stuff :) | 19:30 |
| → dedmajor joined | 19:30 |
|
Chani
| unless gitignore meant that I should set core.excludesfile | 19:30 |
|
| andthen have *another* file in hte format of .gitignore | 19:30 |
|
drdave
| PS - I'm on OSX | 19:31 |
| ← Alinermedia left | 19:32 |
| → Alinermedia joined | 19:32 |
|
thiago_home
| Chani: git config core.excludessfile ~/path/to/global-gitignore | 19:32 |
|
drdave
| I get the result i want if i use a form like: | 19:32 |
|
| git show f1a5079bbbb772641a512692d007e4d64721bb56:"opn_Plugins/opn_Text/rev/object/libOPN_GIT/card_1002" | 19:32 |
|
Chani
| ooh, it worked :) | 19:33 |
|
thiago_home
| Chani: with one s less | 19:33 |
| ← khmarbaise_ left | 19:33 |
|
Chani
| no more .svn or .swp files :) | 19:33 |
|
thiago_home
| drdave: ok | 19:33 |
|
| drdave: but I can vouch that git show REF~3:path/to/file works | 19:34 |
|
drdave
| OK - so you think could be an OSX thing? | 19:34 |
|
thiago_home
| drdave: try placing the entire argument in quotes | 19:35 |
|
drdave
| OK | 19:35 |
|
thiago_home
| or, just test: echo Court~3:opn_Plugins/opn_Text/rev/object/libOPN_GIT/card_1002 | 19:35 |
|
| what do you see? | 19:35 |
| → giallu joined | 19:36 |
| ← cousine left | 19:36 |
| ← bleything|away|a left | 19:37 |
| → bleything joined | 19:37 |
| → rshann_ joined | 19:38 |
| ← lanwin left | 19:40 |
|
drdave
| Been testing... will try ur suggeestion in a sec | 19:41 |
|
| Everything failed - single quotes, double, full and relative paths... | 19:41 |
|
| this sort of works: | 19:42 |
| ← javatexan left | 19:42 |
|
drdave
| git show "HEAD~3:opn_Plugins/opn_Text/rev/object/libOPN_GIT/card_1002" | 19:42 |
|
| BUT - it returns revision 0 and not 3 back from HEAD | 19:42 |
| ← salty-horse left | 19:42 |
|
drdave
| Either single or dounle quotes - (I changed to another file without "|" in the filename) | 19:42 |
| → memiux joined | 19:42 |
| → lorandi joined | 19:43 |
| ← lorandi left | 19:43 |
| → lorandi joined | 19:43 |
| → khmarbaise joined | 19:44 |
|
drdave
| not sure what you want me to "echo" | 19:44 |
|
| ls -la opn_Plugins/opn_Text/rev/object/libOPN_GIT/card_1002 | 19:44 |
| → javatexan joined | 19:44 |
|
drdave
| returns as expected - text file is there and exists | 19:45 |
|
| I'm at the git root | 19:45 |
|
| repository root | 19:45 |
| ← j-b left | 19:46 |
|
almostautomated
| hey guys; quick question to satisfy a curiosity; if someone creates a commit with a bunch of diff stuff in it; and we only want parts of that single commit is it fairly simple or is it easier to have them redo it and re-submit? | 19:48 |
| → cytrinox joined | 19:50 |
| → eht joined | 19:50 |
| → rlorandi joined | 19:52 |
| → tlrobinson joined | 19:52 |
|
tlrobinson
| why does git sometimes complain that a file isn't uptodate and can't be merged when pulling the first time, but if i immediately pull again it works? | 19:53 |
|
| (and git status doesn't show the file was modified) | 19:53 |
|
thiago_home
| "not up to date" means you have changes that haven't been committed | 19:54 |
|
| Git won't touch modified files | 19:54 |
|
tlrobinson
| yeah, but "git status" shows nothing has changed. and if i immediately try pulling again then it works the second time | 19:55 |
| ← com4_ left | 19:55 |
| → priidu joined | 19:55 |
|
tlrobinson
| know what i mean? does that happen to anyone else? | 19:55 |
| → memiux_ joined | 19:55 |
|
thiago_home
| which version are you using? | 19:56 |
|
drdave
| Ok - getting somewhere - relative files seem to work in uncomplicated cases (without quoting) need to do some more testing | 19:56 |
|
tlrobinson
| 1.6 | 19:56 |
|
thiago_home
| tlrobinson: no, I haven't seen this problem before | 19:56 |
|
drdave
| git version 1.6.2.4 | 19:56 |
| ← memiux_ left | 19:56 |
| → bx2 joined | 19:56 |
| → memiux_ joined | 19:56 |
|
tlrobinson
| well, its not a big deal, it's just curious | 19:59 |
| → schacon joined | 20:00 |
| → plasticine joined | 20:00 |
| ← bradly left | 20:01 |
|
drdave
| Ok seems to work with relative paths and second part quoted - rest of it must have been my mistake. Thanks. | 20:02 |
| ← lorandi left | 20:03 |
| ← rshann_ left | 20:04 |
|
almostautomated
| what type of search terms can lead me towards an answer to: | 20:04 |
|
| hey guys; quick question to satisfy a curiosity; if someone creates a commit with a bunch of diff stuff in it; and we only want parts of that single commit is it fairly simple or is it easier to have them redo it and re-submit? | 20:04 |
| → ciskje joined | 20:05 |
| → HG` joined | 20:05 |
| → bcardarella joined | 20:05 |
|
drdave
| Anyone recommend a good cross-platform way to view git diff / changes in text files cross-platform? I'm using "FileMerge" on OSX (part of developer tools) - looking to distribute script of Linux and Windows... | 20:05 |
|
SamB
| almostautomated: have him redo it! | 20:05 |
|
thiago_home
| drdave: "less" is very nice to read diffs | 20:06 |
| ← cytrinox_ left | 20:06 |
| ← memiux left | 20:06 |
|
drdave
| :) | 20:06 |
|
SamB
| yeah, just using PAGER is best | 20:07 |
|
almostautomated
| SamB: and is there a man page I can refer him to on how to seperate out the different parts of the code changed in one given file? ( perhaps git add -i ) | 20:07 |
|
SamB
| almostautomated: sometimes I do that with git-gui | 20:07 |
|
EvanCarroll
| I want vimdiff to work with flat calculated diffs. | 20:08 |
|
| =( | 20:08 |
| → unreal_ joined | 20:08 |
| → memiux joined | 20:08 |
|
almostautomated
| SamB: K; I'll see if I can lead him in that direction. Yet as you know; sometimes people say you want it here it is; in that case is there an effective way to parse out _parts_ of the commit? | 20:09 |
| ← memiux_ left | 20:10 |
|
SamB
| almostautomated: copy and paste from the diff ? | 20:10 |
|
| but never encourage contributors to make things difficult for you | 20:11 |
|
almostautomated
| LOL; I was afraid of something like that. Definitely not, I'll absolutely ask that it be redone | 20:11 |
|
| thanks for the input | 20:11 |
| → TheUni joined | 20:12 |
|
TheUni
| i'm trying to use git svn to clone a repo that's obviously corrupt somehow. every time it hits a certain file, git barfs. is it possible to ignore a file when cloning? | 20:13 |
| → cytrinox_ joined | 20:13 |
|
thiago_home
| TheUni: ignore? no | 20:13 |
|
| but you can start the clone after it | 20:14 |
|
SamB
| TheUni: there's not a chance that it's a bug in git-svn ? | 20:14 |
|
thiago_home
| drop everything before that | 20:14 |
| → gigi joined | 20:14 |
|
SamB
| I'd post to the git mailing list with instructions to reproduce | 20:14 |
|
TheUni
| thiago_home: don't think so. | 20:14 |
|
| same file every time | 20:15 |
|
| and if i skip it, the next time it's referenced it does the same thing | 20:15 |
| ← tvw left | 20:15 |
|
SamB
| TheUni: what's the filename ? | 20:15 |
|
TheUni
| mplayer.dll | 20:15 |
|
SamB
| okay ... | 20:15 |
|
| and I guess it's probably not over 2GiB | 20:15 |
|
| ;-) | 20:15 |
|
TheUni
| heh, no. nothing weird about it | 20:16 |
|
| and for the revs that fail, i can grab the file from svn just fine | 20:16 |
|
SamB
| so you can check out those entire revs just fine ? | 20:16 |
| → schacon_ joined | 20:16 |
|
SamB
| sounds like a bug in git-svn to me ... | 20:16 |
| ← schacon left | 20:16 |
|
SamB
| so, report it on the list | 20:17 |
|
| I assume it's a public SVN repo? | 20:17 |
|
TheUni
| yea | 20:17 |
|
| http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=512710 | 20:17 |
| mtvee|away → mtvee | 20:18 |
| → clamothe joined | 20:19 |
| ← dedmajor left | 20:19 |
| ← gigi left | 20:20 |
|
clamothe
| Using git-svn, how should i go about merging two branches? They are remote 'svn' branches, and I have local branches for both of them. | 20:20 |
|
| just merge my local branches and dcommit, or will that be messy? | 20:20 |
| → dedmajor joined | 20:22 |
| ← memiux left | 20:24 |
| → cytrinox1 joined | 20:24 |
| → Toad joined | 20:25 |
|
Toad
| hey all. if I've done a merge using git merge-tool, but then decided I want to change my mind and merge it a different way, is there a way to mark the file as "needing merge" | 20:26 |
|
| getting "file does not need merge" since merge-tool git-added it when I was done | 20:26 |
| → radarek joined | 20:27 |
| → j416 joined | 20:27 |
| ← cytrinox left | 20:28 |
| → Radar joined | 20:29 |
| ← SRabbelier left | 20:30 |
| ← solydzajs left | 20:31 |
| → lightcap joined | 20:31 |
| ← clamothe left | 20:32 |
| → gitte joined | 20:33 |
| → tote joined | 20:34 |
|
tote
| What could be wrong when i get: git: 'http-push' is not a git-command. See 'git --help'. | 20:34 |
|
ToxicFrog
| What command are you issuing? | 20:35 |
|
tote
| git push | 20:35 |
|
| ive cloned a repo from an http url | 20:35 |
|
JasonWoof
| almostautomated: git add -i is nice for committing some, but not all changes to the working tree. if you reset the commit you'd like part of, you should be able to use git add -i (then press 5 then *) to have it ask you which diff chunks you'd like added to the index | 20:36 |
|
| tote: you can't put over http | 20:36 |
|
| s/put/push/ | 20:36 |
|
| http is read-only | 20:36 |
| ← lucsky left | 20:36 |
|
tote
| JasonWoof: why is there a git-http-push command then? | 20:37 |
|
doener
| JasonWoof: dav? | 20:37 |
|
JasonWoof
| tote: there isn't. that's why you got a message that it's not a command | 20:38 |
|
doener
| tote: self-built git, or from distro packages? | 20:38 |
|
JasonWoof
| doener: git uses http in a read-only way | 20:38 |
|
tote
| doener: debian package | 20:38 |
|
JasonWoof
| afaik | 20:38 |
|
doener
| JasonWoof: man git-http-push | 20:38 |
|
Gitbot
| JasonWoof: the git-http-push manpage can be found at http://git.or.cz/man/git-http-push | 20:38 |
|
tote
| and dav is installed on the http-server | 20:38 |
|
almostautomated
| JasonWoof: selection by diff hunk - that's on a per file basis or per hunk within the file's diff? Either way; that gets us closer. Thanks. | 20:39 |
|
JasonWoof
| almostautomated: "git add -i" can do per file or per hunk | 20:39 |
|
| almostautomated: option 5 in the menu is per-hunk, which I like a lot | 20:39 |
|
| almostautomated: then it asks you which files you'd like to pick and choose hunks from | 20:39 |
|
doener
| tote: lenny? | 20:40 |
| ← galderz left | 20:40 |
|
almostautomated
| fantastic... I'll play with that tonight! Thanks again JasonWoof | 20:40 |
|
tote
| doener: squeeze | 20:40 |
| ← cytrinox_ left | 20:40 |
| ← knweiss left | 20:41 |
|
wshimmy
| "git add -p file" gets you there too, if you have a tracked file modified that you want to add hunks of | 20:41 |
|
doener
| tote: hm, does /usr/lib/git-core/git-http-push exist? Does "dpkg -L git-core" show it? | 20:41 |
|
JasonWoof
| I stand corrected, git can push to DAV. Although the manpage doener sent me to says that it's disabled if your libcurl is older than 7.16 | 20:42 |
| ← tlrobinson left | 20:42 |
|
gitte
| JasonWoof: how old is 7.16? | 20:42 |
|
tote
| doener: yes its there | 20:42 |
|
gejr
| how can i set the name of the project in gitweb? It's always named ".git".. | 20:43 |
| ← DavidKlein left | 20:43 |
| ← priidu left | 20:43 |
|
almostautomated
| wshimmy: I had read that somewhere but didn't see it in the add man page... | 20:43 |
| ← rlorandi left | 20:43 |
|
doener
| tote: hmm... what does "git --exec-path" say? | 20:44 |
|
JasonWoof
| gitte: no idea | 20:44 |
| ← ShadeHawk left | 20:44 |
| → cousine joined | 20:44 |
| → lorandi joined | 20:44 |
|
doener
| gitte, JasonWoof: 2006-10-30 | 20:44 |
|
tote
| doener: /usr/local/libexec/git-core/ | 20:45 |
| ← miriamg left | 20:45 |
| ← Toad left | 20:45 |
|
gitte
| JasonWoof: pity you did not even research that, otherwise I would have blasted you less for touting a _completely obsolete_ version of cURL. | 20:45 |
|
doener
| tote: so you have another git installed, presumably self-built | 20:45 |
|
gitte
| doener: thanks for doing JasonWoof's job. | 20:45 |
|
tote
| doener: hmm :/ gotta look into it | 20:46 |
|
doener
| tote: and that might be lacking the http-push support. I don't recall if fetch and push over http have different requirements | 20:46 |
|
| tote: or maybe the version in /usr/local/ got installed after you did the clone | 20:47 |
| unreal_ → unreal | 20:47 |
|
tote
| doener: any tip on have to remove the self-built version? | 20:47 |
| ← lorandi left | 20:47 |
| → lorandi joined | 20:47 |
|
JasonWoof
| I just figured if it was completely irrelevant, it wouldn't be in the manpage. | 20:48 |
| → rshann_ joined | 20:50 |
|
doener
| tote: http://git.pastebin.com/m340a1a74 -- that and the man pages | 20:50 |
|
| tote: IIRC that's all that gets installed | 20:51 |
|
tote
| doener: ok, thanks :) | 20:51 |
| ← gh34 left | 20:52 |
| → Zenopus_ joined | 20:52 |
| → jmatthews joined | 20:53 |
| ← HG` left | 20:54 |
| → azumanga joined | 20:59 |
| ← Weaselweb left | 20:59 |
|
azumanga
| In a default git setup, is there anything that stops someone from deleting all the branches from a remote repository they have write access to? | 20:59 |
|
alip
| is it possible to do a rebase after merging from upstream several times? | 21:00 |
|
DrNick
| no | 21:00 |
|
azumanga
| While I'm sure I'm stating the obvious, isn't the fact that branches can be deleted and not recovered a fairly major hole in a version control system? | 21:01 |
| → keystr0k joined | 21:02 |
|
azumanga
| I'm genuinely interested what the reasoning was behind this, rather than versioning branches the same as files | 21:03 |
|
keystr0k
| I have a bare repository with all of the latest commits. What's the best way to reset my local working tree to a previous commit... and if I like the changes that I end up making, to it, commit them as a new commit into the bare repo? | 21:03 |
|
gitte
| keystr0k: clone the bare repo. | 21:04 |
| ← sfwc left | 21:04 |
|
gitte
| keystr0k: make the changes. | 21:04 |
|
| keystr0k: commit them. | 21:04 |
|
| keystr0k: push them. | 21:05 |
| → FreakGuard joined | 21:05 |
|
keystr0k
| gitte: and it won't overwrite any of the other commits ? do I checkout that specific commit number? Currently the bare repo and working tree are exactly the same... I was going to reset to the earlier commit, make my changes, etc... but that doesn't seem right... branches? | 21:06 |
|
gitte
| azumanga: if you like a system disallowing branches, and thereby forcing people to blow away repositories that they resurrect with _just_ the branches they like, just say so. | 21:06 |
|
doener
| azumanga: unless you have something like gitosis, write access may as well mean that the user can do "rm -rf repo" | 21:06 |
| Zenopus_ → Zenopus | 21:06 |
|
doener
| azumanga: and if you don't trust your devs set receive.denyDeletes | 21:06 |
|
azumanga
| doener: Really?? I'd assumed, like svn, they couldn't delete history | 21:07 |
|
gitte
| keystr0k: you can do branches, of course, but if you want to keep the other commits, you will have to merge the branches and then push. | 21:07 |
|
keystr0k
| gitte: mmkay | 21:07 |
|
azumanga
| So, I should add some extra version control for my version control? | 21:08 |
|
gitte
| azumanga: you can use subversion. That would be a solution, no? | 21:09 |
| → hcl2 joined | 21:09 |
|
gitte
| azumanga: ask on #subversion, I am sure they'll agree. | 21:09 |
|
hcl2
| for git merge or pull the --no-commit option doesn't seem to do anything. | 21:09 |
|
doener
| azumanga: If you're scared of your devs you should probably rather hire new ones... But to protect from pure mistakes, what's the problem with receive.deny{Deletes,NonFastForwards}? | 21:09 |
| ← cousine left | 21:09 |
|
azumanga
| doener: I'm going to have a look at those | 21:09 |
|
walken
| azumanga: git beginner here. but, I'd assume you can clone the repo so you have a backup. | 21:10 |
|
azumanga
| But seriously, part of the point of version control, is to avoid people's mistakes and allow old history to be dug back up in the case of accidents | 21:10 |
| → riddochc joined | 21:10 |
| ← tbf left | 21:10 |
|
azumanga
| Perfect devs wouldn't need version control, they'd just edit the code live | 21:10 |
|
gitte
| azumanga: BS | 21:10 |
|
| azumanga: Perfect devs still would need version control | 21:11 |
|
| azumanga: obviously you haven't thought things through... | 21:11 |
| ← qrush left | 21:12 |
|
| doener .oO( hm, live editing and interpreted code... a whole new dimension for race conditions ) | 21:12 |
|
gitte
| azumanga: let me guess: you are a project manager, not a dev. | 21:12 |
| ← drdave left | 21:12 |
|
azumanga
| gitte: No | 21:12 |
|
gitte
| azumanga: with an MBA as background. Am I right? ;-) | 21:12 |
|
riddochc
| That assumes that version control is only for the purpose of knowing what's been changed. | 21:12 |
|
azumanga
| I can list some code I've written if you really want me to | 21:12 |
|
gitte
| azumanga: then how can you say that? | 21:12 |
| ← loincloth left | 21:12 |
|
squentin_
| azumanga: you can also use git where each dev has its own public repo, and you pull from them | 21:13 |
| → dmoerner joined | 21:13 |
| ← keystr0k left | 21:13 |
|
azumanga
| Well, I think (although I'm looking at how I'm going to work around it) that allowing branches to be deleted, never to be recovered, puts a serious hole in version control | 21:14 |
|
gitte
| squentin_: although to prevent "data loss" azumanga is so concerned about, you'd still have to "git fetch" from those pretty often. | 21:14 |
|
| azumanga: didn't you say that already? | 21:14 |
|
| azumanga: but you haven't offered any rationale for that. | 21:14 |
|
| azumanga: in contrast, I can give you at least one _very_ _good_ reason why you should be able to delete branches. | 21:15 |
|
| azumanga: trade secrets. You could spill them unintentionally. | 21:15 |
|
azumanga
| Do I need a rationale? My belief is that people make stupid mistakes, and someone might well at some point accidentally delete a branch which actually they, or someone else, still needed | 21:15 |
|
gitte
| azumanga: happened to me, I was told that I could commit the stuff, but then asked to delete it later. | 21:16 |
|
| azumanga: obviously you do not need a rationale. | 21:16 |
|
| azumanga: and obviously I wasted my time on you. Have a fun time. | 21:16 |
|
azumanga
| The same reason we back up users's home directories, because one day someone is going to accidentally rm -rf in the wrong directory, and *bang*, home directory gone. | 21:16 |
| → gerberb joined | 21:16 |
|
riddochc
| deleting a branch in git should only result in a loss of data if nothing else refers to the same commit, and you've got reflogs off, and... probably a few other things, too. | 21:16 |
|
doener
| azumanga: and you exclude your code repositories from the backup exactly why? | 21:17 |
|
Ilari
| azumanga: If someone else needed it, its likely has remote mirrors (git fetch won't delete those without mirror mode), or better yet, has local working branch based on it. | 21:17 |
|
| azumanga: And IIRC, mirror mode is pretty much for bare repos only. | 21:17 |
|
azumanga
| We certainly don't exclude them, but (although I haven't tried) splicing a deleted branch from the backup back into the git server might prove fun | 21:17 |
|
doener
| azumanga: put the backed up repo somewhere, push, done | 21:18 |
|
Ilari
| azumanga: Or just take some clone and push its tracking branch. | 21:18 |
| ← rshann_ left | 21:19 |
|
wshimmy
| azumanga: for it to really be data loss, you need to delete it from the server. then everybody who has a clone of the repo has to delete the branch. and you have to wait for the reflog to expire or for a gc on the server. | 21:19 |
|
azumanga
| Anyway, it seems the option I would like, which is that branches are not actually deleted, but versioned and recoverable, like svn, doesn't exist in git. I'll investigate the various options you have suggested, in particular recieve.denyDeletes looks very promising | 21:19 |
|
wshimmy
| azumanga: if somebody does a git push origin :master | 21:19 |
|
| azumanga: i would imagine they'd realize right away | 21:19 |
|
azumanga
| wshimmy: The problem is that maybe you don't realise you wanted that branch for months | 21:19 |
|
wshimmy
| azumanga: and then its just a git push origin master away from being fixed | 21:20 |
| ← cemerick left | 21:20 |
|
wshimmy
| azumanga: and there isn't any clone anywhere with those commits? | 21:20 |
| → sfwc joined | 21:21 |
|
azumanga
| wshimmy: Well, we are working in hypotheticals here.. but I would expect there to be, except of course if there was a backup. | 21:21 |
|
| This is just a feature of svn which I'm, perhaps unnecessarily, afraid of loosing when moving to git. | 21:21 |
|
Ilari
| azumanga: If you want on-line "second copy" repo, just periodically fetch the other repo? | 21:21 |
|
wshimmy
| azumanga: im just saying, if that's the case, i think your workflow has bigger problems than git allowing you to manage your repo yourself | 21:22 |
|
azumanga
| wshimmy: You really can't imagine someone might do away with a branch, thinking it was uninteresting, then months later wanting to query something about it? | 21:22 |
|
wshimmy
| gitte: sorry i disappeared earlier. you still interested in seeing diff engine code? | 21:22 |
|
doener
| azumanga: why does a branch that nobody wants end up in a "central" repo anyway? | 21:22 |
| ← Fullmoon left | 21:23 |
|
walken
| azumanga, I suspect the idea is that devs will create and delete branches, nilly-willy, *on their own cloned repos*. | 21:23 |
|
wshimmy
| azumanga: i cant imagine someone doing away with a branch *on the central server* that hasn't been merged or tracked elsewhere | 21:23 |
|
walken
| so you want branch creation to be easy because people will do it a lot - but they shouldn't have to do it much at all on the central repo. | 21:23 |
|
azumanga
| doener: Well, I'm imagining that at one point lots of people were interested in it, perhaps preparing for a new release or feature or some such. | 21:23 |
| ← codebrulee left | 21:23 |
| ← jrmuizel left | 21:24 |
| → gberdyshev joined | 21:24 |
|
gitte
| wshimmy: sorry, I am a bit too annoyed with clueless persons, have no mind for the diff engine. | 21:24 |
| → okram joined | 21:24 |
|
wshimmy
| gitte: heh, no problem | 21:25 |
|
azumanga
| OK, a different concrete comment. Do you think (I may e-mail the git mailing list anyway) an option in git which moved all deleted branches into some kind of "attic", from which they could be recovered for all time, would have any chance of acceptance? Obviously such an option would not be the default. | 21:25 |
| ← azol left | 21:26 |
|
tote
| how can i setup gitweb to have a little git link for every project like on http://git.kernel.org/ ? | 21:26 |
|
Ilari
| azumanga: As cronjob command, something like 'git fetch <repo-URL> refs/*:refs/remotes/repoX/`date -u +%Y%m%dT%H%M%SZ`/*' run from dedicated bare repo? | 21:26 |
|
riddochc
| azumanga: rather unlikely | 21:26 |
|
wshimmy
| azumanga: probably not, for the reason gitte gave earlier about accidentally pushing sensitive information | 21:26 |
|
doener
| azumanga: dunno... deleting branches in a remote repository is probably one of the less used commands | 21:26 |
|
| s/less/least/ even | 21:27 |
|
Ilari
| azumanga: Can be done using hooks. | 21:27 |
| → memiux joined | 21:27 |
|
azumanga
| llari: Ah, thanks, that looks like a good idea. I'll give that a try | 21:27 |
|
gitte
| wshimmy: I would have more reasons, too, but I have better things to do than to waste my time, thankyouverymuch. | 21:28 |
| ← kwatz left | 21:28 |
|
Ilari
| azumanga: Branch deletes are visible to *-receive hooks as ordinary update instructions, with new sha values being all zeroes (40 of them). | 21:28 |
|
| gitte whistles "Do I need a rationale?" No, obviously not. D'oh! | 21:28 |
|
azumanga
| gitte: Do you really think I haven't provided a rationale? | 21:28 |
|
walken
| hmmmm. I have a question too. been wondering what .git/branches is for (all my branches seem to end up in .git/refs/heads instead). And in particular, why git-new-workdir does not symlink .git/branches. | 21:28 |
|
azumanga
| Anyway, you aren't being helpful, so it doesn't really matter | 21:29 |
|
Ilari
| walken: Its obsolete. | 21:29 |
| ← bgerber left | 21:29 |
|
walken
| Ilari, thanks, that's what I thought but I wasn't sure. | 21:29 |
|
gitte
| azumanga: you do _not_ have any rationale, you have _not_ thought things through, otherwise you would _not_ insist on that _stupid_ insistence that allowing to delete branches would be a hole in a VCS. | 21:29 |
|
azumanga
| Thanks doener, llari, I have some good things to look at now. I will report back if it works smoothly, as other people might want it. | 21:30 |
|
gitte
| azumanga: it is _completely_ moronic to assume so, for the same reason it would be _completely_ stupid to disallow deleting files. | 21:30 |
|
azumanga
| gitte: Deleting files is completely different to deleting branches in git | 21:30 |
|
gitte
| azumanga: and now think things through and don't accuse people who did as being unhelpful. | 21:30 |
|
Ilari
| walken: Hasn't been used since at least 1.5.0. | 21:31 |
|
gitte
| azumanga: you can also go to #subversion, as far as I am concerned, just stop wasting time on #git. You have a brain, use it before asking questions. | 21:31 |
|
azumanga
| gitte: because if I delete a file, I can get it back, for all time. Surely you wouldn't suggest that deleted files can't be recovered, because why would anyone delete a file if they might want it back later? | 21:31 |
| → Gnutoo joined | 21:31 |
|
gitte
| azumanga: "Deleting files is different from deleting branches".. pfff! | 21:31 |
|
| azumanga: I say "pfff!" | 21:31 |
|
| azumanga: OF COURSE you need to be able to delete files _AND LIKEWISE_ branches. | 21:32 |
|
| azumanga: and you cannot get back a deleted file if you did your job properly. | 21:32 |
|
azumanga
| gitte: Yes, but part of the point of a VCS is that you can rewind time, and recover previously deleted files | 21:32 |
|
gitte
| azumanga: IN CONTRAST you can get back a branch in git. | 21:32 |
|
Gnutoo
| hello, I don't know why but I've a file that I don't want included and that is included(like when you include files with git add)...how do I get rid of it(I've done git commit but I've not pushed yet...)? | 21:32 |
|
gitte
| azumanga: so _STOP WASTING TIME ON THIS CHANNEL_ | 21:32 |
| → zedr0n joined | 21:33 |
|
bleything
| gitte: lay off the caps and underscores. if you feel like your time is being wasted, go do something else. | 21:33 |
|
gitte
| Gnutoo: you cannot, according to this azumanga guy here in this channel who wastes all of our time. | 21:33 |
| → qrush joined | 21:33 |
| ← zedr0n left | 21:33 |
|
Ilari
| Gnutoo: rebase -i ? | 21:33 |
|
wshimmy
| Gnutoo: you can git reset it and then git commit --amend if it's the latest commit | 21:33 |
|
gitte
| bleything: I am here for some other reason than to hear rationale-less ranting. | 21:33 |
|
Gnutoo
| it's the last commit | 21:33 |
|
| I've to do only one commit | 21:34 |
|
Ilari
| Gnutoo: If there's only one, 'git rm --cached' it and then 'git commit --amend'. | 21:34 |
|
Gnutoo
| thanks a lot | 21:34 |
|
Ilari
| Gnutoo: Also works if its only in latest commit (and latest commit hasn't been pushed out). | 21:34 |
|
Gnutoo
| I didn't push yet...I always review my commits before pushing | 21:35 |
|
Ilari
| Gnutoo: Good idea. | 21:35 |
|
riddochc
| Gnutoo: You might want to look at git gui - makes editing previous commits, and knowing what you're committing, a lot easier. | 21:36 |
|
gitte
| Gnutoo: which commit is it? The latest one? | 21:36 |
|
Gnutoo
| that's what I use | 21:36 |
|
| yes the lastest one | 21:36 |
| → bremner_ joined | 21:36 |
|
gitte
| Gnutoo: Ilari's advice was very good: rm --cached the file. | 21:36 |
|
tote
| how can i setup gitweb to have a standard clone url for every project it serves? | 21:36 |
|
leo2007
| do I need to treat binary files such as .png or .pdf files carefully? | 21:37 |
|
gitte
| Gnutoo: then you need to "git commit --amend", which basically redoes the latest commit according to the current staging area. | 21:37 |
| ← radarek left | 21:37 |
|
gitte
| Gnutoo: but verify that everything worked as you wanted it to, by "git show HEAD" after the commit. | 21:37 |
| → killerchicken__ joined | 21:37 |
|
Ilari
| leo2007: If you want, you can mark them as binary. But usually not needed. Especially if on unix. | 21:37 |
|
Gnutoo
| thanks | 21:37 |
|
riddochc
| Gnutoo: in the 'commit' menu of git gui, there's "amend last commit" | 21:38 |
|
Gnutoo
| git rm deleted the file not the change...I'll reset what I've done and do it again | 21:38 |
|
| hopefully I saved the commit message | 21:38 |
|
azumanga
| doener: Thanks, I've tested receive.denyDeletes on our public repo, and that does exactly what I want. | 21:38 |
|
Ilari
| Gnutoo: Resurrect the file from latest revision? | 21:38 |
|
Gnutoo
| good idea | 21:39 |
|
Ilari
| Gnutoo: And then rm --cached it. | 21:39 |
| → okram_ joined | 21:39 |
|
Gnutoo
| git checkout -- file if I remember | 21:39 |
| okram_ → mfontani | 21:39 |
|
Ilari
| Gnutoo: Actually, you need 'checkout HEAD -- file' since you want it from latest revision. | 21:39 |
| → hoohah joined | 21:39 |
|
Ilari
| Gnutoo: 'checkout -- file' grabs it from the index (and git rm likely nuked that). | 21:40 |
| ← jayallen left | 21:40 |
|
Gnutoo
| ok thanks | 21:40 |
|
Ilari
| leo2007: Except that one needs to be careful when modifying them, since they can't be merged. | 21:40 |
|
hoohah
| hello. how git handle symlinks in a repo? when i clone it, will the symlink remain intact? | 21:40 |
|
| wshimmy points to his previous suggestion of git reset :) | 21:40 |
|
Ilari
| hoohah: Symlink targets are treated as opaque blobs. | 21:40 |
|
leo2007
| Ilari: yes, that's my concern them. | 21:40 |
|
| Ilari: how to modify them | 21:40 |
|
hoohah
| Ilari: what you mean? | 21:40 |
|
Ilari
| hoohah: Symlinks can be added. They are stored as symlinks, but no further interpretation is done. | 21:41 |
| ← bremner_ left | 21:41 |
| → solydzajs joined | 21:41 |
|
Ilari
| leo2007: You get nasty merge if you modify binary file in different ways on two branches and then merge those two branches. | 21:42 |
|
gitte
| Gnutoo: you can always see what the new commit would look like with "git diff HEAD^" | 21:42 |
|
Gnutoo
| ok thanks | 21:42 |
|
hoohah
| Ilari: ah good. that is what i after | 21:43 |
|
| i'm | 21:43 |
|
gitte
| doener: seems that I had to shout before your answer was finally accepted anyway. | 21:43 |
|
leo2007
| how to better handle them, Ilari | 21:43 |
|
Ilari
| leo2007: PDFs and pngs are essentially unmergeable. There's essentially no way around it. If the PDF is generated from other files, maybe its better not to put the PDF there? | 21:44 |
|
pasky
| why are they unmergeable? | 21:45 |
|
| just choose one version | 21:45 |
|
| esp. for png that's usually just fine | 21:45 |
| → matthewmcculloug joined | 21:46 |
| ← sakyamuni left | 21:46 |
| ← killerchicken_ left | 21:46 |
|
leo2007
| does that mean if I have many branches I'd be better modify them in just one branch? | 21:46 |
| → WALoeIII joined | 21:48 |
| ← feanil left | 21:48 |
| → qrush_ joined | 21:48 |
| ← leanucci left | 21:48 |
| → jayallen joined | 21:49 |
|
Ilari
| leo2007: Actually, maybe just propagating changes to all branches as soon as possible is enough. But problem turns bit nastier this is multiple-dev project. | 21:50 |
| ← mozinator left | 21:51 |
| ← qrush left | 21:51 |
|
leo2007
| Ilari: if I modify them on one branch, would that prevent me from all these problems? | 21:52 |
| ← john3909 left | 21:52 |
| → kallepersson joined | 21:52 |
| → Minimiscience joined | 21:52 |
|
leo2007
| I'd like to stick to one practice to avoid problems. I'm working on a latex project so I'd need to include some images in .png and .pdf format | 21:52 |
| ← solydzajs left | 21:52 |
|
Aides
| convert them to tikz ;) | 21:53 |
| ← okram left | 21:53 |
|
azumanga
| Are these .pngs and .pdfs auto generated? | 21:53 |
|
| I assume the .pdfs are the paper itself, latexed? | 21:53 |
|
kallepersson
| Hi! A very basic question: If I pulled the code 10 minutes ago, my friend comitted a change 5 minutes ago (which means my code doesn't have the changes he made), how would I to do push my code without overwriting his changes? | 21:54 |
|
azumanga
| I've found it best to not store the .pdfs of the paper, assuming it is easy to regenerate them from the late source, to avoid conflicts | 21:54 |
|
Ilari
| kallepersson: pull again? | 21:54 |
| ← suman_g left | 21:54 |
|
kallepersson
| Ilari: wouldn't that overwrite my changes? | 21:54 |
|
Ilari
| kallepersson: Commit first. | 21:54 |
|
leo2007
| azumanga: no | 21:54 |
|
kallepersson
| Oh! | 21:54 |
|
squentin_
| leo2007: I think what you should do is just never modify them, just use a new filename if you want to modify one | 21:55 |
|
leo2007
| azumanga: no the .pdf are images exported from other programs | 21:55 |
| ← mfontani left | 21:55 |
|
Ilari
| kallepersson: And to push the changes, you would have needed to commit anyway. | 21:55 |
|
kallepersson
| True | 21:55 |
|
leo2007
| squentin_: that's very problematic, that means I also need to modify the .tex source. | 21:55 |
|
Minimiscience
| If a subdirectory of a Git repository evolves into its own project, what would be the best way to give it its own repository with history? | 21:55 |
|
| Should I just clone the repo and delete everything outside of the directory, optionally rebasing away the history of the other files, or is there a cleaner way to do it? | 21:55 |
|
azumanga
| leo2007: Ah, sorry. in that case, things do get more complicated. Obviously, if you don't put different copies in different branches, everything will just merge fine. It's only if you change the picture in multiple branches, in which case you will need to think about which one you want to merge anyway. | 21:55 |
|
Ilari
| leo2007: What about after doing each modification, merge/rebase all affected branches immediately before further changes? That should ensure no conflicts on those files. | 21:56 |
|
Aides
| Minimiscience, there is git filter-branch example on this | 21:56 |
|
squentin_
| leo2007: keeping track of changes in text file is what git knows how to do | 21:56 |
|
Aides
| Minimiscience, you're looking for --subdirectory-filter option | 21:56 |
|
gitte
| Minimiscience: --subdirectory-filter | 21:56 |
|
Minimiscience
| I did not know that; it looks like it should work. | 21:56 |
| ← name left | 21:57 |
| → clamothe joined | 21:57 |
|
leo2007
| squentin_: I'm not questioning that. Just that this approach is not efficient. it requires unnecessary changes to the source. | 21:57 |
|
Ilari
| leo2007: If all non-mergeable files really have linear history (per-file history) just keep with seperate filenames? | 21:58 |
| ← icwiener_ left | 21:58 |
| ← walken left | 21:58 |
|
kallepersson
| Thanks | 21:58 |
| ← kallepersson left | 21:58 |
| ← clamothe left | 21:58 |
|
squentin_
| leo2007: well you can modify them, it's just that when you want to merge 2 branches with different version of them, you'll have to choose one | 21:58 |
|
leo2007
| and git knows that are binary | 21:59 |
|
squentin_
| yes | 21:59 |
|
Ilari
| leo2007: And since those files are autogenerated, presumably you could generate merge result somehow? | 21:59 |
|
leo2007
| ok that sounds good | 22:00 |
|
| thank you all for clearing my concerns | 22:01 |
|
Ilari
| leo2007: Or just take one of the merged versions as the new version. | 22:02 |
|
| leo2007: (git checkout --ours/--theirs -- file'). | 22:02 |
| ← lightcap left | 22:02 |
| ← krh left | 22:03 |
|
azumanga
| Thanks for comments everyone. Goodnight | 22:03 |
|
leo2007
| Ilari: thanks, I'll keep that in mind. I haven't used the --ours/--theirs options before | 22:03 |
| ← azumanga left | 22:04 |
| ← Minimiscience left | 22:04 |
|
Ilari
| leo2007: If you have old version, you might need to upgrade git. | 22:04 |
|
leo2007
| Ilari: I'm using 1.6.2.4 | 22:05 |
| ← Sho_ left | 22:05 |
| → solydzajs joined | 22:07 |
| → dmlloyd_ joined | 22:08 |
|
Ilari
| leo2007: Should be new enough for most features. Of course, 1.6.3.1 is out... | 22:09 |
| ← d0k left | 22:09 |
|
leo2007
| Ilari: thanks. I'll update it later on. | 22:10 |
| → SRabbelier joined | 22:10 |
| ← Tuomas left | 22:10 |
| dmlloyd_ → dmlloyd | 22:12 |
| ← dwmw2 left | 22:12 |
| ← riddochc left | 22:12 |
| ← bcardarella left | 22:13 |
| ← ph^ left | 22:13 |
| → naeu joined | 22:14 |
| → ericindc joined | 22:15 |
| ← LiamH left | 22:15 |
| ← cmarcelo left | 22:15 |
|
| gitte still tries to think about parent-less commits as ways to track large binary files | 22:17 |
| → azumanga joined | 22:18 |
| ← __iron left | 22:19 |
|
wshimmy
| gitte: where they would just be replaced rather than compared in a merge? | 22:22 |
|
gitte
| wshimmy: yes, the idea is to avoid having the whole complete history of the binary files. | 22:23 |
|
| wshimmy: there was a talk about tracking huge binary files with Git at the GitTogether 2008. | 22:23 |
| → lightcap joined | 22:24 |
|
wshimmy
| gitte: whats the downside to the parent-less commits method? | 22:24 |
|
| gitte: other than being unable to commit a binary and a source file in the same commit id imagine? | 22:25 |
| → sergiodj joined | 22:26 |
| → scarabx joined | 22:26 |
|
azumanga
| I have pulled a update to a repository. Someone else as added various tags, which I can see with gitweb, but "git pull" seems to have only pulled about a third of the tags to my computer. Any ideas why, and how I get the rest? | 22:26 |
| ← dwave left | 22:27 |
| ← bdiego left | 22:27 |
| ← lorandi left | 22:28 |
|
wshimmy
| azumanga: git pull --tags | 22:28 |
|
| azumanga: see git help push, it explains what gets pulled and what not | 22:28 |
|
| err, obviously git help pull | 22:28 |
|
gitte
| wshimmy: the downside is that merging is not possible. That would need the history. | 22:29 |
|
azumanga
| Ah, thanks, I missed that entirely! | 22:29 |
|
| Wonder how they ended up historyless | 22:29 |
| ← bx2 left | 22:29 |
|
azumanga
| I believe they came from a svn import, so possibly something weird happened there | 22:30 |
|
wshimmy
| gitte: but this is for files that can't be merged anyways? | 22:30 |
|
azumanga
| Yes, they were 'svn tags' that someone commited changes to (as a tag in svn is just a directory you can commit to), which, not unsuprisingly, confused the conversion process (I think) | 22:31 |
| ← giallu left | 22:33 |
| ← qrush_ left | 22:33 |
| ← ciskje left | 22:33 |
| → qrush joined | 22:34 |
| ← WinterWeaver left | 22:34 |
| ← psoo left | 22:34 |
| → mitkok joined | 22:34 |
| → lourense joined | 22:34 |
| ← naeu left | 22:36 |
| ← SRabbelier left | 22:38 |
| → SRabbelier joined | 22:38 |
|
hoohah
| hello. how do i get the basename of the git repo I'm currently in? | 22:39 |
|
gitte
| wshimmy: binary files can be merged if you have an appropriate merge helper. | 22:40 |
|
hoohah
| also, if i'm in separate non-git dir, and I want to perform a git ls-tree on a git repo dir, how do i do so? | 22:40 |
|
wshimmy
| gitte: ah, right | 22:40 |
|
hoohah
| (for purposes of scripting) | 22:40 |
| ← kraymer left | 22:41 |
| → sakyamuni joined | 22:41 |
|
gitte
| wshimmy: we would have a GSoC project to implement domain-specific merge helpers, if the student hadn't been led down the wrong path by someone on the mailing list. | 22:42 |
| ← flazz left | 22:43 |
| → leanucci joined | 22:43 |
|
SRabbelier
| gitte: why so sour? | 22:43 |
|
wshimmy
| gitte: how manual is this merge process with a helper? | 22:44 |
| ← Gnutoo left | 22:44 |
|
gitte
| SRabbelier: I could have used those merge helpers myself. | 22:44 |
|
| wshimmy: depends on the merge helper. | 22:44 |
|
wshimmy
| gitte: i would think that in a lot of cases they would be mainly just 'converting' the binary format into something that could be compared or merged by hand | 22:47 |
|
| but perhaps im just unimaginative ;) | 22:47 |
| ← khmarbaise left | 22:47 |
|
gitte
| wshimmy: well, in the most general case, the merge _must_ be manual. | 22:47 |
|
| wshimmy: however, very often, a clever program can help to resolve the common conflicts almost automatically. | 22:48 |
|
wshimmy
| gitte: but for a completely manual case, you don't need the history anyways since you're not doing a three-way merge, right? | 22:48 |
|
| gitte: that seems very impressive. i have not thought about this in the slightest, clearly. :P | 22:48 |
| ← wmoxam left | 22:49 |
|
gitte
| wshimmy: a merge is only necessary when there are two different lines of development. | 22:49 |
| → qrush_ joined | 22:50 |
|
gitte
| wshimmy: so it would very much be a 3way merge. | 22:50 |
|
| wshimmy: that's what our default merge does with text files. | 22:50 |
| ← hpoydar left | 22:51 |
| ← javatexan left | 22:52 |
|
wshimmy
| ...right, that was dumb | 22:52 |
| ← qrush left | 22:52 |
| → richcollins joined | 22:53 |
| → jayallen_ joined | 22:53 |
|
richcollins
| How do I handle this? git pull steve master:new-db | 22:53 |
|
| ! [rejected] master -> new-db (non fast forward) | 22:53 |
| ← azumanga left | 22:54 |
| ← sunoano left | 22:54 |
|
richcollins
| I would expect a merge conflict message if that were a problem | 22:54 |
|
Aides
| git checkout new-db; git merge steve/master | 22:54 |
|
| not neccessarily | 22:55 |
|
| but probably | 22:55 |
|
| it means that a merge is required, it doesn't mean that there will be conflicts | 22:55 |
| → fooljay_ joined | 22:55 |
|
Ilari
| richcollins: That syntax looks odd. | 22:56 |
|
richcollins
| Aides: That is fine, why doesn't it go ahead with the merge and tell me if there are conflicts | 22:56 |
|
| Ilari: It might be wrong | 22:56 |
| ← cannonball left | 22:56 |
|
Ilari
| richcollins: Merge requires working tree. | 22:56 |
|
Aides
| probably because its not checked out | 22:56 |
|
richcollins
| I am pulling from the remote named steve and attempting to merge the brand master on steve with the branch new-db locally | 22:56 |
|
| I did check it out | 22:56 |
|
wshimmy
| gitte: but i still don't see why that is merge-prohibitive | 22:56 |
|
richcollins
| * new-db | 22:56 |
|
wshimmy
| gitte: if i understand the 3-way merge git uses correctly (and i hope i do)...take the two differing parents (but none of their histories) and do its merge thing, right? | 22:57 |
|
richcollins
| Ilari: Is that the correct syntax for the operation I described? | 22:58 |
|
gitte
| wshimmy: actually, take the base and both new versions, and present only the differing developments. | 22:58 |
|
Ilari
| wshimmy: Having common ancestor version available lets to resolve many kinds of conflicts. | 22:58 |
|
Aides
| richcollins, you need to run git merge steve/master now | 22:59 |
|
wshimmy
| gitte: so if i want to merge my parent-less binary commit abcde with your parent-less binary commit 12345, it would need only abcde and 12345 to reach the final version | 22:59 |
|
Ilari
| richcollins: Usually pull is invoked with designation of remote repo and branch on remote repo. | 22:59 |
| → agile joined | 22:59 |
|
Ilari
| richcollins: So usually something like 'git pull foo bar'. | 22:59 |
|
wshimmy
| gitte, Ilari: well, im speaking only in the very manual merge resolution case | 22:59 |
|
gitte
| wshimmy: one thing would be to help merging OpenOffice files by presenting the user with a way to see and resolve the conflicting changes. | 22:59 |
|
richcollins
| Ilari: How do I know which local branch it will be merged with in that case? | 22:59 |
|
| I added :new-db to explicitly merge with new-db | 23:00 |
|
gitte
| wshimmy: but the parent-less merge (i.e. a 2way merge) would not be able to know which side to take. | 23:00 |
|
Ilari
| richcollins: Current branch. | 23:00 |
|
| richcollins: And if you want to try to fast-forward some local branch, use fetch, not pull. | 23:00 |
|
richcollins
| Ilari: OK I just wanted to be explicit to avoid merging with the wrong branch | 23:00 |
|
gitte
| wshimmy: in a way, a 2way merge would be possible, by assuming an _empty_ base. | 23:00 |
|
wshimmy
| gitte: but you would be presented all of the conflicting changes by the merge driver and choose it yourself | 23:00 |
|
richcollins
| Ilari: I wanted to fetch and merge | 23:01 |
|
| it isn't a fast forward | 23:01 |
| almostautomated → almostautomated| | 23:01 |
|
gitte
| wshimmy: that's also what we do with text files, when merging two branches where the conflicting file did not exist in the merge base. | 23:01 |
|
| wshimmy: yes, something like that would be needed. | 23:01 |
|
wshimmy
| gitte: seems better than nothing (or are there already binary merge drivers im ignorant of that work just fine atm?) | 23:02 |
|
gitte
| wshimmy: (The same as with lacking file in merge base happens when merging independent branches, i.e. branches without common history) | 23:02 |
|
| wshimmy: AFAIR there are some very special merge helpers that haven't been published. | 23:02 |
|
| wshimmy: I started something for .odt files, but it never was stable enough to be used properly. | 23:03 |
|
wshimmy
| gitte: those not withstanding, the current procedure for binaries is just 'replace blob'? | 23:03 |
| ← juanjoc left | 23:04 |
|
gitte
| wshimmy: no... the current procedure is: here are the two versions, <file>~HEAD and <file>~deadbeef, choose your poison. | 23:04 |
|
wshimmy
| gitte: er, right | 23:05 |
|
Ilari
| richcollins: You were probably lucky it hit non-ff. Because pull syntax you used _still_ merges with current branch. | 23:05 |
|
richcollins
| I thought the refspec syntax was src:dst | 23:06 |
|
| which dst is it referring to? | 23:06 |
|
wshimmy
| gitte: so i guess i would just see the merge drivers as "choose your poison...carefully" | 23:06 |
| ← static^ left | 23:06 |
|
Ilari
| richcollins: It is. pull passes the refspec down to fetch and then merges what was fetched into current branch. | 23:06 |
|
gitte
| wshimmy: heh, _much_ more carefully ;-) | 23:06 |
| ← doener left | 23:07 |
|
gitte
| wshimmy: same as presenting conflict markers in text files is way superior than just giving the user both versions of the file. | 23:07 |
|
wshimmy
| gitte: so it wouldn't allow for the automagic. but i would still think of it as a pretty big improvement | 23:07 |
| → bcardarella joined | 23:07 |
|
richcollins
| So the refspec refers to the remote but not the local? | 23:07 |
|
altrux
| i need architectural help. | 23:07 |
|
richcollins
| And the : syntax doesn't apply to fetch | 23:08 |
|
altrux
| i have a set of projects, which all share code. and i want to factor a large part of that shared code out | 23:08 |
|
gitte
| wshimmy: oh, but it could allow for automagic. Think .zip files: they can be merged easily if only timestamps differ. | 23:08 |
|
wshimmy
| gitte: but without parents you still don't know which one to take, or? | 23:08 |
|
altrux
| and put it i its own repo. the problem is it isn't in a single directory, its spread, willy, nilly, across a few directories, mixed into the other projects. i can not change this, due to the framework. | 23:08 |
|
Ilari
| richcollins: And push and fetch interpret refspec 'master' quite differently. | 23:08 |
|
wshimmy
| gitte: er, a mutual ancestor | 23:08 |
|
gitte
| wshimmy: I know what you meant. | 23:09 |
|
richcollins
| Ilari: shocking | 23:09 |
|
| ok I think I've got it ... thanks for your help | 23:09 |
| ← jayallen left | 23:09 |
|
gitte
| wshimmy: without merge base, you do have to assume that the common ancestor is empty. | 23:09 |
| ← MisterN left | 23:09 |
|
altrux
| is there a way to have submodules, or some such, cover just some files, and not any others, and have the main project ignore those files, without creating some crazy ..gitignore of specific files and such? | 23:09 |
| → drdave joined | 23:09 |
|
Ilari
| richcollins: While push copies src to dest if there is no RHS, fetch fetches to FETCH_HEAD if there is no RHS. | 23:10 |
|
gitte
| wshimmy: so that the parts that are common between both versions of the file are recognized as identical changes, and therefore unambiguous. | 23:10 |
|
| wshimmy: only that this might be very difficult with binary files. | 23:10 |
|
| wshimmy: for example, if you want to merge bitmap images, a naive way would be to merge pixel-wise. | 23:10 |
| → aspotashev|eeepc joined | 23:11 |
| ← jayallen_ left | 23:11 |
|
drdave
| Hi, I am trying to display the previous revision of a particular file: | 23:12 |
|
| using the | 23:12 |
|
| git show HEAD~1:relativePath syntax | 23:12 |
| ← bcardarella left | 23:13 |
| → context joined | 23:13 |
|
drdave
| The problem is if I commit a different file - then HEAD~1 is no longer the previous revision | 23:13 |
|
Ilari
| Simple bitmap merge algorithm: Given bitmaps A and B with ancestor C, compute pixel-channel-wise: X = C + (A - C) + (B - C). :-) | 23:13 |
|
drdave
| I need to use HEAD~2 | 23:13 |
|
Ilari
| drdave: Then HEAD~2:path'? | 23:14 |
|
drdave
| how do I get the previous revision of a given file? | 23:14 |
|
gitte
| wshimmy: anyway, time to get some sleep. Thanks for the interesting conversation! | 23:14 |
| ← gitte left | 23:14 |
| → drudge joined | 23:14 |
|
drdave
| The nly way I can think of doing it at the moment is getting the log and moving down a couple of lines and extracting the hash... | 23:15 |
|
| Must be an easier way? | 23:15 |
|
| And faster :) | 23:15 |
| → _swien_ joined | 23:15 |
|
_swien_
| hi | 23:16 |
| ← aspotashev left | 23:16 |
|
Ilari
| drdave: The syntax of ':' operator is '<committsh>:<path-to-file>'. HEAD~2 is valid committish assuming 1st-parent of 1st-parent of current commit exists. | 23:16 |
| ← SRabbelier left | 23:16 |
|
drdave
| I can't use HEAD~2:path - as all I want is the previous text - and I don;t know how many other files have been changed. | 23:17 |
| ← solydzajs left | 23:17 |
|
Ilari
| drdave: '`git rev-list -1 HEAD -- file'^:file' or something like that? | 23:18 |
|
drdave
| AFAIK - the integer in HEAD~2 refers to the was the file was 2 commits ago - but 2 commits for any change / file | 23:18 |
| ← j416 left | 23:18 |
|
drdave
| I want 2 commits for that particular file | 23:18 |
|
| Wow.... that one is new / makes no sense at all to me :) | 23:19 |
| ← fooljay_ left | 23:19 |
|
drdave
| I'll take a look at "rev-list" | 23:20 |
|
| Can you translate? | 23:20 |
|
| especially the last bit - -- file'^:file' | 23:20 |
|
Ilari
| drdave: `` is shell substitution operator. Shell runs the command inside and pastes its stdout over it and then runs the whole command. | 23:20 |
|
drdave
| k | 23:21 |
|
Ilari
| drdave: And that first one had one ' where there should have been ` | 23:21 |
|
drdave
| I'm going to need to pass an actual path somewhere - can you give us an example with a path in it? | 23:22 |
|
Ilari
| drdave: For instance 'echo foo`echo bar`baz' prints 'foobarbaz'. | 23:22 |
| ← matthewmcculloug left | 23:23 |
| ← agile left | 23:24 |
|
Ilari
| drdave: git show `git rev-list -1 HEAD -- builtin-mv.c`^:builtin-mv.c | 23:24 |
|
drdave
| thanks.... will wrap my head round it :) Not quite got logic of shell substitution operator yet :) | 23:25 |
|
Ilari
| drdave: There's also another substitution operator: '$()'. That one can also be nested (and presumably has some other differences as well). | 23:25 |
|
drdave
| k | 23:26 |
| ← wshimmy left | 23:26 |
|
drdave
| How would git show `git rev-list -1 HEAD -- builtin-mv.c`^:builtin-mv.c be written long hand then | 23:26 |
| → solydzajs joined | 23:26 |
| ← dodo_the_last left | 23:27 |
|
Ilari
| Quite useful to have nested substitutions when playing with commit-tree... | 23:27 |
|
drdave
| true | 23:27 |
| → wshimmy joined | 23:27 |
|
drdave
| ah... think I'm getting it - its a sort of merge | 23:27 |
| ← joshthecoder left | 23:28 |
|
wshimmy
| arg | 23:28 |
|
Ilari
| drdave: On my git.git copy (bit out of date), the rev-list resolves to 5aed3c6ab834367292bd7a9b0894177a07afd910, so the shell runs 'git show 5aed3c6ab834367292bd7a9b0894177a07afd910^:builtin-mv.c', which is equivalent to 'git show c8ba6b1b199bf00f227e8fdad4adb5a2147c8160:builtin-mv.c', which resolves to 'git show bce9959293e30925c4b16c40ac33a3f2e0474e30' | 23:29 |
|
Gitbot
| [git 5aed3c6ab]: http://tinyurl.com/q8ac93 -- builtin-mv.c: check for unversionned files before looking at the destination. | 23:29 |
|
drdave
| everything between `xxxxxx` gets run and subsitituted - then the outer shell command is run - something like that ? | 23:29 |
| ← fridim_ left | 23:29 |
|
Ilari
| drdave: Yes. | 23:29 |
|
drdave
| Great | 23:29 |
| ← moonflux left | 23:30 |
|
drdave
| thanks a bundle | 23:30 |
| → joshthecoder joined | 23:30 |
| ← altrux left | 23:32 |
| ← _swien_ left | 23:34 |
| → keystr0k joined | 23:35 |
|
keystr0k
| Git doesn't track empty directories (or so I've read). Does this mean it won't delete them if I go back to an earlier commit that doesn't have them? | 23:36 |
|
mugwump
| no, it doesn't mean that | 23:37 |
| → Fullmoon joined | 23:38 |
| ← mithro left | 23:39 |
|
keystr0k
| mugwump: darn. | 23:39 |
|
mugwump
| it won't delete them if there is content which is not tracked there though | 23:39 |
|
| ie, it removes files it put there. if there is nothing left in a directory, the directory is removed | 23:40 |
| → cpg joined | 23:40 |
| → shame joined | 23:40 |
| shame → agile | 23:40 |
|
keystr0k
| mugwump: so that kinda stinks... My web app has a bunch of empty folders that *might* be needed sometime... and I want to preserve them. So I have to add a hidden file to each or something? | 23:40 |
| → eross joined | 23:40 |
| → shruggar joined | 23:40 |
|
mugwump
| yes, eg .gitignore | 23:41 |
|
keystr0k
| mugwump: mmkay. thanks | 23:41 |
|
eross
| I'm used to the debian apt-get, what is git? | 23:42 |
| → SRabbelier joined | 23:42 |
|
cxreg
| "I'm used to food, what is gasoline?" | 23:43 |
|
mugwump
| eross: git-core | 23:43 |
|
| see also apt-cache rdepends git-core | 23:43 |
|
eross
| git-core is already built-in? | 23:43 |
| ← SRabbelier left | 23:44 |
|
mugwump
| it's already packaged for debian, yes | 23:44 |
|
| if you're on debian stable then try the versions on backports.org | 23:44 |
|
eross
| ok just one thing i read touted in a linux journal about the latest thing | 23:44 |
| → SRabbelier joined | 23:44 |
| → Voight-Kampff joined | 23:46 |
| ← eross left | 23:47 |
| ← hoohah left | 23:48 |
| ← Alinermedia left | 23:48 |
| ← plasticine left | 23:49 |
| → cytrinox joined | 23:50 |
| the_zeno → zeno^n8 | 23:51 |
| → plasticine joined | 23:51 |
| → mike_m joined | 23:51 |
| ← mitkok left | 23:52 |
| ← richcollins left | 23:53 |
| ← Fullmoon left | 23:54 |
| → cytrinox_ joined | 23:56 |