| 2008-08-11 |
| ← chuckr left | 00:01 |
| → carrus85 joined | 00:05 |
| ← rmh3093 left | 00:05 |
| ← bts- left | 00:06 |
| → rmh3093 joined | 00:07 |
| ← sgrimm left | 00:12 |
|
Mikachu
| i haven't watched this yet but http://free-electrons.com/pub/video/2008/ols/ols2008-james-bottomley-git.ogg | 00:13 |
|
j_engelh
| Bottomley is very good at explaining things | 00:14 |
|
| I still have his FreedomHEC2007 presentation | 00:15 |
|
| "Practical Introduction to quilt and git" | 00:15 |
| ← mtodd_ left | 00:16 |
|
Mikachu
| yeah i have seen that one | 00:17 |
|
bremner
| j_engelh: is it about using them together? | 00:19 |
|
j_engelh
| no I do not think so. (Even if it were, you should be using stgit.) | 00:20 |
| ← BarryCarlyon left | 00:21 |
|
bremner
| j_engelh: yeah, I'm not too sure yet. I didn't get a smooth workflow (debian packaging). But maybe I should give it another try. | 00:22 |
|
| ^it=stgit | 00:22 |
|
j_engelh
| no premade packages? | 00:22 |
|
bremner
| j_engelh: no I mean, I was messing with stgit to make debian packages | 00:23 |
| ← perezd88 left | 00:25 |
| → doener_ joined | 00:29 |
| → ricky_ joined | 00:32 |
| ← ricky left | 00:32 |
| ricky_ → ricky | 00:32 |
|
Mikachu
| i don't know where he gets his numbers from though | 00:33 |
|
| he claims linux-2.6.git is 2GB fully packed, which is an order of magnitude too much :) | 00:33 |
| ← dragonball_ left | 00:34 |
| ← ereslibre left | 00:35 |
| ← swtaarrs left | 00:40 |
| foca → foca|postre | 00:41 |
| ← doener left | 00:41 |
| → ereslibre joined | 00:42 |
| → tswicegood joined | 00:47 |
| → _eric joined | 00:47 |
| ← NemesisD left | 00:48 |
| → igorgue joined | 00:48 |
| ← rmh3093 left | 00:50 |
|
_eric
| how would I find the latest revision that a file existing in? | 00:50 |
|
| (assuming I had rm'd it) | 00:50 |
|
johnw
| i'd git log --stat | less and search for the filename | 00:51 |
|
_eric
| heh | 00:51 |
|
Mikachu
| you can git log -- thefile | 00:53 |
|
| if it doesn't work, try adding --diff-filter=D before the -- | 00:53 |
|
_eric
| neat | 00:53 |
| → offby1 joined | 00:54 |
| ← Oompa left | 00:56 |
| ← kukks left | 00:56 |
|
johnw
| ooh, I like diff-filter | 00:57 |
| → rmh3093 joined | 00:59 |
| ← juliano left | 01:00 |
| → pvh joined | 01:01 |
| → Oompa joined | 01:01 |
| ← Gitzilla left | 01:01 |
| → offby1` joined | 01:02 |
| ← offby1 left | 01:03 |
| offby1` → offby1 | 01:03 |
| → offby1` joined | 01:06 |
| ← rmh3093 left | 01:06 |
| ← zawir left | 01:07 |
| foca|postre → foca | 01:08 |
| → rmh3093 joined | 01:09 |
| → Gitzilla joined | 01:09 |
| → offby1`` joined | 01:09 |
| ← offby1`` left | 01:09 |
| ← markkalderon left | 01:10 |
| → Oompa_ joined | 01:10 |
| ← tswicegood left | 01:10 |
| ← pvh left | 01:10 |
|
johnw
| i'm trying to figure out external diff helpers | 01:11 |
| → pvh joined | 01:11 |
|
johnw
| I have a [diff "araxis"] cmd = ... in my .gitconfig, and in .gitattributes I have "* diff=araxis", and I'm using git diff --ext-diff FILE, but still it uses the normal internal diff | 01:11 |
|
| what piece am I missing? | 01:11 |
| foca → foca|sebazzzgae | 01:13 |
| foca|sebazzzgae → foca | 01:13 |
| ← Oompa left | 01:13 |
| Oompa_ → Oompa | 01:13 |
| → swtaarrs joined | 01:13 |
| → giom joined | 01:16 |
| ← ramontayag left | 01:17 |
| → mw joined | 01:17 |
| ← hpa left | 01:18 |
| → supercali joined | 01:18 |
| → ramontayag__ joined | 01:20 |
| ramontayag__ → ramontayag | 01:20 |
| ← offby1 left | 01:21 |
| ← Ademan left | 01:23 |
| ← offby1` left | 01:24 |
| → david_koontz joined | 01:24 |
| → k4r1m joined | 01:27 |
| ← jackdempsey left | 01:28 |
| → ereslibre_laptop joined | 01:29 |
| → perezd88 joined | 01:30 |
| ← ereslibre left | 01:31 |
| ← kanru left | 01:32 |
| → bongiojp joined | 01:33 |
| → fhobia joined | 01:37 |
| → patroy joined | 01:39 |
|
patroy
| Hi, how can you display what remote branch a local branch is tracking? | 01:39 |
|
cbreak
| maybe it's somewhere in git config -l | 01:40 |
|
Rhonda
| patroy: cat .git/config *ducks* :) | 01:41 |
| → jackdempsey joined | 01:42 |
|
cbreak
| why does git use human readable config files instead of xml? | 01:42 |
|
| I thought human readable is out of fashion | 01:42 |
|
Mikachu
| probably because linus kills anyone in the same room who ever used xml | 01:42 |
| → advany joined | 01:42 |
|
Rhonda
| xml does require much more for parsing for the tools, too. | 01:42 |
|
patroy
| thx | 01:42 |
|
Rhonda
| It's neither human readable nor really helpful ressource wise. | 01:43 |
| ← swtaarrs left | 01:44 |
| → Modius joined | 01:44 |
|
Mikachu
| "Yeah, I know. I love the config file format (quite frankly, anybody who thinks XML and friends are sane is a total moron and should be shot before they reproduce), but the whole parsing code was a really quick hack. " | 01:45 |
| ← lll_ left | 01:45 |
|
Rhonda
| Like I said. ;) | 01:46 |
|
| ... or you, right. | 01:47 |
| → pvh_ joined | 01:48 |
| ← pvh left | 01:48 |
| ← aroben left | 01:48 |
| ← codeshot left | 01:52 |
| ← ereslibre_laptop left | 01:54 |
| ← flaguy left | 01:55 |
| ← pvh_ left | 01:57 |
| → pvh joined | 01:57 |
| ← patroy left | 01:57 |
| → dragonball_ joined | 01:59 |
| → kukks joined | 02:00 |
| ← perezd88 left | 02:07 |
| → kanru joined | 02:07 |
| ← giom left | 02:09 |
| ← david_koontz left | 02:09 |
| → NemesisD joined | 02:09 |
| → david_koontz joined | 02:10 |
| → giom joined | 02:10 |
| ← NemesisD left | 02:13 |
| → perezd88 joined | 02:14 |
| → garrin joined | 02:14 |
| → nikbin joined | 02:15 |
| ← nikbin left | 02:15 |
| ← advany left | 02:15 |
| → cilly joined | 02:16 |
| ← mw left | 02:18 |
| ← cbreak left | 02:18 |
| ← pjhyett_ left | 02:22 |
| → krawek joined | 02:23 |
| → david_koontz_ joined | 02:23 |
| → spearce joined | 02:26 |
| ← dragonball_ left | 02:28 |
| → crab joined | 02:31 |
| → chrisb joined | 02:33 |
| → arun joined | 02:35 |
|
johnw
| in several ways, XML feels like the Java of data formats | 02:40 |
|
crab
| bright, happy, and beautiful? | 02:40 |
| DrNick2 → DrNick | 02:40 |
|
johnw
| haha | 02:40 |
| ← david_koontz left | 02:40 |
|
johnw
| exactly | 02:40 |
| ← pvh left | 02:45 |
| → pvh joined | 02:45 |
| → ggapol joined | 02:48 |
| → tswicegood joined | 02:50 |
| → imyousuf joined | 02:53 |
| ← imyousuf left | 02:53 |
| → LostInTheWorld joined | 02:53 |
| → david_koontz joined | 02:58 |
| → morii_ joined | 02:58 |
| ← Doska left | 03:01 |
| → pvh_ joined | 03:02 |
| ← pvh_ left | 03:02 |
| ← pvh left | 03:03 |
| → astubbs joined | 03:06 |
| ← LiamH left | 03:07 |
| ← morii left | 03:10 |
| morii_ → morii | 03:10 |
| ← thannoy left | 03:10 |
| ← david_koontz_ left | 03:13 |
| ← lea_w left | 03:15 |
| ← david_koontz left | 03:19 |
| ← perezd88 left | 03:20 |
| ← carrus85 left | 03:21 |
| ← igorgue left | 03:24 |
|
spearce
| arrrgh. i _hate_ debugging transport related code. | 03:27 |
|
| quickfetch always screws me up. | 03:27 |
| ← giom left | 03:29 |
| → igorgue joined | 03:30 |
| → aroben joined | 03:33 |
| ← LostInTheWorld left | 03:36 |
| ← vbgunz_ left | 03:36 |
| → bcarlyon|laptop joined | 03:38 |
| ← pifel left | 03:39 |
| → cskaterun joined | 03:43 |
| ← bcarlyon|laptop left | 03:43 |
| ← cskaterun left | 03:43 |
| → bcarlyon|laptop joined | 03:44 |
| ← tlyng left | 03:46 |
| ← kukks left | 03:46 |
| → spearce` joined | 03:48 |
| ← spearce left | 03:48 |
| ← sofar left | 03:49 |
| ← spearce` left | 03:50 |
| → LostInTheWorld joined | 03:51 |
| → spearce joined | 03:51 |
| ← spearce left | 03:52 |
| → spearce joined | 03:52 |
| ← spearce left | 03:52 |
| → spearce joined | 03:52 |
| ← aroben left | 03:54 |
| → pygi joined | 03:55 |
| → makeworkeasy joined | 03:56 |
| ← kenpratt left | 04:00 |
| ← madewokherd left | 04:04 |
| ← tswicegood left | 04:05 |
| ← cilly left | 04:09 |
| → cilly joined | 04:10 |
| → carrus85 joined | 04:11 |
| → flask- joined | 04:12 |
| → jlilly joined | 04:12 |
|
flask-
| Okay, question: I've got a repository that contains the base functionality of a web CMS I've built. I forked a branch for a new site I'm developing. I've made a series of commits to that branch, representing some site-specific development but also some changes to the core functionality. I want to get the core functionality changes back into master, leaving out the changes to site-specific files. Whats the best course of action? | 04:21 |
|
jlilly
| flask-: I would imagine you would use 'chunks' to pick which bits stay and which bits go. | 04:22 |
|
flask-
| okay, where can I learn more about 'chunks' ? | 04:22 |
|
jlilly
| ... which, iirc, is commiting interactively. | 04:22 |
|
flask-
| would that be --rebase interactive ? | 04:23 |
|
jlilly
| I don't think its rebase... as that would revert things iirc. | 04:23 |
|
| I've only done it a few times and my mind is really clouded with HG at the moment. | 04:23 |
|
| sorry :-/ | 04:24 |
|
flask-
| ;) | 04:25 |
|
spearce
| flask-: are the commits isolated to "stuff for core" and "stuff for site"? | 04:25 |
|
| can you just cherry-pick the core commits onto the master branch? | 04:26 |
| ← tjafk1 left | 04:26 |
| → tjafk1 joined | 04:26 |
|
flask-
| no, the commits are mixed | 04:27 |
|
spearce
| fun. are the changes isolated to "site specific" and "core" files at least? | 04:30 |
|
flask-
| yeah | 04:34 |
|
spearce
| so assuming you have master checked out: | 04:34 |
|
| for each commit you want to cherry-pick: | 04:34 |
|
| git cherry-pick --no-commit $commit_sha1 | 04:35 |
|
| git status | 04:35 |
|
| git checkout HEAD -- $site_specific_paths | 04:35 |
|
| git commit -c $commit_sha1 -e | 04:35 |
| → mario_ joined | 04:35 |
| ← pygi left | 04:35 |
|
spearce
| basically what i am suggesting is to go through the changes one by one, apply them with cherry-pick, then back out the site specific files you don't want. | 04:36 |
|
flask-
| i don't recognize the syntax on the 'git checkout HEAD' command | 04:36 |
|
| in fact I never quite figured out the whole "HEAD" thing | 04:36 |
|
spearce
| you may need to use git rm at the same time as git checkout to clear newly added site specific files. | 04:36 |
|
| so go read the manpage for git checkout. | 04:37 |
|
| but the summary of that command is "copy from commit HEAD paths $site_specific_paths into the index and the working directory" | 04:37 |
|
| now HEAD is just an alias for the last commit on the current branch. | 04:37 |
| → alenoosh joined | 04:37 |
|
spearce
| so you are effectively copying the last committed state for a given file path back into the index and working directory, overwriting anything cherry-pick may have done. | 04:38 |
|
flask-
| and $site_specific_paths is just a space-delimited set of paths to site-specific files? | 04:38 |
|
spearce
| yes | 04:38 |
|
flask-
| is there a way to set that variable in .gitconfig so that i don't have to enumerate it manually each time? | 04:39 |
|
spearce
| or directories, it operates recursively on a directory if you give it a directory | 04:39 |
|
| no | 04:39 |
|
| what you are trying to do here is not something git can magically figure out for you. | 04:39 |
|
flask-
| it's not magic if it's the same files each time | 04:40 |
|
spearce
| oh, then just store them in a shell variable and use that as the argument to git checkout | 04:40 |
|
| passing a file which isn't modified won't cause any errors | 04:40 |
|
| but passing a "core" file path would be a bad idea, as the core change would be lost | 04:41 |
|
flask-
| why would it be lost? passing it would be including it in the commit, right? | 04:41 |
|
| oh, n/m | 04:42 |
|
| the "--" is for exclusion | 04:42 |
|
spearce
| uhm, no. but good thought. | 04:42 |
|
flask-
| erm ok... | 04:43 |
|
| *lost* | 04:43 |
| → lenards joined | 04:43 |
|
flask-
| you had me until "passing a 'core' file path would be a bad idea" | 04:43 |
|
lenards
| question - how do you remove a remote branch? Is this github link wrong: http://github.com/guides/remove-a-remote-branch | 04:44 |
|
spearce
| lenards: that link is actually correct | 04:44 |
| ← rmh3093 left | 04:44 |
|
spearce
| flask-: in the loop i showed you we are using git checkout HEAD -- $site_path to toss away any changes made to $site_path by the commit we had previously cherry-picked. | 04:45 |
| mario_ → pygi | 04:45 |
|
flask-
| OHHHHH | 04:45 |
|
spearce
| since the point of this is to keep the changes made to a core path, passing a core path to git checkout would toss the changes, and uh, isn't what you wanted here, yes? | 04:45 |
|
lenards
| spearce: I don't understand why it works... why would `git push` be how you remove a remote branch? | 04:45 |
|
flask-
| spearce: okay so lets say the current state of my topic branch is the result of 10 commits. do I need to cherry-pick in every commit? | 04:46 |
|
spearce
| lenards: git push is the only command that can make changes to a remote repository. it can create branches, update branches, and it was overloaded to delete branches, since its the only outgoing communication command. | 04:46 |
| → rmh3093 joined | 04:46 |
|
spearce
| flask-: yes, and in reverse order. meaning the order shown by `git log --reverse master..topic` | 04:47 |
| ← makeworkeasy left | 04:47 |
|
flask-
| Ouch | 04:47 |
|
pygi
| spearce, greetings | 04:47 |
|
spearce
| hi pygi | 04:47 |
|
lenards
| spearce: thank you... okay - but the syntax shown looks like the same way I'd push changes to that remote branch | 04:47 |
| ← foca left | 04:47 |
|
spearce
| flask-: you can try to automate this, if it is always the same paths: | 04:48 |
| ← pygi left | 04:48 |
| → pygi joined | 04:48 |
|
flask-
| spearce: okay, so indulge me a moment if you would. Knowing what I want to accomplish, if I were to start over, is there a workflow you can see that makes more sense? | 04:48 |
|
spearce
| for c in $(git rev-list --reverse master..topic); do git cherry-pick --no-commit $c && git checkout HEAD -- $site_paths && git commit -c $c; done | 04:48 |
|
| but i'd do that on a temporary branch (git checkout -b tmp master) just in case it screws up badly. :) | 04:48 |
|
| so moral of the story here is don't make core changes intermixed with topic branch specific changes. | 04:49 |
|
| make the core branch changes on the core branch, and the site specific changes on a site specific topic branch. | 04:49 |
|
Mikachu
| || break; done if you want to be neat :) | 04:49 |
|
spearce
| use git rebase on the topic branch to update it with the latest-and-greatest from the core/master branch. | 04:49 |
|
| lenards: if you look carefully at the syntax the source side of the argument is empty (the stuff before the :). we are technically pushing _nothing_ to the remote branch to cause its deletion. | 04:50 |
|
flask-
| spearce: okay that does make sense | 04:51 |
|
lenards
| spearce: hmmm... okay so if I was pushing to a remote branch to update it... how would it look? `git push origin localbranch:remotebranch` ? | 04:51 |
|
spearce
| lenards: correct | 04:52 |
|
| and its common for localbranch and remotebranch to be the same name, so "git push origin A" is an shorthand for "git push origin A:A" | 04:52 |
|
lenards
| spearce: excellent - thank you | 04:52 |
| ← chrisb left | 05:04 |
| ← spearce left | 05:05 |
| ← krawek left | 05:05 |
| ← jackdempsey left | 05:05 |
| ← johnw left | 05:07 |
| → imyousuf joined | 05:07 |
| ← jerbear left | 05:10 |
| → digitalhobbit joined | 05:14 |
|
hacim
| ~. | 05:14 |
| → ismell joined | 05:17 |
| → DavidBoman joined | 05:20 |
| → cedricv joined | 05:26 |
| ← LostInTheWorld left | 05:26 |
| → x77686d joined | 05:29 |
| ← rmh3093 left | 05:31 |
| → rmh3093 joined | 05:34 |
|
godlygeek
| how do you show what branches exist in a remote repository that you just cloned? | 05:35 |
| → ph^ joined | 05:35 |
|
godlygeek
| ooh, nevermind - "git branch -r" does that. | 05:38 |
| ← Boman left | 05:38 |
| fargiolas|afk → fargiolas | 05:40 |
| ← xenoterracide left | 05:41 |
| → DrFrasierCrane joined | 05:43 |
| ← ramontayag left | 05:50 |
|
astubbs
| godlygeek, -a is also usefull | 05:50 |
|
| also gitk --all | 05:50 |
| → ramontayag__ joined | 05:54 |
| ramontayag__ → ramontayag | 05:54 |
| → vbgunz joined | 05:56 |
| → LostInTheWorld joined | 05:58 |
| → xenoterracide joined | 06:04 |
| ← Oompa left | 06:06 |
| ← rmh3093 left | 06:08 |
| ← DrFrasierCrane left | 06:08 |
|
lenards
| is there a way to get a post-pull hook? | 06:08 |
|
| I know there isn't one in .git/hooks | 06:09 |
| ← mithro left | 06:11 |
| → ehc joined | 06:13 |
| → mithro joined | 06:13 |
| ← parasti left | 06:13 |
| ← ehc left | 06:16 |
| → kixxx joined | 06:16 |
| ← lenards left | 06:16 |
| ← kixxx left | 06:17 |
| → ehc joined | 06:17 |
| → DrFrasierCrane joined | 06:20 |
| → charon joined | 06:20 |
| → kixx joined | 06:23 |
| → ramontayag__ joined | 06:23 |
| ← carrus85 left | 06:28 |
| → drizzd joined | 06:28 |
| → rmh3093 joined | 06:29 |
| ← x77686d left | 06:33 |
| ← DrFrasierCrane left | 06:37 |
| ← bobesponja left | 06:39 |
| ← ramontayag left | 06:39 |
| → reel_ joined | 06:39 |
| ← ciaran left | 06:40 |
| ← drizzd_ left | 06:40 |
| ← charon left | 06:44 |
| ← igorgue left | 06:47 |
| ← bdiego left | 06:53 |
| → Eludias joined | 06:55 |
| ← normalperson left | 06:56 |
| → danten joined | 06:56 |
| ← Fullmoon left | 07:03 |
| ← fhobia left | 07:03 |
| → Fullmoon joined | 07:03 |
| → ben_h_ joined | 07:06 |
| ← digitalhobbit left | 07:06 |
| → normalperson joined | 07:07 |
| → rraasch joined | 07:07 |
| ← k4r1m left | 07:07 |
| → charon joined | 07:10 |
| ← bugfux left | 07:11 |
| → lea_w joined | 07:15 |
| → diask joined | 07:16 |
| ← towski left | 07:17 |
| metze_away → metze | 07:19 |
| ← EgS left | 07:19 |
| ← Sput left | 07:19 |
| → EgS joined | 07:19 |
| ← pdherbemont left | 07:20 |
| ← bcarlyon|laptop left | 07:20 |
| ← kixx left | 07:21 |
| → jackdempsey joined | 07:22 |
| ← skrit left | 07:22 |
| → towski joined | 07:24 |
| → _kid_ joined | 07:25 |
| → Marmouset joined | 07:27 |
| → lhunath joined | 07:28 |
|
lhunath
| is there a way to see the branches layout as shown by gitk and others in the console? | 07:29 |
|
| I've no X server running on the box. | 07:29 |
|
tango_
| lhunath, git-forest http://dev.computergmbh.de/gitweb.cgi?p=hxtools;a=blob_plain;f=bin/git-forest | 07:30 |
| → kenpratt joined | 07:30 |
|
lhunath
| tango_: lovely. | 07:31 |
|
tango_
| lhunath, you're lucky, I just came across this yesterday. I haven't tried it either, so let me know if it works 8-) | 07:32 |
|
lhunath
| Heh. | 07:32 |
|
| will do. | 07:32 |
|
charon
| lhunath: also git log --graph | 07:32 |
| ← Fullmoon left | 07:32 |
|
lhunath
| charon: interesting. | 07:33 |
|
charon
| (in 1.5.6-rc2 afaics) | 07:33 |
|
| ah, even 1.5.6-rc0. | 07:34 |
| → bartocc joined | 07:37 |
| ← Pupeno-G left | 07:40 |
| ← towski left | 07:40 |
| → Fullmoon joined | 07:42 |
| → shadowfax joined | 07:42 |
| dwmw2_gone → dwmw2 | 07:44 |
| → evan_ joined | 07:44 |
| → BabelO joined | 07:44 |
| ← kenpratt left | 07:45 |
| ← lhunath left | 07:47 |
| → giom joined | 07:49 |
| ← Signum left | 07:50 |
| → deavid joined | 07:55 |
| ← reel_ left | 07:55 |
| → jmesnil joined | 07:56 |
| ← sverrej left | 07:58 |
| ← ehc left | 08:01 |
| ← LostInTheWorld left | 08:01 |
| → ereslibre joined | 08:02 |
| → towski joined | 08:04 |
| ← ereslibre left | 08:04 |
| → thiago joined | 08:07 |
| ← supercali left | 08:10 |
| → statim_ joined | 08:16 |
| ← statim left | 08:16 |
| ← Fullmoon left | 08:16 |
| ← priidu left | 08:17 |
| → dstuxo joined | 08:20 |
| → priidu joined | 08:22 |
| ← pygi left | 08:26 |
| ← alenoosh left | 08:26 |
| → alenoosh joined | 08:27 |
| → ciaran29d joined | 08:28 |
| ← shadowfax left | 08:30 |
| ← jackdempsey left | 08:30 |
| → ereslibre joined | 08:33 |
| ← towski left | 08:35 |
| → pygi joined | 08:37 |
|
Araneidae
| I'm confused. I was tracking the head of a repository, but now I don't know where I am anymore. I'm not on a branch, and I don't know how to get back! I have no branches... | 08:38 |
|
| Araneidae still hasn't grasped some basics | 08:38 |
|
doener_
| "git branch" shows what? | 08:38 |
|
Araneidae
| Just says "* (no branch)" | 08:38 |
|
doener_
| nothing else? | 08:38 |
|
Araneidae
| That's it | 08:39 |
|
doener_
| heh, seems you dropped your local branches | 08:39 |
|
| and "git branch -r" | 08:39 |
|
Araneidae
| origin/HEAD, master, stable | 08:39 |
|
| I guess I want one of those... | 08:39 |
|
doener_
| did you have any local commits? | 08:39 |
|
Araneidae
| No | 08:39 |
|
| Long merged | 08:39 |
|
doener_
| that's origin/HEAD, origin/master and origin/stable, right? | 08:40 |
|
| ie. all have the origin/ prefix | 08:40 |
|
Araneidae
| Yes, I was being a ilittle lazy | 08:40 |
| ← Marmouset left | 08:40 |
|
doener_
| ok, then just "git checkout -b master origin/master" to recreate a local branch called "master" that starts off from "origin/master" | 08:40 |
|
| (and to check it out at the same time) | 08:41 |
|
Araneidae
| Cheers. `git status` now tells me about three files that are untracked. I guess I need one of the extra checkout flags to lose those | 08:41 |
|
| (They're files I've never touched) | 08:42 |
|
doener_
| no, you need "git clean" to get rid of untracked files | 08:42 |
|
charon
| are junio's topic branches available somewhere? | 08:42 |
|
| i.e. the branch heads, i have the commits. | 08:42 |
|
Araneidae
| doener_, thanks very much. | 08:43 |
|
doener_
| no | 08:43 |
|
| problem | 08:43 |
|
| oops :-) | 08:43 |
| → resmo joined | 08:44 |
|
Araneidae
| How do I tell git to remove a large block of files? I can use `git add .` to add files, but `git rm` needs to be told which files to remove. I've ended up in the past processing the output from `git status` to figure out what to pass to `git rm` which doesn't seem right. | 08:45 |
|
doener_
| "git add -u" updates all tracked files in the index | 08:45 |
|
| so if you deleted a tracked file in the working tree, "git add -u" will delete it in the index | 08:46 |
|
Araneidae
| Oh | 08:46 |
|
| I didn't understand that from the man page. | 08:46 |
|
| That's exactly what I want! | 08:46 |
|
| Have to say the man page doesn't say that at all | 08:47 |
|
doener_
| Araneidae: hm, what's unclear about "Update only files that git already knows about, ... and marking deleted files for removal"? | 08:47 |
|
Araneidae
| Hmm. My copy doesn't have the last half of that. | 08:48 |
|
| git version 1.5.4.3 | 08:48 |
|
doener_
| it's in there since 1.5.4.6 | 08:48 |
|
| Araneidae evidently needs to update | 08:48 |
|
doener_
| that's true anyway, we're almost at 1.6.0 ;-) | 08:49 |
|
Araneidae
| I'm running the Ubuntu distribution here, guess I could usefully build a local copy. | 08:49 |
| ← dstuxo left | 08:50 |
| ciaran29d → ciaran | 08:50 |
|
doener_
| Araneidae: yeah, not such a bad idea. or maybe the package from backports.org, if Ubuntu likes those | 08:51 |
| → dstuxo joined | 08:51 |
|
Pieter
| 8~. | 08:51 |
|
doener_
| Araneidae: btw if you build from a git.git clone, use "make quick-install-doc", not "make install-doc", the latter takes ages | 08:51 |
| ← dstuxo left | 08:51 |
| → draco_ joined | 08:51 |
|
draco_
| hi | 08:52 |
|
| I'm adding my untracked files with git-add but then git-diff does not show them | 08:52 |
| → dstuxo joined | 08:52 |
|
Araneidae
| backports.org looks interesting | 08:52 |
| → shingara joined | 08:52 |
|
shingara
| Hi | 08:52 |
|
draco_
| what shuld I do to add files preperly? | 08:52 |
|
shingara
| I have a problem with git-svn | 08:52 |
|
Pieter
| git add file? | 08:52 |
|
doener_
| draco_: "git diff" shows the diff of the working tree against the index | 08:53 |
|
Pieter
| draco_: that's desired behaviour | 08:53 |
|
draco_
| Pieter, i'm doing that, and git-status shows that file as well | 08:53 |
|
shingara
| git-svn want commit my master update in a tags and not in a trunk | 08:53 |
|
Pieter
| try git diff HEAD or git diff --cached | 08:53 |
|
doener_
| draco_: "git add" already added the file to the index, so you want a diff of the index against HEAD | 08:53 |
|
shingara
| the branch remote/trunk exist and it's in good place | 08:53 |
|
draco_
| hmm | 08:53 |
|
| doener_, that worked | 08:53 |
|
| so HEAD is _real_ repo and index is mine? | 08:54 |
|
| I'm a little confused | 08:54 |
|
doener_
| HEAD is a (symbolic) ref pointing to the commit or branch that you have checked out | 08:54 |
|
| the index lies between your working tree and whatever you have checked out. | 08:55 |
|
draco_
| does git-pull changes index or my working tree ? | 08:55 |
|
doener_
| "git add" "stages" changes in the index, and on "git commit" the new commit in created from the contents of the index | 08:55 |
|
Araneidae
| Interesting: I have a regression. `git svn clone <url>` works just fine with 1.5.4.3 (my Ubuntu version), but fails miserably with 1.5.5 (built from source on RHEL) | 08:56 |
|
| (Two completely different machines being used here, on different networks.) | 08:56 |
|
doener_
| draco_: "git pull" is fetch+merge. The merge part of course affects your working tree and index | 08:56 |
|
charon
| Araneidae: why build 1.5.5 manually when there's 1.5.6.5 already? | 08:57 |
|
Araneidae
| Did that a few months ago | 08:57 |
|
| Araneidae has too many machines to deal with | 08:57 |
|
doener_
| Araneidae: IIRC the early 1.5.5 had some breakage from git-svn optimizations | 08:57 |
|
draco_
| thanks | 08:57 |
|
Araneidae
| Guess I'd better update that and see if a new build fixes it. Good to know it's a known issue | 08:58 |
|
doener_
| Araneidae: same is true for 1.5.6 and 1.5.6.1 | 08:58 |
|
Araneidae
| ahhh | 08:58 |
|
doener_
| but the only sane choice at the moment is 1.5.6.5 (or higher) anyway | 08:58 |
|
Araneidae
| right. I see why Ubuntu sticks with 1.5.4.3! | 08:59 |
|
doener_
| no, that's because the froze the versions of all programs in the release you're running at some point and that happened to pick 1.5.4.3 | 08:59 |
|
Araneidae
| Could be -- except they're constantly publishing updates to so many components | 09:00 |
|
| The Ubuntu update process really annoys me: wait a few weeks and it can be a couple of 100MB for an update! | 09:00 |
|
| Araneidae prefers the Debian stick in the mud approach | 09:01 |
|
doener_
| heh, with debian sid, you can wait a few days and have several 100mb of updates ;-) | 09:02 |
| ← evan_ left | 09:04 |
| ← lu_zero left | 09:04 |
| ← ramontayag__ left | 09:09 |
| → sverrej joined | 09:11 |
| ← draco_ left | 09:14 |
| → ramontayag__ joined | 09:15 |
| ramontayag__ → ramontayag | 09:15 |
| → chris2 joined | 09:22 |
| ← ramontayag left | 09:22 |
| → Boman joined | 09:23 |
| ← ben_h left | 09:24 |
| ← ben_h_ left | 09:24 |
| fargiolas → fargiolas|afk | 09:25 |
| ← dmiles_afk left | 09:26 |
| → ebel joined | 09:27 |
| → tvw joined | 09:28 |
| → MK_FG joined | 09:28 |
| → warthog9 joined | 09:29 |
| fargiolas|afk → fargiolas | 09:34 |
| → Zyroth joined | 09:35 |
| ← niv_ left | 09:35 |
| ← lea_w left | 09:35 |
| → shadowfax joined | 09:35 |
|
Zyroth
| If I run `$ git clone . ssh:// ...`it actually makes a new directory "ssh:" in my current repository with a clone in it... how but I obviously want to be the clone on a server... what am I doing wrong? | 09:36 |
| → abizern joined | 09:37 |
|
charon
| Zyroth: clone makes a local copy of a remote repository. 'man git-push' for the other direction | 09:37 |
| → bcarlyon|laptop joined | 09:37 |
|
Zyroth
| thanks! | 09:37 |
|
Magnus`
| does anyone know a way to find a commit which contain a given tree hash? | 09:39 |
| → reel_ joined | 09:39 |
| → ben_h joined | 09:40 |
| → ben_h_ joined | 09:40 |
|
charon
| Magnus`: git rev-list HEAD | while read commit; do git ls-tree $commit | grep -q <hash> && echo $commit; done | 09:41 |
|
| add 'break' if you're only interested in the first one, i guess | 09:41 |
|
| will also find blobs, not just trees | 09:42 |
|
Magnus`
| thanks, I can use something like that | 09:42 |
|
charon
| ah, damn, that's nonrecursive, let me see | 09:42 |
|
doener_
| maybe with --all instead of HEAD, if the tree is not known to be in your current branch | 09:43 |
|
charon
| yeah | 09:43 |
|
| also, make it 'git ls-tree -r -t ...' | 09:43 |
|
| that is recursive and still shows the 'tree' entries | 09:43 |
|
| aha, seems 'git ls-tree -r -d' shows only the trees, not the other entries. that might be faster. | 09:44 |
| ← shingara left | 09:44 |
|
Magnus`
| i am just interested in the tree of a specific path, so it's a bit simpler | 09:45 |
|
doener_
| if the tree is the toplevel one, this is faster: git rev-list --pretty=format:%T --all | grep -B1 $tree_hash | 09:45 |
|
Magnus`
| it's not the toplevel... | 09:45 |
| → icwiener joined | 09:46 |
| ← DavidBoman left | 09:48 |
| → DrFrasierCrane joined | 09:54 |
| → markkalderon joined | 09:57 |
| → DavidBoman joined | 09:59 |
|
doener_
| Magnus`: do you know which pathname the tree belongs to? | 10:01 |
|
| Magnus`: anyway: git rev-list --all | git diff-tree -t --stdin | grep '^\([^:]\|:04\)' | 10:02 |
|
| Magnus`: that lists all commits along with the tree changes that happened in those commits | 10:03 |
|
| you can add, for example, " -- somedir" to the rev-list command to limit the output to commits that had changes in "somedir" | 10:04 |
|
| and it's reasonably fast. About 1.5s to list all tree changes from git.git | 10:05 |
|
| ehrm, 5s. 1.5s was for Documentation/ only | 10:07 |
|
| for comparison, the shell scripting loop took 2m34s ;-) | 10:09 |
|
charon
| diff-tree -t is a nice trick, i'll write that down somewhere | 10:10 |
| ← mithro left | 10:13 |
|
doener_
| oh, log just needs --raw to make -t work. | 10:14 |
| → tlyng joined | 10:14 |
|
doener_
| git log --raw -t --pretty=oneline | grep '^\([^:]\|:04\)' | 10:14 |
|
| that's even 20% faster. just a little less than 4s for the whole of git.git | 10:15 |
| fargiolas → fargiolas|afk | 10:15 |
| ← thiago left | 10:15 |
| ← alenoosh left | 10:16 |
|
doener_
| shows abbreviated tree hashes though, and I'm too lazy to look up how to get those in full. So I'll leave that as a lesson for the reader ;-) | 10:18 |
| → compubomb joined | 10:20 |
| ← MK_FG left | 10:21 |
|
compubomb
| how do you get started setting up a git:// once you have your git repo setup ? | 10:21 |
|
| i mean, what do you have to do to be able to use the git_url ? | 10:21 |
| ← Boman left | 10:21 |
|
doener_
| git-daemon | 10:21 |
| ← schlort left | 10:22 |
| → schlort joined | 10:25 |
| ← ebel left | 10:26 |
| → sbeyer joined | 10:27 |
|
| crab wonders wtf to say about the cherry-pick/rerere change. | 10:28 |
| ← ereslibre left | 10:30 |
| ← giom left | 10:30 |
|
pasky
| I like the commit message :) | 10:33 |
| → snitko joined | 10:34 |
| ← pygi left | 10:34 |
| → pygi joined | 10:34 |
| → mithro joined | 10:37 |
|
crab
| thanks. | 10:46 |
| ← markkalderon left | 10:48 |
| ← CodeOfficer left | 10:49 |
| → bartocc_ joined | 10:50 |
| ← chris2 left | 10:50 |
| → lea_w joined | 10:52 |
| → Sput joined | 10:58 |
| → wildfire joined | 10:58 |
|
wildfire
| hi | 10:58 |
|
| git commit is telling me I have 'some suspicious patch lines' | 10:58 |
|
| but those lines are okay, how can I force git commit to commit this stuff? | 10:59 |
| → cbreak joined | 10:59 |
|
doener_
| you probably enabled the pre-commit hook, which checks for whitespace noise | 11:00 |
| → thiago joined | 11:00 |
|
doener_
| either disable that hook, fix the whitespace noise, or use --no-verify (IIRC, check git-commit(1)) | 11:00 |
|
wildfire
| doener_, ahh - yes; thanks '-n' to git commit was it | 11:00 |
|
| doener_ would have fixed the whitespace breakage instead :-) | 11:01 |
|
cbreak
| a whitespace noise checker? excelent! | 11:01 |
|
| where? | 11:01 |
|
doener_
| .git/hooks/pre-commit | 11:01 |
|
| just chmod +x it | 11:01 |
| → jacobat joined | 11:01 |
|
doener_
| the example hook only contains the whitespace thing | 11:02 |
|
avu
| wildfire, using git on windows by any chance? | 11:02 |
|
doener_
| oh, maybe rename from pre-commit.sample to pre-commit, that was changed lately | 11:02 |
|
avu
| doener_, ah, very good. so the hooks won't be all executed by default on windows anymore | 11:02 |
|
doener_
| right | 11:03 |
| → hml joined | 11:03 |
|
doener_
| not sure if that's 1.6.0 stuff or already in 1.5.6.x | 11:03 |
|
hml
| maybe this question itself is wrong; i want to setup a git repo for the sole purpose of having data pushed to it on a 10 minute base; like a time stamp of a dir; anyone else doing this? I find that i often don't git commit often enough; and if i had this time stamped autocommit, it may help me | 11:04 |
|
wildfire
| doener_, these are sample input data --- I want it to have the appropriate problem so that the unit tests work | 11:04 |
|
cbreak
| nice | 11:04 |
| ← schlort left | 11:04 |
|
doener_
| cbreak: that hook used to have a perl script in it, the new one uses "git diff --check" instead, which respects the core.whitespace settings | 11:04 |
|
| again, not idea in which version that was added/changed | 11:05 |
| ← imyousuf left | 11:05 |
|
cbreak
| both seem to work anyway. | 11:07 |
| ← bartocc left | 11:10 |
| → zawir joined | 11:10 |
| → Zoup joined | 11:10 |
| → Aerpe joined | 11:11 |
|
Zoup
| i did create a patch of files ( both modified and new added ) and git-applied them , but only modified files are visible in git-status and new files are not created at all | 11:11 |
| → dennister joined | 11:11 |
| ← bartocc_ left | 11:13 |
|
dennister
| any ubuntu hardy users in here? having real trouble using git and documentation to compile a custom kernel with speakup patch(es) | 11:13 |
|
| i'd really appreciate some help...used to compiling gentoo kernels with /usr/src/linux instead | 11:14 |
| → schlort joined | 11:15 |
|
avu
| dennister, what's your actual git related prblem? | 11:15 |
| ← hml left | 11:16 |
| ← reel_ left | 11:16 |
|
dennister
| git pull...did the git init successfully, i may have the source wrong in /etc/apt/sources.list, but "git pull always gives me errors | 11:16 |
| → reel_ joined | 11:16 |
|
avu
| dennister, git has nothing to do with the sources.list file | 11:17 |
|
dennister
| okie, will remove it then | 11:17 |
|
avu
| dennister, also, if you want a copy of an existing directory, you don't do init/pull but clone | 11:17 |
|
dennister
| ty...very helpful so far :-) | 11:17 |
| ← ben_h left | 11:20 |
|
Mikachu
| does ubuntu even come with gcc? :) | 11:20 |
|
dennister
| ok, seems I did do a git clone last night, following this (i believe flawed) howto: https://wiki.ubuntu.com/KernelGitGuide | 11:20 |
|
albertito
| dennister: on a quick check it seems sane, at least for a user who just wants the latest Ubuntu-patched kernel | 11:22 |
|
dennister
| after doing the long download, did the 'git pull' as per howto, got error, took a look at the git tutorial, did the 'git init' and that worked, then tried to do another git pull, as per howto, and that's where i got more errors | 11:22 |
|
albertito
| dennister: just git clone git://kernel.ubuntu.com/ubuntu/ubuntu-hardy.git; cd ubuntu-hardy; make menuconfig and so on | 11:22 |
|
avu
| dennister, read the howto again. it's fine but you missread it. | 11:23 |
|
albertito
| dennister: then, when you want to update your copy of the kernel, do "cd ubuntu-hardy; git pull", and that's just it | 11:23 |
|
dennister
| small wrinkle: i need to install the speakup patches...this is for a blind user who needs speakup screen reader | 11:23 |
|
avu
| dennister, you run the git pull command in the directory created by git clone only when you want to update what you got | 11:23 |
| → pieter__ joined | 11:24 |
|
pieter__
| ah, internet via gprs | 11:24 |
|
dennister
| o i c...so i'll unpack the speakup tarball as per those instructions, and do the symlink from /usr/src/linux to the .git, then do the make menuconfig? i figure i'll be all right once i get to the menuconfig portion...being on familar ground by then | 11:26 |
|
Mikachu
| is there any particular reason you want the latest unstable linux version? | 11:27 |
| ← lea_w left | 11:27 |
|
dennister
| Mikachu: if ur talking to me, I'd actually not prefer an unstable version...hardy is up to 2.6.19.36 i believe...i just need to compile the custom kernel with the speakup patches | 11:28 |
|
Mikachu
| why not just download 2.6.26.2 from kernel.org? | 11:29 |
|
avu
| or install a linux-source package from ubuntu | 11:29 |
|
astubbs
| ok - need a little help here. i just made a massive commit and the realised i was on HEAD^ and of course no i'm on "no branch". how do I make branch master's HEAD be where I am now? - it's been a long day... but i'm sure glad i didn't loose anything :) | 11:30 |
| ← Zoup left | 11:30 |
|
albertito
| dennister: you should check what kernel the speakup patches are against. I googled and it seems there were packages for older ubuntu releases, maybe they are already shipping it? | 11:30 |
|
| astubbs: git show, copy the sha1 of the commit. git checkout master; git reset --hard <sha1 of the commit> | 11:31 |
|
dennister
| wiat, my kernel now is 2.6.24.19...this kernelgitguide in ubuntu community documentation says that doesn't work anymore...believe me...i'd prefer to use methods I'm already familiar with | 11:31 |
|
albertito
| astubbs: but you will loose the current "HEAD" commit, you are aware of that, aren't you? | 11:31 |
|
Mikachu
| astubbs: git checkout -b oopsie; gitk oopsie...master, see if there's anything in master you accidentally threw away from this branch | 11:31 |
|
avu
| dennister, this KernelGitGuide is for people who want the latest ubuntu development kernel. | 11:31 |
|
astubbs
| albertito,yeah that's cool | 11:32 |
|
dennister
| albertito: the speakup patches are for 2.6.10 and later...and no, there are no speakup packages for hardy in the repositories...they and some other necesary stuff like kernel-patch-?? have been dropped from hardy repositories | 11:32 |
|
albertito
| astubbs: you can also: git branch tmp; git rebase master; git checkout master; git merge tmp if you don't want to loose that commit | 11:32 |
|
avu
| dennister, the packages are now calles linux-patch-foo | 11:33 |
|
| dennister, you should really head over to #ubuntu with this :) | 11:33 |
|
albertito
| dennister: I found this on launchpad: https://launchpad.net/ubuntu/+source/speakup, maybe you can use that? have you asked in #ubuntu? | 11:33 |
|
wildfire
| dennister, why are you not just searching for the speakup-modules as avu indicates? Basically you seem to be taking the longest, most difficult path to get a kernel with those patches compiled in | 11:33 |
|
dennister
| avu: i always try #kubuntu and #ubuntu channels first...gwas very patient but no one could help me | 11:33 |
|
avu
| dennister, well, you clearly have no git problem. in fact, using the kernelgitguide method is most likely not what you want, which means you are quite offtopic here | 11:34 |
|
dennister
| posted it to ubuntu forums, too, lots of views, no one could help...got to kernelgitguide from another ubuntu page, which said i had to use the git guide, as other methods didn't work anymore... | 11:35 |
| ← Aerpe left | 11:36 |
|
albertito
| dennister: have you tried using the mailing list? there is a ubuntu kernel mailing list where this is probably on topic (since they did ship packages before) | 11:36 |
|
avu
| dennister, didn't work? of course you can just install a linux-source-version package | 11:36 |
|
dennister
| soory if i'm offtopic, but as you can see, i have tried many other channels first, before coming here...and u guys have been the only ones who've been able to offer me any useful advice | 11:36 |
|
avu
| dennister, really, this git repository is only for the latest development kernels. | 11:36 |
|
| dennister, see https://help.ubuntu.com/community/Kernel/Compile | 11:37 |
|
albertito
| avu: his problem doesn't seem to be the compilation on itself, but the speakup patches | 11:37 |
|
astubbs
| yikes this is freaky -getting some big old (cygwin) git-read-tree**** fatal error could nt load shell32, win#2 error. Hangup. | 11:37 |
|
| doin a back up .git now before i screw anything | 11:38 |
| ← morphir left | 11:38 |
|
avu
| albertito, yeah but from what I have agthered, those patches exist for older kernel versions as well, so there is no reason he should use an unstable development kernel | 11:38 |
|
| gathered even | 11:38 |
| ← ggapol left | 11:39 |
|
avu
| wow, reading further seems to suggest that the ubuntu folks really did manage to break the in-repository kernel source packages? | 11:40 |
|
dennister
| avu: yes, the link u gave me was the exact doc that told me to use kernelgitguide...due to this: NOTE: This method has been broken since at least June 14th, 2007. Details are here. Use method #1 above ("git") instead. | 11:40 |
|
Mikachu
| lol at "Reasons for NOT compiling a custom kernel" "You have no idea what you are doing, and if you break something, you'll need help fixing it." | 11:41 |
|
avu
| dennister, well, get ubuntu support | 11:41 |
|
Mikachu
| i would have put one more "if" in that sentence | 11:41 |
|
dennister
| Mikachu: like i said, i have built/compiled many a gentoo kernel before | 11:41 |
|
avu
| dennister, this is a git channel. most people in here don't use ubuntu and our discussion about it steals screen real estate from legitimate git questions. | 11:42 |
|
dennister
| fine. i get the hint: i'm buggering off...thanks for the help, and the hurt feelings | 11:42 |
| ← dennister left | 11:43 |
| → d0k joined | 11:44 |
| ← X-Blade left | 11:44 |
|
astubbs
| crap - git-read-tree crashes checking out my oppsie at about 30% | 11:44 |
|
| i can see the commit in gitk though | 11:44 |
|
| and the entire patch | 11:44 |
|
| just can't seem to reset to it | 11:45 |
| → mithro_ joined | 11:45 |
| ← mithro left | 11:46 |
| mithro_ → mithro | 11:46 |
| ← jlilly left | 11:46 |
|
astubbs
| ok making progress... there are four commits in the chain after i went to head^. i've reset to the first one ok | 11:48 |
|
| (6403 files btw) | 11:48 |
|
| i'll try climbing up the ladder, resetting to each one | 11:48 |
|
| 1 | 11:48 |
|
| 2 | 11:49 |
|
| 3 | 11:49 |
|
| now this is the last commit... *gulp* | 11:49 |
|
| ok this is strange | 11:51 |
|
| dir/file currently doesn't exist | 11:51 |
|
| now i got up one more step | 11:51 |
|
| crap. got that git-read-tree crash again | 11:52 |
|
| perhaps i could create a patch and reapply it? | 11:52 |
| → dragonball_ joined | 11:53 |
|
| astubbs googles git cherry pick | 11:53 |
| → mithro_ joined | 11:53 |
| ← mithro left | 11:54 |
| mithro_ → mithro | 11:54 |
| ← priidu left | 11:55 |
| → Pakorrerme joined | 11:55 |
|
Pakorrerme
| Hi every body | 11:55 |
|
| I've just installed git + gitosis in my debian distro | 11:56 |
| → ereslibre joined | 11:56 |
| → lu_zero joined | 11:56 |
|
Pakorrerme
| but i when i try to connect with ssh i get some error like that: "fatal: destination directory 'gitosis-admin' already exists." | 11:57 |
|
| what's matter? | 11:57 |
|
| can anybody help me? | 11:58 |
|
charon
| astubbs: maybe you can 'git fsck' to rule out a corrupt object in that last commit? | 11:59 |
|
Pakorrerme
| charon, it's me | 12:00 |
|
| I need to install git urgently | 12:00 |
|
astubbs
| but the last commit is the really big important one | 12:00 |
|
| will that delete anything? | 12:01 |
| → MK_FG joined | 12:01 |
|
charon
| astubbs: no, fsck just checks consistency | 12:01 |
|
Pakorrerme
| What's is the function of gitosis, thank you? | 12:01 |
|
charon
| note that dangling objects aren't an issue, but still reported | 12:01 |
| → unreal_ joined | 12:01 |
| ← unreal left | 12:01 |
|
astubbs
| just reported a whole lot of dangling | 12:01 |
| → cannonball joined | 12:03 |
|
charon
| Pakorrerme: i doubt you'll get help if you vaguely describe an error without saying with what exact commands you got it, then being impatient and prodding people that just so happen to be awake. try pasting some of the shell session, including the error, on pastebin.com or so | 12:03 |
|
Magnus`
| running 'git checkout $rev -- dirA' does not remove files which where added after $rev. Is that a bug or a feature? | 12:04 |
|
astubbs
| ok i can't seem to reset to it | 12:04 |
|
| what's the easiest way to make a patch from it? (i suppse that wont work either anyway) | 12:04 |
|
Mikachu
| Magnus`: if you want to remove files, you already have git rm | 12:04 |
|
astubbs
| git format-patch <rev> looked like a no-op | 12:04 |
|
Magnus`
| Mikachu: i just want to get dirA at the state it was in at $rev | 12:04 |
| ← pieter__ left | 12:05 |
|
Mikachu
| Magnus`: git rm dirA; git checkout rev dirA | 12:05 |
| → frq1_dave joined | 12:05 |
| ← tlyng left | 12:05 |
|
astubbs
| ok tried git reset --hard HEAD@{4} - that's the commit. and i get the unable to create symlin dir/file that i was alluding to earlier | 12:05 |
|
| error is (File exists) | 12:05 |
|
Magnus`
| say that HEAD:dirA contains file1 file2 file3 and HEAD^:dirA contains file1 file2. Doing git checkout HEAD^ -- dirA will not remove file3 from dirA | 12:06 |
|
astubbs
| hmm | 12:07 |
|
Mikachu
| Magnus`: yes, it won't, that's intended | 12:07 |
|
astubbs
| git status shows that there's actually heaps of changes now - looks like my commit | 12:07 |
| → epic_ joined | 12:07 |
|
Magnus`
| Mikachu: why is that? and is there a way around it? | 12:08 |
|
epic_
| how do i use git-svn init against a non-standard repository structure? | 12:08 |
|
Mikachu
| Magnus`: i already said what to do | 12:08 |
|
| Magnus`: git-checkout by definition checks file out, it doesn't delete them | 12:08 |
|
| files* | 12:08 |
|
Magnus`
| ok, thanks! | 12:09 |
|
astubbs
| ah-ha! i think git reset --soft HEAD{5} after that has done it! | 12:09 |
| → grahal joined | 12:10 |
|
astubbs
| oh thank god! my master is now pointing at my large important commit | 12:10 |
|
| shesh what a nightmare | 12:10 |
|
| now to dcommit before i loose it! | 12:10 |
|
Pakorrerme
| Hello when i connect to git from shh witch "sudo git clone git@localhost:gitosis-admin.git" i get this message "Initialized empty Git repository in /home/gitosis-admin/.git/" but after It ask me for a password, what password? thank you | 12:10 |
| → janm joined | 12:11 |
|
charon
| astubbs: a soft reset keeps the index and working tree, so it never reads the tree you're pointing it at | 12:11 |
|
Pakorrerme
| hello!!! | 12:11 |
|
charon
| Pakorrerme: google for gitosis-init. | 12:12 |
| → Ademan joined | 12:12 |
|
Pakorrerme
| anybody can help me --> when i try to connect to git from shh witch "sudo git clone git@localhost:gitosis-admin.git" i get this message "Initialized empty Git repository in /home/gitosis-admin/.git/" but after It ask me for a password, what password? thank you | 12:12 |
|
| charon thank you | 12:12 |
| → warlock_mza joined | 12:13 |
|
charon
| for example, http://gentoo-wiki.com/Gitosis#Configuring has a nice explanation. | 12:13 |
|
Pakorrerme
| charon thank you | 12:13 |
|
| i'm using debian | 12:13 |
|
thiago
| Pakorrerme: "sudo"? Why? | 12:14 |
|
Pakorrerme
| thiago, it¡s because i use debian, and i want to execute that command like root | 12:15 |
|
thiago
| so... why? | 12:15 |
|
Pakorrerme
| ¿? | 12:15 |
|
| K | 12:15 |
|
thiago
| why do you want to use root? | 12:15 |
|
Pakorrerme
| I don't know if it is necessary or not | 12:15 |
|
| ahh | 12:15 |
|
| i understand your answer | 12:15 |
| ← _kid_ left | 12:16 |
|
Pakorrerme
| maybe you are thinking about I should have to execute this command from client | 12:16 |
|
thiago
| why do you want to use the superuser for a git repository? | 12:16 |
| ← Zyroth left | 12:19 |
|
astubbs
| ok - here's an easy question. you know when you have rebase conflicts - does it always apply an entire commit at once, and show you all the conflicts? or does it stop at the first conflict? | 12:20 |
| bcarlyon|laptop → BCarlyon|Laptop | 12:20 |
|
thiago
| it applies everything | 12:21 |
|
astubbs
| oh ok good - so i only have one conflict :) | 12:21 |
|
| what i find weird is that, it says there's a conflict, then i do git-ermgetool and it says there's nothing to merge! | 12:22 |
|
| and stauts only shows .dotest | 12:22 |
|
| so then i try and continue - and it says - "no changes", did you forget to git add? | 12:23 |
|
Pakorrerme
| Are all my repositories saved in /var/spool ?? thank you | 12:25 |
| ← AlexB left | 12:26 |
| → ben_h joined | 12:26 |
| → _kid_ joined | 12:28 |
| → lorandi joined | 12:28 |
| → jmalonzo joined | 12:31 |
|
epic_
| how do i change a git svn svn+ssh username? it keeps trying to log on to ssh with my local username.. | 12:31 |
|
doener_
| add username@ to the url in the config, or just setup your ssh config to use the correct username for that host | 12:32 |
|
epic_
| got it :) | 12:32 |
|
| thanks | 12:32 |
| → mw joined | 12:36 |
| → morphir joined | 12:37 |
| ← frq1_dave left | 12:38 |
| ← cannonball left | 12:40 |
|
charon
| not really a git question: do mmap() areas of real files count towards RSS? DRS? VSIZE? | 12:41 |
|
Mikachu
| i think it depends on if they're paged in or not ;) | 12:42 |
| → markkalderon joined | 12:42 |
| → madewokherd joined | 12:44 |
| ← janm left | 12:44 |
| → cannonball joined | 12:45 |
| → vbabiy joined | 12:48 |
|
Pakorrerme
| Hi | 12:50 |
| → parasti joined | 12:50 |
| ← Leonidas left | 12:52 |
| → lhunath joined | 12:52 |
|
lhunath
| is it a bad idea to want to put my GIT hooks in the repository? | 12:52 |
| ← astubbs left | 12:53 |
| → irotas joined | 12:55 |
|
Pakorrerme
| if I have created git user with the flag "disabled-password" then, why does git user ask me for a password? | 12:55 |
|
cupsh
| I want to cherry-pick a bunch of commits from another branch. rebase is the tool of choice, right? | 12:56 |
|
Mikachu
| disabled-password means you can't log in at all | 12:56 |
| → robinr joined | 12:56 |
|
Pakorrerme
| Mikachu, what? | 12:57 |
|
Mikachu
| disabled-password means you can't log in at all | 12:57 |
|
Pakorrerme
| ahh ok | 12:57 |
|
Mikachu
| lol | 12:57 |
| → skarab joined | 12:58 |
|
Pakorrerme
| And because when I type "git clone git@YOUR_SERVER_HOSTNAME:gitosis-admin.git" it ask me for a password | 12:58 |
| ← mithro left | 12:58 |
| ← lhunath left | 12:59 |
| → Aerpe joined | 13:01 |
| ← ben_h_ left | 13:01 |
| ← ben_h left | 13:01 |
| ← skarab left | 13:01 |
|
zawir
| cupsh: right, you can use "pick" in rebase | 13:02 |
| ← crab left | 13:06 |
| → sergiodj joined | 13:08 |
| → QuercusMax joined | 13:08 |
| → X-Blade joined | 13:09 |
| → Ryback_ joined | 13:09 |
| ← ph^ left | 13:10 |
| ← dragonball_ left | 13:11 |
| ← BabelO left | 13:14 |
| → BabelO joined | 13:15 |
| → jeukku joined | 13:16 |
| → AlexB_ joined | 13:16 |
| ← AlexB_ left | 13:16 |
| → aroben joined | 13:17 |
| ← aroben left | 13:17 |
| → giom joined | 13:18 |
|
Pakorrerme
| Hi | 13:18 |
| ← shadowfax left | 13:19 |
| fargiolas|afk → fargiolas | 13:19 |
| → LiamH joined | 13:20 |
| ← pygi left | 13:20 |
| ← bongiojp left | 13:21 |
| → cmarcelo joined | 13:21 |
| → rlorandi joined | 13:23 |
| ← lorandi left | 13:23 |
| → dragonball_ joined | 13:29 |
| ← Sho_ left | 13:29 |
| ← cmarcelo left | 13:30 |
| → SjB joined | 13:30 |
|
Pakorrerme
| Command "git clone git@SERVERHOST:gitosis-admit" doesn't create the file gitosis.conf | 13:30 |
| → ph^ joined | 13:30 |
| → bongiojp joined | 13:31 |
| → ben_h joined | 13:32 |
| → ben_h_ joined | 13:32 |
| → priidu joined | 13:32 |
| → Sho_ joined | 13:33 |
| ← ben_h_ left | 13:34 |
| → jerbear joined | 13:36 |
| → pygi joined | 13:36 |
| → rdavila joined | 13:37 |
|
rmh3093
| is there a way to change the message on old commit | 13:38 |
|
doener_
| commit --amend/rebase -i/filter-branch | 13:39 |
|
| and don't do that for commits you already published | 13:39 |
|
charon
| Pakorrerme: did you gitosis-init like the link i posted earlier says? | 13:40 |
| → mithro joined | 13:40 |
|
rmh3093
| yeah its already pushed | 13:40 |
|
Pakorrerme
| charon, yes i did that | 13:42 |
|
| i don't know why gitosis.conf don't appeared | 13:42 |
| ← reel_ left | 13:44 |
| → reel_ joined | 13:44 |
| ← lu_zero left | 13:44 |
| ← giom left | 13:44 |
| → giom joined | 13:46 |
| ← priidu left | 13:47 |
| ← giom left | 13:47 |
| → Cacheaway joined | 13:49 |
| → lea_w joined | 13:52 |
| ← Aerpe left | 13:52 |
| → zdennis joined | 13:53 |
|
zdennis
| Anyone know of a way to get a log of revisions on a particular date (or date range) ? | 13:54 |
| ← rraasch left | 13:54 |
|
zdennis
| I am looking through docs on git-log, but I don't see anything | 13:54 |
|
doener_
| --since/--until, see git-rev-list(1) | 13:54 |
|
zdennis
| thx doener_ | 13:55 |
|
doener_
| also understands things like --since=3.days.ago | 13:55 |
| → priidu joined | 13:55 |
| epic_ → epic | 13:55 |
| → kukks joined | 13:55 |
| → giom joined | 13:56 |
| → juanjoc joined | 13:57 |
| ← epic left | 13:57 |
| ← jeukku left | 13:57 |
| unreal_ → unreal | 13:58 |
| → foca joined | 13:59 |
| ← priidu left | 14:01 |
|
Pakorrerme
| Hi | 14:01 |
| → botanicus joined | 14:03 |
| → priidu joined | 14:03 |
|
Pakorrerme
| charon, I followed the tutorial that you recommend me but It doesn't work well, when I make a connection using git clone git@MYHOST:gitosis-admin.git it doesn't create a gitosis.conf file | 14:04 |
| ← snitko left | 14:04 |
| → Boman joined | 14:04 |
|
charon
| can you paste the shell sessoin where you do that clone, plus 'cd gitosis-admin; ls -al' on pastebin.com? | 14:04 |
| ← rmh3093 left | 14:04 |
| ← mithro left | 14:04 |
|
Pakorrerme
| ok | 14:05 |
| → mithro joined | 14:06 |
| → rmh3093 joined | 14:06 |
| → atom joined | 14:07 |
| ← mcgrof left | 14:07 |
| ← icwiener left | 14:07 |
| → spearce joined | 14:08 |
|
atom
| hi peeps. Got a wee bit of a problem. I've renamed a lot of files and then modified them, and now when I try git-status (before a commit) git shows a lot of those as file deleted/added instead of renamed. Is there a way to inform git of the rename+edit so viewing file history will be more useful in the long run? | 14:09 |
|
lea_w
| atom: You don't. http://git.or.cz/gitwiki/GitFaq#head-557ab0dbe84efb4e6a091f43c05b326a52b8fc03 | 14:10 |
|
doener_
| git always detects renames after the fact | 14:10 |
|
atom
| lea_w: thought so... | 14:10 |
|
doener_
| atom: how much did you edit those files, and how many files are we talking about? | 14:10 |
|
atom
| doener_: it's not such a big deal, it's about 12 files. | 14:11 |
|
| doener_: and most of the edits are capitalization changes and a few small bugfixes. | 14:11 |
|
doener_
| did you already add the files to the index? | 14:11 |
|
atom
| doener_: yes, unfortunately. | 14:11 |
|
doener_
| the old ones as well as the new ones? | 14:12 |
| → ddollar joined | 14:12 |
| jmalonzo → janm | 14:12 |
|
atom
| doener_: um... now I'm not sure if I understand the "index" correctly. You mean if I added the new filenames and removed the old ones? yes, I did, I did a git-add . | 14:13 |
|
Pakorrerme
| charon, http://pastebin.com/m64d65c63 thank you | 14:13 |
|
doener_
| ok, so they're all listed under "Changes to be committed", right? | 14:13 |
|
atom
| doener_: yeah, that. | 14:14 |
|
doener_
| atom: I guess your changes account for more than about 33% of the lines of those files then. That's the threshold git uses for renames | 14:15 |
|
atom
| doener_: yeah, that's quite possible. | 14:15 |
| ← QuercusMax left | 14:15 |
|
atom
| doener_: but reading the FAQ entry and related pages that lea_w posted, I see that it really doesn't matter. | 14:15 |
|
Pakorrerme
| charon Have you seen anything wrong? | 14:15 |
|
doener_
| atom: well, for files in the index, the rename detection already kicks in | 14:16 |
|
| atom: so if that doesn't see them as renamed, probably nothing else will | 14:16 |
|
atom
| doener_: I can live with that. I just thought there was a simple fix and that I would have done, but it's not that important. | 14:17 |
|
doener_
| rename first, modify in a later commit | 14:17 |
|
atom
| doener_: that would mean reverting all those files, commiting and copying in the new ones. | 14:18 |
|
doener_
| not necessarily | 14:18 |
|
atom
| ? | 14:18 |
|
doener_
| http://git.pastebin.com/m3427c45d | 14:19 |
|
| a somewhat terse description ;-) | 14:19 |
|
charon
| Pakorrerme: i can't see any mistake there. maybe update to newest gitosis, nuke the gitosis-admin.git directory and redo the setup. if that doesn't work, you'll have to find someone more competent than me | 14:19 |
|
atom
| doener_: interesting. | 14:20 |
| → aroben joined | 14:20 |
|
Pakorrerme
| charon, oohhh thanks | 14:20 |
|
doener_
| atom: if you're lucky, that might work. | 14:20 |
| ← cedricv left | 14:20 |
| ← kanru left | 14:21 |
|
atom
| doener_: learning git properly will do me some good someday :) | 14:21 |
| ← DavidBoman left | 14:21 |
|
atom
| 'till then, I'm cp -r'ing everything just to be sure :) | 14:21 |
|
doener_
| atom: and if that doesn't work, you could still ask git for a diff like this "git diff $old_branch^:oldfilename $old_branch:newfilename" and just apply those using patch | 14:23 |
|
atom
| doener_: I'm still reading the manpage of git-cherry-pick | 14:24 |
| → botanicus_ joined | 14:27 |
| → rmh3093_ joined | 14:28 |
| ← rmh3093 left | 14:29 |
|
atom
| doener_: thanks. | 14:29 |
|
doener_
| atom: just tried that, cherry-pick didn't work for me. http://git.pastebin.com/m14f72062 -- that's the "somewhat manual" way | 14:29 |
|
| cherry-pick caused a bunch of conflicts, as the rename detection "failed" and it tried to patch the wrong file | 14:30 |
|
| the paste has a complete example for a single file, using "git diff" and patch | 14:30 |
|
atom
| yeah, saw that. I didn't really go through with it. | 14:31 |
|
| I just committed the changes. It's not like anyone's gonna go browsing through this history. | 14:31 |
|
| doener_ should stop doing lenghty paste noone needs :-/ | 14:32 |
|
atom
| doener_: I read it through though | 14:32 |
| → zjshang_1 joined | 14:34 |
| ← zjshang_1 left | 14:34 |
| → zjshang_1 joined | 14:34 |
| → chrisb joined | 14:35 |
| ← giom left | 14:36 |
| → giom joined | 14:39 |
| ← mithro left | 14:41 |
| → mithro joined | 14:42 |
| → kanru joined | 14:45 |
| ← charon left | 14:48 |
| → chris2 joined | 14:53 |
| ← MK_FG left | 14:54 |
| → MK_FG joined | 14:55 |
| ← zjshang_1 left | 14:55 |
| ← botanicus left | 14:56 |
| → frq1_dave joined | 14:56 |
| → Oejet joined | 14:59 |
| → jackdempsey joined | 15:03 |
| ← priidu left | 15:06 |
| → cedricv joined | 15:07 |
|
Pakorrerme
| Hi | 15:10 |
| ← leachim6 left | 15:10 |
| ← jdahm left | 15:10 |
|
Pakorrerme
| gitosis doesn't export to me the file gitosis.conf why? | 15:11 |
|
| I'm using debian | 15:11 |
| → yoh joined | 15:11 |
| → leachim6 joined | 15:11 |
|
yoh
| is there any tool to draw 'collapsed' tree of branches -- ie avoiding regular commits but just merges -- to see what is the 'interaction' between the branches? (I didn't find anthing like that in gitk unfortunately) | 15:12 |
|
Arrowmaster
| Pakorrerme: the post update (i think thats it?) hook might not be +x | 15:15 |
| → priidu joined | 15:15 |
|
spearce
| yoh: no. nobody has created such a tool to show only merges. | 15:15 |
| ← thiago left | 15:16 |
|
pasky
| shouldn't that be pretty easy? | 15:16 |
| ← uau left | 15:16 |
|
pasky
| 1. git rev-list --parents | grep '.* .* .*' | cut -f ' ' -d 1 | 15:16 |
| ← jackdempsey left | 15:16 |
|
pasky
| 2. ??? | 15:17 |
|
| 3. PROFIT | 15:17 |
|
spearce
| true, but uh, no fancy graph. | 15:17 |
|
pasky
| well | 15:17 |
|
spearce
| and you've cut away edges that may be needed to show the graph. | 15:17 |
|
pasky
| the ??? involves feeding that to gitk | 15:17 |
|
| hmm | 15:17 |
|
| that's a good point ;) | 15:18 |
| → charon joined | 15:18 |
| → uau joined | 15:18 |
|
Mikachu
| find the code for --no-merges and reverse the condition :) | 15:18 |
|
spearce
| well, that gives us what pasky said. which won't feed gitk nicely. | 15:22 |
|
| it'll be as bad as doing `gitk --reverse`. it plots horribly confused graphs, assuming it can even plot it at all | 15:22 |
|
pasky
| I could prefix non-merges with - | 15:22 |
| → vbabiy_ joined | 15:22 |
|
pasky
| since it's kind of like ouboundary | 15:22 |
|
| and gitk could have a way to | 15:22 |
|
| get the list of commits on stdin | 15:22 |
|
| would that work? | 15:22 |
|
| I'm no tfamiliar how does gitk actually use the mysterious left-right, boundary etc. stuff | 15:22 |
|
| (actually, I don't know what the hell --boundary actually is since the documentation is so totally unhelpful as usual | 15:22 |
|
| mikachu: that's the same problem | 15:22 |
| → powr-toc joined | 15:23 |
|
Pakorrerme
| Arrowmaster, What do you refer to?? | 15:23 |
| → jackdempsey joined | 15:23 |
|
powr-toc
| can you have a git submodule which is a project managed by git-svn? | 15:23 |
|
Pakorrerme
| Arrowmaster, please | 15:23 |
|
Arrowmaster
| sudo chmod 755 gitosis-admin.git/hooks/post-update | 15:25 |
|
Pakorrerme
| Does Anybody know why gitosis doesn't export to me the file gitosis.conf when I do a clone, thank you very much I'm hopeless | 15:26 |
|
Arrowmaster
| then try commiting to gitosis-admin again, or just amending the previous commit | 15:26 |
| ← ereslibre left | 15:26 |
|
Arrowmaster
| wait you cloned gitosis-admin and it doesnt contain gitosis.conf? | 15:27 |
|
Pakorrerme
| Arrowmaster, yes | 15:27 |
|
| It doesn't | 15:27 |
|
yoh
| spearce, thanks for the information | 15:27 |
|
| pasky, thanks for quick attempt ;-) | 15:27 |
|
Arrowmaster
| does it have keydir? | 15:27 |
|
Pakorrerme
| neither | 15:28 |
|
yoh
| may be you would tolerate 1 more question from me: for cherry picked commits -- what is the easiest way to see all places where it was cherry picked to? | 15:28 |
| cbrake_away → cbrake | 15:28 |
|
Arrowmaster
| i dont know maybe a messed up install? | 15:28 |
|
yoh
| in idial world gitk could draw an edge upon request from original commit to the places where it was cherry picked | 15:29 |
|
Pakorrerme
| I don't know | 15:29 |
|
Arrowmaster
| how did you install it? | 15:29 |
| ← spearce left | 15:29 |
| → jwinkler81 joined | 15:29 |
|
Pakorrerme
| I installed git from repos | 15:29 |
|
| and gitosis using git clone | 15:29 |
|
yoh
| and then if ever graph with 'no commits' comes up into reality -- adding "dashed arrows" to show from which branch to which some commits were cherry picked would be really great -- it would in 1 image summarize the general development workflow people of that git repository use | 15:30 |
|
Pakorrerme
| I have been all the morning trying to configure it without success :( | 15:30 |
| → mtodd joined | 15:30 |
| ← ismell left | 15:30 |
|
Arrowmaster
| did you follow something like http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-way | 15:30 |
|
Pakorrerme
| Yes it is | 15:30 |
|
| I followed that link | 15:31 |
| ← mountie left | 15:31 |
| ← zawir left | 15:32 |
| → glennfu joined | 15:32 |
| → danlucraf1 joined | 15:32 |
|
glennfu
| Hello! I'm a noob to Git and I need a hand... I'm working in a single branch, and someone just made some changes and now I can't catch up to his changes | 15:33 |
|
pasky
| yoh: yes, that would be nice - are you planning to implement that? :) | 15:33 |
|
| see also git cherry, git show-branch | 15:33 |
|
glennfu
| I have 2 files in the .gitignore file that Git is complaining need to be updated, and 1 file that I want to simply force-update to the newest version | 15:33 |
|
| What do I need to do? | 15:33 |
|
yoh
| pasky, ;-) shouldn't be too hard I guess if combined with graphviz... but not sure if I am to accomplish the mision | 15:34 |
| → ebel joined | 15:34 |
| ← rmh3093_ left | 15:34 |
|
pasky
| graphviz? | 15:34 |
| → spearce joined | 15:34 |
|
pasky
| i thought you wanted it in gitk? | 15:34 |
|
yoh
| in gitk it would be 'idial' | 15:34 |
|
| for quick overview to build some clumsy graph graphviz might be the easier choice | 15:34 |
|
jaalto
| Is is possible to take of certain file 5 revisions backward in current branch? | 15:34 |
|
pasky
| spearce: oh, you are working at google now? or just visiting? :) | 15:34 |
|
| jaalto: yes, using git checkout | 15:35 |
| ← vbabiy left | 15:35 |
|
Pakorrerme
| Arrowmaster my .gitosis.conf inside my /home/git directory is empty | 15:35 |
|
jwinkler81
| I have several files changed locally, and simply want to reset one file back to where it was at the last commit. I've checked docs and examples and nothing seems to work (in particular, using reset <file>, reset -- <file>, reset HEAD <file>. Any help would be much appreciated :) | 15:35 |
|
spearce
| pasky: actually working here. i've been here two weeks now. | 15:35 |
|
Mikachu
| jwinkler81: s/reset/checkout/ | 15:35 |
|
jaalto
| pasky: Err. I don't want to lose current file | 15:35 |
|
pasky
| spearce: oh, cool | 15:35 |
| → rmh3093 joined | 15:35 |
|
Pakorrerme
| Arrowmaster, http://pastebin.com/m64d65c63 | 15:35 |
|
Arrowmaster
| Pakorrerme: i have no clue and cant really help then | 15:36 |
| ← DrFrasierCrane left | 15:36 |
|
Pakorrerme
| :( | 15:36 |
|
pasky
| jaalto: so, either you want to keep current file or take it 5 revisions back | 15:36 |
|
| needa decide | 15:36 |
|
Pakorrerme
| maybe | 15:36 |
|
pasky
| spearce: what are you working on there, unless it's secret? :) | 15:36 |
|
doener_
| jaalto: "git show HEAD~5:filename" | 15:36 |
|
jwinkler81
| Mikachu: lol, thank you :) | 15:36 |
|
jaalto
| pasky: I explained poorly. I want to take a diff <current>..<current>~5 of certain file | 15:36 |
|
spearce
| pasky: we're really secretive. but i'm working on android. that's at least a known product. beyond that i probably cannot say anything. | 15:37 |
|
Pakorrerme
| Maybe the gitossis instalation was unclear | 15:37 |
|
pasky
| jaalto: then do? :) | 15:37 |
| → schacon joined | 15:37 |
|
jaalto
| doener_: Tahnks | 15:37 |
|
pjz
| spearce: bah, you should be working on jgit & egit! | 15:37 |
|
pasky
| spearce: I see, ok - have fun there :) | 15:37 |
|
yoh
| spearce, are you working to port it to ARMv4? ;) | 15:37 |
|
doener_
| jaalto: that show command doesn't give a diff, but the file itself... | 15:37 |
|
pasky
| I've seen some android stuff pop up at repo.or.cz just few days ago ;) | 15:37 |
|
| but I suppose thtat's just a coincidence | 15:37 |
|
Pakorrerme
| Arrowmaster, How Can i uninstall gitosis | 15:37 |
|
doener_
| jaalto: to diff, just diff those two revisions and limit the output to that file using " -- filename" | 15:38 |
|
Arrowmaster
| delete it | 15:38 |
|
pjz
| spearce: oh yeah, count me in on wanting android on armv4 - I'd like android on my FreeRunner, please :) | 15:38 |
|
Pakorrerme
| I installed it from tar ball | 15:38 |
|
| Arrowmaster, where? | 15:38 |
|
Arrowmaster
| i dont know ive only messed around with gitosis once or twice | 15:39 |
| → ereslibre joined | 15:39 |
|
jaalto
| doener_: Got it, thank you. | 15:39 |
|
Pakorrerme
| pfff | 15:40 |
| ← glennfu left | 15:40 |
| ← jwinkler81 left | 15:40 |
| → jackdempsey_ joined | 15:40 |
| ← jackdempsey left | 15:41 |
|
spearce
| pjz: some of my time does go to jgit/egit development. google has this "20%" bucket. | 15:42 |
| ← bongiojp left | 15:43 |
| → krh joined | 15:43 |
|
pjz
| spearce: ah, yeah, didn't know you were using it for that. | 15:44 |
|
Pakorrerme
| Arrowmaster, with who user i should have to generate de public key | 15:44 |
| → jschoolc joined | 15:45 |
| ← Pakorrerme left | 15:45 |
|
powr-toc
| Sorry to repeat the question, but can git-svn be used to manage submodules? | 15:45 |
| ← danlucraf1 left | 15:47 |
| ← spearce left | 15:47 |
| → mountie joined | 15:47 |
| → LostInTheWorld joined | 15:48 |
| → docwhat joined | 15:48 |
| → spearce joined | 15:48 |
|
docwhat
| Hello! Is there some way to add in a different diff mechanism for .xml files? | 15:48 |
| ← mithro left | 15:49 |
|
docwhat
| The current diff mechanism means that there are always conflicts when trivial changes are made in XML. | 15:49 |
|
Mikachu
| docwhat: see GIT_EXTERNAL_DIFF in man git | 15:49 |
|
doener_
| docwhat: you can specify a custom merge driver | 15:49 |
|
Pieter
| and 'man gitattributes' | 15:49 |
|
Mikachu
| i don't think the diff mechanism has anything to do with merges though | 15:49 |
|
docwhat
| Mikachu: That's the diff viewer. I meant the merging process. | 15:49 |
|
Pieter
| docwhat: what you're really looking for is a custom merge driver though | 15:50 |
|
Mikachu
| you asked for a different diff mechanism | 15:50 |
|
spearce
| pasky, pjz: i'm not doing hardware support for android, and i know nothing about it, and besides, even if i did, i couldn't comment about whether or not we support (or will support) any particular hardware. at least not until after android launches and its code goes 100% open source. | 15:50 |
|
docwhat
| Sorry. I didn't know what term to use. | 15:50 |
|
| How can I find out about custom merge drivers? | 15:50 |
|
doener_
| docwhat: man gitattributes, as Pieter said | 15:50 |
|
Pieter
| spearce is busy converting the android code from perforce to git ;) | 15:51 |
| → babm joined | 15:51 |
| ← vbabiy_ left | 15:51 |
|
spearce
| hah. | 15:51 |
| ← babm left | 15:51 |
|
spearce
| there are some technical challenges behind open sourcing the code tree. | 15:52 |
| → digitalhobbit joined | 15:52 |
| → vbabiy joined | 15:52 |
|
spearce
| most of my 80% time is around those challenges, yes. | 15:52 |
|
yoh
| btw -- if anyone (like me) starts playing with that funky graph creation -- there is an example to draw full graph: http://git.or.cz/gitwiki/ExampleScripts#head-8f06066d9d57a06128491c0aef0d62f210c8b5cd | 15:52 |
|
Pieter
| and the 20% is jgit? :) | 15:52 |
|
Mikachu
| can you use your 20% time to sit at home and do nothing? : | 15:52 |
|
| ) | 15:52 |
|
docwhat
| doener_, Pieter : Thanks. | 15:52 |
| → netoman joined | 15:52 |
|
docwhat
| It looks like since the merge driver is specified in .config, it won't be passed through a clone... Is there a way to allow that? | 15:53 |
|
spearce
| no, you cannot use your 20% time to sit at home and do nothing. that might actually be a fireable offense. you have to use that 20% time to better yourself and/or better google. | 15:53 |
|
netoman
| Hello! Is there a way to cvsimport into a bare repo? | 15:53 |
| ← botanicus_ left | 15:53 |
|
Mikachu
| okay, that is what i thought | 15:53 |
| → offby1 joined | 15:53 |
| ← abizern left | 15:55 |
| → bobesponja joined | 15:55 |
|
docwhat
| How do you specify that .xml files should use a specific merge driver, then? | 15:55 |
|
spearce
| netoman: do the import using the cvsimport tools (or the fast-export.git based tools) and then mv .git ../proj.git to get a bare repository. | 15:56 |
|
docwhat
| Or will git try it automatically? | 15:56 |
|
robinr
| howdy Shawn | 15:57 |
|
| I'm back. | 15:57 |
|
doener_
| docwhat: same man page | 15:57 |
| ← nutrimatt left | 15:57 |
| → offby1` joined | 15:57 |
|
spearce
| Pieter: actually more than 20% of my time is allowed to go egit/jgit. for various reasons we have decided to try and accelerate egit development. so some of my newer egit work is now copyrighted by my employer, as its on their time and equipment. very fuzzy lines. | 15:58 |
|
| welcome back robinr. | 15:58 |
| ← jschoolc left | 15:58 |
| → bartocc joined | 15:58 |
|
robinr
| spearce: that's good news | 15:58 |
|
Pieter
| spearce: ah, cool.. I don't care much for egit, but I like jgit :) | 15:59 |
|
spearce
| yea. given that egit is very dependent upon jgit, this push for egit improvements does trickle down into jgit. | 16:00 |
|
docwhat
| doener_: Ah-hah. I see. The page confused me. I set the attribute "merge." Are gitattributes passed via clone? If so, what happens when you use a custom merge driver, since the .config isn't passed via clone.... | 16:00 |
| → offby1`` joined | 16:01 |
| → supercali joined | 16:01 |
| → sdiz joined | 16:01 |
|
netoman
| spearce: Great! Didn't know I could get rid of the working dir so easily... Thanks. | 16:01 |
| → kazim59 joined | 16:02 |
|
doener_
| docwhat: you can track the .gitattributes file, just like you can do that with .gitignore | 16:02 |
|
docwhat
| Ah. But the .config would have to be set up some other way, though, right? | 16:03 |
|
| It seems like there should be something like a .git-policy directory that contains things like default .config values, hooks, etc. So that they will survive a clone. | 16:03 |
|
kazim59
| schacon: hey, what software do you use to create those awesome slides at RailsConf Git Talk? | 16:04 |
| ← wildfire left | 16:04 |
|
Mikachu
| you don't want config and hooks to be on by default after a clone... | 16:04 |
|
schacon
| Keynote | 16:04 |
|
Mikachu
| echo rm -rf ~ >> hooks/pre-commit | 16:04 |
|
schacon
| or, the graphics? | 16:04 |
|
docwhat
| Mikachu: For an open source project, I agree...but when you trust your upsource, why not? | 16:04 |
|
kazim59
| schacon: thanks! love your slides, and git :) | 16:04 |
|
schacon
| Omnigraffle | 16:04 |
|
kazim59
| schacon: I don't know... both I guess. | 16:05 |
|
| schacon: oh oh.. they are for OS X, only :( | 16:05 |
|
schacon
| yeah, sorry. | 16:05 |
|
| you linux or win? | 16:06 |
|
kazim59
| schacon: linux. | 16:06 |
|
schacon
| Dia and OO can probably get the same thing done | 16:06 |
| ← garrin left | 16:06 |
|
kazim59
| schacon: i wish to give a talk like that at my college about git. | 16:06 |
|
madduck
| anyone working on packaging topgit for debian? | 16:06 |
|
schacon
| I can export it to PP for you if you'd like | 16:07 |
|
kazim59
| schacon: thanks a lot, but I guess I can extract slides from your presentation for my college, if your license allows that.. | 16:08 |
| ← charon left | 16:08 |
|
schacon
| yeah, np | 16:08 |
| → hobodave joined | 16:08 |
|
hobodave
| hi everyone, when using github, do 'forks' of a repository automatically stay in sync? | 16:08 |
|
kazim59
| schacon: thanks! | 16:08 |
|
schacon
| hobodave: no | 16:09 |
|
hobodave
| thanks | 16:09 |
|
| how do you sync it up then? | 16:09 |
| → offby1``` joined | 16:09 |
| ← offby1``` left | 16:10 |
| → bugfux joined | 16:16 |
| → bts- joined | 16:16 |
|
schacon
| hobodave: it's just a clone - you can either remove it and add it again, or you can clone it, add the other as a remote and merge them yourself. and auto-fast-forward would be an interesting feature, though | 16:16 |
| ← offby1 left | 16:16 |
| → towski joined | 16:16 |
| → cached joined | 16:16 |
|
schacon
| hobodave: I created a ticket for auto-ff to look into doing a bit later, if you want to follow it or comment on it : http://logicalawesome.lighthouseapp.com/projects/8570-github/tickets/805-auto-fast-forward | 16:16 |
|
hobodave
| cool, thanks :) | 16:16 |
| ← awx left | 16:16 |
| ← offby1` left | 16:16 |
| → tarbo_ joined | 16:16 |
| → wildfire joined | 16:16 |
| → awx joined | 16:16 |
| → enkrypt_ joined | 16:16 |
| ← enkrypt left | 16:17 |
| → mranostay_work joined | 16:18 |
|
mranostay_work
| hello | 16:18 |
|
| anyone know of a web frontend to gitosis? | 16:18 |
|
yoh
| is there easy way to get --children effect instead of --parents for rev-list? | 16:18 |
| → zawir joined | 16:18 |
| → kumbayo joined | 16:20 |
| ← unreal left | 16:20 |
|
Tv
| mranostay_work: for what part of it? it integrates with gitweb | 16:20 |
|
mranostay_work
| sorry i mean for administration as well | 16:20 |
| → perezd88 joined | 16:21 |
|
Tv
| mranostay_work: that is against the project goals | 16:21 |
|
Pieter
| http://img.thedailywtf.com/images/200808/errord/packagingmadness.jpg | 16:21 |
|
| heh | 16:21 |
|
Tv
| i mean, gitosis itself will not include a web user interface | 16:21 |
|
| and any web ui anyone writes is going to be "interesting", as it's going to need to understand merges | 16:22 |
|
madduck
| does Petr Baudis hang out on IRC? | 16:22 |
|
Pieter
| yes, as pasky | 16:22 |
|
madduck
| pasky: hi! :) | 16:22 |
|
pasky
| hi ;) | 16:22 |
|
madduck
| fwiw, I think I will give an introduction to topgit to the debconf crowd in 2.5 hours | 16:22 |
|
pasky
| cool :) | 16:22 |
|
madduck
| http://debconf8.debconf.org/video | 16:22 |
|
| if you want to watch and participate | 16:23 |
|
| pasky: so i am going to try it out now and also create a debian package. | 16:23 |
|
| 2 hours is ample time to understand it, right? :) | 16:23 |
|
pasky
| I'm afraid I won't be online from now+1h to now+4h :( but I'll be sure to at least replay the talk when I come back | 16:23 |
|
| madduck: well, hopefully ;) | 16:23 |
|
| BTW please use HEAD instead of 0.1 | 16:24 |
|
madduck
| https://penta.debconf.org/dc8_schedule/events/233.en.html | 16:24 |
|
| pasky: of course. :) | 16:24 |
| ← offby1`` left | 16:24 |
|
madduck
| so i better get going so i have time to ask you questions within the next 55 minutes. :) | 16:24 |
|
| pasky: btw, do you know bzr loom? does it compare? | 16:25 |
|
spearce
| i hate perforce | 16:25 |
| → bdiego joined | 16:25 |
| ← tarbo left | 16:26 |
|
pasky
| madduck: I've heard about bzr loom few days ago from another debconf guy ;) | 16:26 |
|
| but I'm not sure about its feature set, I didn't get around to try it myself | 16:26 |
|
madduck
| yeah, me neither | 16:26 |
| → Aikawa joined | 16:27 |
|
pasky
| I don't know how does bzr loom work in distributed environment and it seems to me it does not allow free-form dependencies | 16:27 |
|
madduck
| http://lists.alioth.debian.org/pipermail/vcs-pkg-discuss/2008-August/000271.html | 16:27 |
|
pasky
| but only linear ones | 16:27 |
| ← foca left | 16:27 |
| ← perezd88 left | 16:27 |
|
madduck
| yeah | 16:27 |
|
| so pasky++ for doing it right. :) | 16:27 |
|
pasky
| ;) | 16:27 |
| → foca joined | 16:28 |
|
Pieter
| pasky: I don't think it works distributed (looms)? | 16:28 |
|
pasky
| oh, it doesn't? | 16:28 |
|
| in that case loom would be more on par with stgit? | 16:28 |
|
Pieter
| I think so | 16:28 |
|
pasky
| in that case loom doesn't sound interesting at all, I think | 16:28 |
| ← reel_ left | 16:28 |
|
pasky
| I thought the point was it is possible to have it distributed | 16:29 |
|
madduck
| i am pretty sure bzr loom is distributed | 16:29 |
|
| madduck glares at $PREFIX/libexec/topgit | 16:29 |
|
Pieter
| ah, they are | 16:30 |
|
wildfire
| pasky, as far as I understand bzr loom is similiar to your 'topgit' | 16:31 |
|
| it allows multiple people to work on a topic branch | 16:31 |
| → ilogger2 joined | 16:36 |
|
pasky
| madduck: I think it would be nice | 16:36 |
|
powr-toc
| madduck: so I don't need to do anything special? | 16:36 |
|
| sweet. | 16:36 |
|
wildfire
| pasky, I do not known how it weaves those two things together | 16:36 |
|
machrider
| the only time you need to do anything special is when you interact with subversion | 16:36 |
|
| the rest of the time, it's plain old git | 16:37 |
|
powr-toc
| machrider: cool | 16:37 |
|
pasky
| Pieter: ok | 16:37 |
|
| Pieter: still don't understand your original sentence though :) | 16:37 |
|
Pieter
| pasky: then, when switching up, the changes in the threads down (the dependencies in topgit) are merged into the current thread | 16:37 |
|
pasky
| what is "switching"? | 16:37 |
|
| probably not just like git checkout? | 16:37 |
|
Pieter
| actually, yes | 16:38 |
|
pasky
| oh | 16:38 |
| → Sho_ joined | 16:38 |
|
pasky
| so it's like automatically calling tg update on git checkout? | 16:38 |
|
Pieter
| yes | 16:38 |
|
pasky
| hmm | 16:38 |
|
| curious | 16:38 |
|
madduck
| pasky: done. | 16:39 |
|
Pieter
| pasky: Integrating the changes from upstream into your loom is straightforward now. When you go up a thread bzr will automatically perform a merge, and you simply need to check that the merge came out correctly and then commit it. | 16:40 |
|
| so it's like a merge --no-commit on checkout | 16:40 |
|
madduck
| thread == topic branch with one patch? | 16:40 |
|
| (but many commits?) | 16:40 |
|
Pieter
| yes, exactly | 16:40 |
|
| so a thread is really like a tg branch | 16:41 |
|
Oejet
| spearce: You sound old, and bitter. :P | 16:41 |
|
pasky
| I see | 16:41 |
|
| well, I can't say I would identify with such a behaviour | 16:42 |
|
spearce
| Oejet: old, not yet. bitter, probably. but i'm not sure what comment of mine you are basing this on. its been a while since i said anything. :) | 16:42 |
|
pasky
| I prefer the user having to update explicitly | 16:42 |
|
| maybe Oejet likes perforce | 16:42 |
|
j_engelh
| How could you like perforce??!! | 16:43 |
|
Oejet
| I have no reason to hate Perforce, because I never tried it. :) | 16:43 |
|
j_engelh
| perforce is slow like svn, to begin with. | 16:43 |
|
madduck
| pasky: bzr and git differ on commit/merging/updating/auto-doing stuff all over the place in this way | 16:43 |
|
Pieter
| I thought perforce was based for speed? :) | 16:43 |
|
| *build | 16:43 |
|
j_engelh
| if it crashes twice a day? | 16:43 |
|
spearce
| perforce doesn't have fancy things like "git log --grep=foo -- path" like git. i miss it. | 16:44 |
|
madduck
| pasky: so assume I have master->A->B and master->C topic branches | 16:44 |
|
| and now I create D to depend on A and C | 16:44 |
|
| there will be conflicts in .topmsg | 16:44 |
|
| is that by design? I don't see whyt .topmsg shouldn't just be recreated from scratch, rather than merged. | 16:45 |
| → ferdy joined | 16:45 |
|
Oejet
| Well, what does Perforce then have, that Git does not? | 16:46 |
|
vmiklos
| commercial support? (just guessing) | 16:46 |
|
madduck
| Oejet: better visualisation | 16:47 |
| → perezd88 joined | 16:47 |
|
Pieter
| I guess that's also why bazaar has been getting so much attention | 16:47 |
|
schacon
| single point of failure? | 16:47 |
|
| :) | 16:47 |
|
Pieter
| the Canonical guys seem really keen on helping projects convert | 16:47 |
|
madduck
| you should be at debconf. :) | 16:47 |
|
| every time someone says git, a canonical guy is around to argue | 16:48 |
|
| well, that's immensely exaggerated. :) | 16:48 |
|
schacon
| Bazzar? Really? I was under the impression that bazaar was similar to git except much, much slower | 16:49 |
|
madduck
| apparently the speed issue has been fixed, but it's not similar to git at all | 16:49 |
|
Pieter
| Bazaar has some really weird conventions that differ from git | 16:49 |
|
madduck
| they both do the same thing (source control), but completely different | 16:49 |
|
Pieter
| and Bazaar is still pretty slow in my testing | 16:50 |
|
madduck
| pasky: another thing... after I created D to depend on A and C, there is no branch D created | 16:50 |
|
pasky
| madduck: that is a bug | 16:50 |
|
schacon
| oh, i thought bz used snapshot storage similar to git, not delta based | 16:50 |
|
pasky
| madduck: this should work | 16:50 |
|
| (the merging) | 16:50 |
|
madduck
| instead, I am left on a detached head | 16:50 |
|
pasky
| does this happen with HEAD? | 16:50 |
|
madduck
| yes | 16:50 |
|
pasky
| that's strange | 16:50 |
|
| will have a look on that | 16:50 |
|
Pieter
| schacon: yeah, but that's not really a pro or con for speed | 16:50 |
|
schacon
| i meant, in it being 'similar' to git - i figured it was slow because it's in python instead of C | 16:51 |
|
Pieter
| well, one of the storage models is based on the same model as git.. but they used to have delta storage and some other things | 16:51 |
|
madduck
| pasky: http://scratch.madduck.net/.tmp__vit.LSx11383 shell snapshot and http://scratch.madduck.net/.tmp__cdt.CkWx9455.tar.gz git repo | 16:52 |
|
Pieter
| storage model really doesn't matter at all for the end user | 16:52 |
| → ciaran29_ joined | 16:52 |
| → jas4711 joined | 16:52 |
| → selckin joined | 16:53 |
| ← selckin left | 16:53 |
| ← ciaran29_ left | 16:54 |
|
pasky
| madduck: what git version? | 16:54 |
|
madduck
| 1.5.6.3 | 16:54 |
|
| pasky: ^ | 16:54 |
| → selckin joined | 16:54 |
| → AhtiK joined | 16:55 |
| → lolage0 joined | 16:56 |
|
pasky
| tg: Please commit merge resolution and call: tg create | 16:56 |
|
| I think you forgot this after git commit? | 16:56 |
| → shingo joined | 16:57 |
|
madduck
| pasky: yeah, that was it. | 16:58 |
|
pasky
| oh | 16:58 |
|
| oh... | 16:58 |
|
| what _shell_ do you use?! :) | 16:58 |
|
madduck
| zsh | 16:58 |
|
pasky
| I mean, your /bin/sh | 16:58 |
|
madduck
| dash | 16:58 |
|
pasky
| hm | 16:58 |
|
| and it, um, doesn't know echo -e? ;) | 16:59 |
|
madduck
| i don't think so | 16:59 |
|
| -e | 16:59 |
|
pasky
| pasky@pixie:~/src/topgit> git grep 'echo -e' | 16:59 |
|
| tg.sh: echo -e ".topmsg\tmerge=ours" | 16:59 |
|
| tg.sh: echo -e ".topdeps\tmerge=ours" | 16:59 |
|
| :) | 16:59 |
|
| that's the problem | 16:59 |
|
| ok | 16:59 |
|
madduck
| ouch | 16:59 |
|
| bashism. :) | 16:59 |
|
dato
| trivial to fix :) | 16:59 |
|
madduck
| pasky: do you have time to commit that fix still? :) | 17:00 |
|
| *hint* *hint* :) | 17:00 |
|
pasky
| sure | 17:00 |
|
| just pushed it out :) | 17:00 |
|
Pieter
| what's the fix then? | 17:00 |
|
pasky
| you'll need to rm .git/info/attributes | 17:00 |
|
Pieter
| ah | 17:00 |
| → foca_ joined | 17:00 |
|
madduck
| oh, I see how this works. | 17:00 |
|
| yeah, that fixes things | 17:01 |
|
| pasky: if you want I can also make a patch | 17:01 |
|
pasky
| what patch? | 17:02 |
|
madduck
| for the echo -e thing | 17:02 |
|
| Pieter: echo ".topmsg<09>merge=ours" | 17:02 |
|
pasky
| as I said, it's already pushed out :) | 17:02 |
|
| http://repo.or.cz/w/topgit.git | 17:02 |
|
madduck
| ah, missed that line | 17:02 |
|
| thank you! | 17:02 |
|
pasky
| well, thanks for the report ;) | 17:02 |
|
madduck
| i love under-pressure talk preparation when the people related to the subject are on IRC | 17:03 |
|
Oejet
| madduck: How long until your presentation begins? | 17:03 |
|
Pieter
| how'd you fix a \n with an echo -e then? | 17:03 |
|
madduck
| Oejet: just under 2 hours | 17:03 |
|
| Pieter: echo "bla bla | 17:03 |
|
| " | 17:03 |
|
| just include the newline | 17:03 |
|
Pieter
| that's not very nice | 17:04 |
|
madduck
| POSIX is not very nice. :) | 17:04 |
|
| Pieter: or you use cat <<_eof | 17:04 |
|
| heredocs | 17:04 |
|
| or multiple echo calls. | 17:04 |
|
Oejet
| madduck: I cannot wait. :) | 17:05 |
|
madduck
| i hope you don't have too high expectations. :) | 17:05 |
| → chris2_ joined | 17:06 |
| → BabelO_ joined | 17:08 |
|
pasky
| I think I'll finally implement remote topic branches support tonight | 17:08 |
| ← BabelO_ left | 17:08 |
|
madduck
| pasky: when i do tg export, the goal is a flattened series, right? | 17:09 |
|
| for upstream. but the patches include .topdeps and .topmsg... :/ | 17:10 |
|
pasky
| do they? | 17:10 |
|
| they shouldn't | 17:10 |
|
madduck
| they do. :) | 17:11 |
|
pasky
| hmm | 17:11 |
|
| they indeed do :) | 17:11 |
|
madduck
| hey, and how does one pronounce your name? | 17:12 |
|
| Petr seems straight forward. | 17:12 |
| → npgoog joined | 17:12 |
|
pasky
| bah, stupid git-update-index | 17:12 |
|
madduck
| Baudis is that Bohdis or Bowdis? | 17:12 |
|
pasky
| Bowdis is closest, but it's "ow" as in "wow", not "bow" ;) | 17:12 |
|
madduck
| yeah, what I thought. | 17:13 |
| → adante_ joined | 17:13 |
|
madduck
| cool, this will be a fun, impromptu live demo. :) | 17:14 |
| adante_ → adante | 17:14 |
|
pasky
| madduck: anyway, fixed, pushed out :) | 17:14 |
| → vbabiy joined | 17:14 |
|
madduck
| pasky: can you explain one last thing to me? with one cleanup only when you push upstream, do you mean tg export? | 17:15 |
|
| so upstream never sees your tg branches | 17:15 |
|
pasky
| yes | 17:15 |
|
madduck
| but you export them to a patch series and then pull, cheryr-pick, format-patch, quilt etc. | 17:15 |
| → Zao joined | 17:15 |
|
madduck
| sweet. this is *awesome* | 17:15 |
|
pasky
| well it's not patch _series_, since it's still non-linear - but you can linearize that easily using git log's --topo-order | 17:16 |
|
madduck
| this seems to be *exactly* what was lacking from the debian git packaging workflow that I have been harping on and on about for almost two years now. | 17:16 |
|
pasky
| cool :) | 17:16 |
|
| another thing is how well will this scale with many tens of patches; but we can always rewrite it in C ;) | 17:17 |
|
madduck
| sure thing | 17:17 |
|
| what, the software is now 10 days old? :) | 17:18 |
|
| see it first at debconf! :) | 17:18 |
| ← npgoog left | 17:18 |
|
madduck
| where on the Rhine were you sitting when you hacked this up? | 17:19 |
|
| pasky: ^ | 17:19 |
|
pasky
| Basel | 17:19 |
|
| madduck is from Zurich :) | 17:19 |
|
pasky
| cool :) | 17:19 |
|
telmich
| pasky: wtf? why are you so near? | 17:19 |
| ← adante left | 17:19 |
|
telmich
| madduck: gossau ZH | 17:19 |
|
pasky
| lol | 17:19 |
| → adante joined | 17:19 |
|
pasky
| we gotta meet sometime ;) | 17:19 |
|
telmich
| ack | 17:19 |
|
madduck
| pasky: you live there? | 17:19 |
|
yoh
| gy gy -- I am progressing a bit with my "graphviz based git tree collapsed graph" -- now I just need to figure out (besides parsing comment) on to which branch that merge belonged at that moment -- could it be done easily? | 17:19 |
|
pasky
| I'm here from July to start of October | 17:19 |
|
| summer internship | 17:19 |
|
telmich
| madduck: zurich city? | 17:20 |
|
madduck
| maybe in the context of http://openexpo.ch/ | 17:20 |
|
| telmich: oerlikon | 17:20 |
|
telmich
| madduck: that's in the midst of the week :-( | 17:20 |
|
madduck
| pasky: i am gone from zurich until sep 23 | 17:20 |
|
| pasky was in zurich two days ago ;) | 17:20 |
|
madduck
| i know, telmich. | 17:20 |
|
pasky
| I've been thinking about openexpo but it's in the middle of the week | 17:20 |
|
telmich
| pasky: and why did't you tell? ;-) | 17:20 |
|
pasky
| so that's probably not going to fly for me | 17:20 |
|
madduck
| i might come to basel on 26 september with a friend. | 17:21 |
|
pasky
| telmich: didn't expect many people from here to be from CH :) | 17:21 |
|
| oh, cool | 17:21 |
|
telmich
| pasky, madduck: if you want to, we can meet here in gossau for an evening, there's plenty of space available at my home | 17:21 |
|
pasky
| sounds nice | 17:21 |
|
| I also have some more friends in zurich I found out about only after I've returned from there ;) | 17:22 |
|
| so I'll be probably going there at least once again yet | 17:22 |
|
telmich
| lol | 17:22 |
|
madduck
| lapse:~/.tmp/cdt.CkWx9455|test4|% tg update #8259 | 17:22 |
|
| /home/madduck/.tmp/cdt.HLSx9918/libexec/topgit/tg-update: 90: Bad substitution | 17:22 |
|
telmich
| madduck: are you related to the ccc zurich or the lugs? | 17:22 |
|
madduck
| neither | 17:22 |
|
pasky
| anyway, plenty of time to arrange that yet - will be great to meet you guys though | 17:22 |
|
madduck
| not anymore at least | 17:22 |
|
pasky
| I really have to le... | 17:22 |
|
| wha, bad substitution? | 17:22 |
|
telmich
| are you guys doing bashism? ;-) | 17:22 |
|
madduck
| pasky: I think action="${depline:0:1}" | 17:23 |
|
telmich
| yep, bashism | 17:23 |
|
pasky
| there is "fi" at line 90 of my tg-update | 17:23 |
|
| hmm | 17:23 |
|
| that's one downside of rhine | 17:23 |
|
| I don't have offline SUS reference | 17:23 |
|
telmich
| pasky: hehe | 17:23 |
|
madduck
| is that substring extraction? | 17:23 |
|
telmich
| pasky: you've internet near the rhine | 17:23 |
| ← adante left | 17:23 |
|
pasky
| not really | 17:24 |
|
madduck
| telmich: http://kerneltrap.org/mailarchive/git/2008/8/3/2795494, first para | 17:24 |
| → ijcd joined | 17:24 |
| → adante joined | 17:24 |
|
pasky
| there are some paid hotspots, but at points I don't use to sit anyway | 17:24 |
|
telmich
| pasky: depends on where you are; if you stay near the restaurant and a little bit into the east you've | 17:24 |
|
pasky
| "the" restaurant? | 17:25 |
| → LostInTheWorld joined | 17:25 |
|
madduck
| pasky: make sure to go to schaffhausen to see the rhine falls! | 17:25 |
|
| pasky notes that :) | 17:26 |
|
Oejet
| madduck, pasky, telmich: I am also in ZH! | 17:26 |
|
madduck
| "Rheinfelden" | 17:26 |
|
pasky
| :) | 17:26 |
|
| lol | 17:26 |
| → ijcd_ joined | 17:26 |
| → DrFrasierCrane joined | 17:26 |
|
madduck
| pasky: what does ${depline:0:1} and ${depline:1} do? | 17:26 |
|
pasky
| first one takes the first character | 17:27 |
|
madduck
| yeah, i just tried | 17:27 |
|
pasky
| second one trims the first character | 17:27 |
|
| action="$(echo "$depline" | cut -c 1)" | 17:27 |
|
| dep="$(echo "$depline" | cut -c 2-)" | 17:27 |
|
| so this one should be equivalent | 17:27 |
|
madduck
| trimming is ${depline#*?} | 17:27 |
|
pasky
| can you check if that fixes it? | 17:27 |
|
| huh | 17:27 |
|
Oejet
| pasky: I am looking for an internship. | 17:28 |
|
pasky
| why not just #? ? | 17:28 |
|
madduck
| don't know. :) | 17:28 |
|
pasky
| madduck: anywya, does it work for you? | 17:29 |
|
| pasky thinks so far all topgit users were using bash ;) | 17:29 |
|
madduck
| the cut solution does, yes | 17:29 |
|
pasky
| ("those debian guys..." ;) | 17:29 |
|
madduck
| the subst one does not | 17:29 |
|
pasky
| ok | 17:29 |
|
madduck
| weirdlly. | 17:29 |
|
pasky
| hmm | 17:29 |
|
| curious | 17:29 |
|
| I'll just commit the cut one now | 17:30 |
|
| can worry about performance later :) | 17:30 |
|
madduck
| yeah | 17:30 |
|
pasky
| ok | 17:31 |
|
| pushed out | 17:31 |
|
| and I'm really off now ;) | 17:31 |
|
| good luck with the talk :) | 17:31 |
|
madduck
| thx | 17:32 |
| → amystrat joined | 17:34 |
| → ph^_ joined | 17:36 |
|
BugeyeD
| hi all. any way to imbed tags such as can be done with rcs (eg. $Id$ and $Log$) ? | 17:37 |
|
doener_
| gitattributes(5) | 17:38 |
|
| but for version numbers "git describe" is the better choice | 17:38 |
|
BugeyeD
| excellent, thanks! my google-fu is severely lacking ... | 17:39 |
|
doener_
| *shrugs* To me, the $Id$ stuff is totally useless | 17:39 |
| → CodeOfficer joined | 17:40 |
|
BugeyeD
| i'm accustomed to 'head script' showing the relative version of a script, i'm just trying to replicate that with git. in my case, git won't be available on every box running said scripts. | 17:40 |
| ← ijcd left | 17:42 |
| → bryanray joined | 17:42 |
|
telmich
| Oejet: where are you exactly? | 17:42 |
|
Oejet
| telmich: I watched your presentation at the Google Open Source Jam, although I did not get a chance to say hi. :( | 17:42 |
|
telmich
| Oejet: ahh, ok :)- | 17:43 |
|
Oejet
| telmich: 8006 | 17:43 |
|
telmich
| lol, so near | 17:43 |
|
| hmm, did we already have a git talk at OSSJ in zurich? ;-) | 17:43 |
|
Oejet
| telmich: Hm, I don't know, but it could be very nice. | 17:45 |
|
Modius
| In a (solo) development mode where one tries to check in frequently upon incremental improvement, using GIT, is it idiomatically "done" that you just check these in as separate commits, or try to consolidate them into lower granularity commits through amending a prior? | 17:47 |
| → BabelO_ joined | 17:47 |
| → richcollins joined | 17:48 |
| ← shingo left | 17:48 |
|
richcollins
| How do I show which files where modified for each commit when doing a git log | 17:48 |
|
| ?? | 17:48 |
| ← ph^_ left | 17:48 |
| → shingo joined | 17:49 |
|
vmiklos
| git log --name-status? | 17:49 |
|
| man git-log :) | 17:49 |
| chris2_ → chris2 | 17:49 |
| ← BabelO_ left | 17:52 |
| → BabelO joined | 17:54 |
| → emlprime joined | 17:55 |
|
selckin
| i have a semi public repo at a certain url, if i replace it with a new one (i know, bad), and people try to pull from the new one with an old clone, will git complain graceful, or is there a chance to break their local repo to a point they can't recover their own changes? | 17:55 |
|
cypher23
| selckin, git will complain | 17:56 |
|
| but that's basically it | 17:56 |
|
| git won't overwrite any local changes | 17:56 |
|
drizzd
| might still be confusing though. It's like changing all your history | 17:57 |
|
cypher23
| yes | 17:57 |
|
| rebasing their changes on your new history might also be a PITA | 17:58 |
|
selckin
| yea pita is fine ;), thanks | 17:59 |
| → rwaite joined | 17:59 |
| ← adante left | 18:00 |
|
amystrat
| I created a remote branch and a tracking branch. If I make changes to local tracking branch and push, it states "everything up to date" and does not push changes to remote branch. Any ideas? | 18:01 |
| → adante joined | 18:01 |
| → eikonos joined | 18:02 |
|
richcollins
| Why would I get this error when pushing to a bare repo? | 18:03 |
|
| fatal: hard reset makes no sense in a bare repository | 18:03 |
| ← lolage0 left | 18:04 |
| ← adante left | 18:04 |
| ← rwaite left | 18:05 |
| → blowery joined | 18:06 |
| → adante joined | 18:06 |
| → ajonat joined | 18:07 |
|
albertito
| richcollins: do you have any hook activated? | 18:07 |
|
Mikachu
| rickrolling: you must have a hook enabled in there that tries to do a hard reset, presumably to update the working tree on push, which doesn't make sense on bare repos | 18:07 |
|
richcollins
| Hrm I don't remember adding one | 18:08 |
|
cypher23
| amystrat, how did you push? simply "git push"? | 18:08 |
|
amystrat
| cypher23, yes | 18:08 |
|
albertito
| richcollins: is the bare on a windows machine, or are you accesing it through samba? | 18:08 |
|
richcollins
| no | 18:08 |
|
| It is a linux machine | 18:08 |
|
| I'll check for hooks | 18:09 |
| → johnw joined | 18:09 |
|
cypher23
| amystrat, try "git push origin branch" (replacing origin and branch as needed) | 18:09 |
| ← blowery left | 18:10 |
| → blowery joined | 18:10 |
| ← blowery left | 18:10 |
| ← adante left | 18:10 |
|
richcollins
| albertito: Ah looks like someone added an email hook | 18:10 |
|
amystrat
| cypher23, thanks that worked. I don't remember having to do that before | 18:10 |
|
Mikachu
| having reset --hard in an email hook seems... odd | 18:11 |
| → ehc joined | 18:11 |
|
cypher23
| amystrat, how did you create the tracking branch? | 18:12 |
|
amystrat
| git --track localbranch origin/remotebranch | 18:13 |
|
| cypher23 ^ | 18:13 |
| ← ehc left | 18:13 |
| → bcarlyon|laptop joined | 18:13 |
|
albertito
| amystrat: assuming you said git checkout --track -b localbranch origin/remotebranch; actually, --track is the default when the other one is a remote AFAIR | 18:13 |
| → lolage0 joined | 18:14 |
|
yoh
| hey guys -- so that collapsed tree drawing... here is an example of my endavour http://www.onerussian.com/tmp/graph_example.png | 18:14 |
| → Sjaq joined | 18:14 |
| ← AhtiK left | 18:14 |
| → ehc joined | 18:14 |
|
yoh
| those dashed lines stay where multiple commits without merges (ie collapsed) | 18:14 |
|
cypher23
| amystrat, ok. But I think push only pushes the branches you specify (or you can use --all) | 18:14 |
|
yoh
| also trying to color merges appropriately -- ie depending into which branch we merge | 18:15 |
|
amystrat
| thanks guys | 18:15 |
| → adante_ joined | 18:15 |
| ← vbabiy left | 18:16 |
|
cypher23
| amystrat, according to the manpage (for Git 1.6.0.rc2) you can use "git push :" to push all local branches that also exist remotely. haven't tried that one though | 18:16 |
|
amystrat
| cypher23: interesting, I will have to give that a try | 18:17 |
| → Oejet joined | 18:17 |
| → vbabiy joined | 18:17 |
| → charon joined | 18:18 |
|
Mikachu
| cypher23: isn't that the default? | 18:18 |
|
cypher23
| amystrat, you can also do something in config for the remotes, to specify what gets pushed. see the man page | 18:18 |
|
| Mikachu, ah. Yeah, you're right. | 18:18 |
| ← adante_ left | 18:18 |
| ← Sjaq left | 18:19 |
| → chrisb joined | 18:19 |
|
drizzd
| yoh: that would be a very nice feature | 18:19 |
|
yoh
| it would be a nice feature for gitk... but not sure if I am ready to jump in to patch it :-/ | 18:21 |
| → adante_ joined | 18:21 |
| → david_koontz joined | 18:22 |
|
yoh
| and unfortunately building such a graph for a reasonably active project makes it quite huge | 18:22 |
|
drizzd
| you will probably have to understand gitk pretty well to do it | 18:22 |
| → warthog9 joined | 18:22 |
|
yoh
| drizzd, that too... and unfortunately have no time to do so heh heh | 18:22 |
|
drizzd
| hmm, maybe I'll look into it this weekend | 18:23 |
|
yoh
| drizzd, that would be cool | 18:23 |
|
drizzd
| I'm thinking eventually we might even want to leave out the merge commits and just show the branches/tags | 18:24 |
|
| after all, it's not about individual commits any more | 18:24 |
| → joelr1 joined | 18:25 |
| → supercali joined | 18:25 |
|
drizzd
| but I like your idea because I think it should be doable with minimum changes to gitk | 18:25 |
|
yoh
| yeap -- that is what I was trying to grasp --- whenever you get into somebody's repository with a reasonable amont of branching -- hard to figure out workflow | 18:25 |
|
| having such a 'summary' might help | 18:25 |
|
drizzd
| exactly | 18:25 |
|
joelr1
| good day! i have shared access set up via git-shell but the files created keep acquiring g+r permissions instead of g+w. any way to fix that so that two people can commit? | 18:25 |
| ← adante_ left | 18:26 |
|
yoh
| so it could be not even those blobs for merges but rather 1 timeline per each branch with arrows from to whenever merge occured (or cherry picking ;-)) | 18:26 |
| → adante_ joined | 18:26 |
|
yoh
| do you know any efficient image viewer? I generated jpg for a real project and it is hard to view it -- image magic is difficult to scroll, gimp is slow, xzgv is crashing | 18:27 |
|
drizzd
| I use gimv (gimageview) | 18:27 |
|
| or ghostview | 18:27 |
|
Mikachu
| i don't think anyone has bothered writing a partial jpeg decoder for huge images | 18:28 |
|
Oejet
| yoh: A browser might also work. | 18:28 |
|
drizzd
| or imagemagick | 18:28 |
| ← adante_ left | 18:29 |
|
yoh
| Oejet, doh... sure ;-) | 18:29 |
|
drizzd
| Mikachu: what does that mean, 'partial decoder'? | 18:29 |
|
Mikachu
| drizzd: only decode what's shown on screen | 18:29 |
|
yoh
| firefox considers that jpg broken ... heh heh... lets see png | 18:29 |
|
Mikachu
| drizzd: a 100000x100000 jpg at 10MB will hardly fit in ram decoded | 18:30 |
|
| rockbox decodes on demand when scrolling in the image | 18:30 |
| ← ijcd_ left | 18:30 |
|
drizzd
| I see your point. But I'm sure you can also reduce the resolution of your camera ;-P | 18:30 |
|
Mikachu
| sure but we're talking about big generated graphs here | 18:31 |
|
yoh
| same for png... so the only choice is imagemagic but it is inconvinient.... -- that scroll 'preview' is too narrow to navigate in X direction | 18:31 |
|
| file is 2977 x 38555 | 18:31 |
|
| ;-) | 18:31 |
|
| you are welcome to look http://www.onerussian.com/tmp/graph.jpg | 18:32 |
| → adante joined | 18:32 |
| → sgrimm joined | 18:32 |
|
yoh
| my code is still missing reliable detection of the original branch where that merge/commit occured -- is there any git way to deduce what was the branch? | 18:33 |
| → FH` joined | 18:33 |
| ← amystrat left | 18:33 |
|
Mikachu
| you made my duck go upside down | 18:33 |
|
| hm, it decoded but it only shows gray :) | 18:34 |
|
albertito
| my firefox hang himself with that image | 18:34 |
|
yoh
| gy gy -- firefox on my other box just crashed while opening | 18:34 |
|
| so please be careful | 18:34 |
|
drizzd
| hmm, gimv fails to display anything but the top | 18:35 |
| → Daenyth|Work joined | 18:36 |
| → alb joined | 18:36 |
|
Daenyth|Work
| Does a git:// url always follow the form of "git://domain/projectname.git", or is it possible for it to be different | 18:36 |
|
Mikachu
| projectname can contain many slashes, but otherwise no :) | 18:37 |
|
Daenyth|Work
| mm | 18:37 |
|
vmiklos
| also you may omit '.git' if you configure the server that way | 18:37 |
|
Daenyth|Work
| ah | 18:37 |
|
| damn | 18:37 |
|
| hrm | 18:37 |
|
netoman
| I ammended a commit and now I can't push anymore... What happened?! Any clues? | 18:37 |
|
yoh
| inkscape is the winner!! | 18:37 |
|
Mikachu
| that's unexpected | 18:37 |
|
yoh
| it chooses too large font a bit but renders .svg nicely | 18:38 |
|
| with nicely browsing ;-) | 18:38 |
| alb → albertito | 18:38 |
|
Mikachu
| oh not the jpg file? | 18:38 |
|
yoh
| Mikachu, nope... sorry for the confusion | 18:38 |
|
Oejet
| yoh: How big is the SVG file? | 18:38 |
|
yoh
| I generated also svg for it from the same .dot | 18:38 |
|
| 600k ;-) | 18:38 |
| ← joelr1 left | 18:39 |
|
Daenyth|Work
| for anyone familiar with archlinux, I'm trying to find a way to allow a git:// url in the source array of a PKGBUILD... Trying to make a script which will automate either a clone/fetch, but I can't figure out a good way to make it work with $_gitname | 18:39 |
|
yoh
| aaa... I opened it in mozilla... now it is thinking -- you can grab it from the same url but with ext .svg | 18:39 |
|
Oejet
| yoh: I would guess your JPG image decompresses to about 450MB in memory. | 18:40 |
| → tweakism joined | 18:40 |
|
tweakism
| I just did git reset --hard HEAD^ | 18:40 |
|
| is there a way to undo that? | 18:40 |
|
Mikachu
| yes and no | 18:40 |
|
tweakism
| I just successfully wiped out 300 lines of code that were in HEAD but not in HEAD^ | 18:40 |
|
Mikachu
| if you had uncommitted working tree changes, those are gone | 18:40 |
|
| getting back HEAD is just a matter of git reset --hard HEAD@{1} | 18:40 |
|
| assuming you've done nothing else since | 18:40 |
| → AhtiK joined | 18:41 |
|
tweakism
| Mikachu: you're awesome | 18:41 |
|
Daenyth|Work
| Mikachu: I'm not familiar with that @{} notation, would you mind explaining it? | 18:41 |
|
Mikachu
| man git-reflog :) | 18:42 |
|
Daenyth|Work
| fair enough | 18:42 |
|
tweakism
| Mikachu: I guess the proper way to remove all WIP changes is git reset --hard HEAD, not HEAD^1, eh? | 18:42 |
|
Daenyth|Work
| tweakism: yes | 18:43 |
|
Mikachu
| you mean uncommitted? yes | 18:43 |
|
Daenyth|Work
| or you can use git stash if you just need to put them aside for a short while | 18:43 |
|
| and then work on them later | 18:43 |
|
albertito
| netoman: you can use git push -f, but *be aware* that if somebody has pulled your tree with the un-amended commit, you will make a terrible mess for him/she | 18:44 |
| ← adante left | 18:45 |
| → adante joined | 18:47 |
| → sbahra joined | 18:48 |
|
Oejet
| madduck: Good luck. :) | 18:49 |
|
yoh
| ok... probably enough of experiments for me for today... python script I've used is now online http://git.onerussian.com/?p=code/snippets.git;a=blob;f=graphviz_plot.py;h=d16668fd9c27c0460b2f273a6991dd68ceb14851;hb=HEAD | 18:50 |
|
netoman
| albertito: Thanks. Nobody has pulled from it yet, so no problem. | 18:50 |
| ← adante left | 18:50 |
|
yoh
| may be some time I will add subgraphs in there after better detection of the owning branches will get implemented -- it would be nice to have each branch in its own (most of the time) vertical (if possible) | 18:51 |
| foca_ → foca | 18:51 |
| ← DrFrasierCrane left | 18:51 |
| → adante joined | 18:52 |
|
Daenyth|Work
| __revision__ = '$Revision: $' | 18:52 |
|
| how do you use tags like that with git | 18:52 |
| ← adante left | 18:52 |
|
yoh
| nohow ;-) | 18:52 |
|
Mikachu
| Daenyth|Work: /topic | 18:53 |
|
albertito
| Daenyth|Work: man gitattributes | 18:53 |
|
Daenyth|Work
| thanks! | 18:53 |
|
yoh
| just elderly leftovers in my .emacs for automatically generated headers ;-) | 18:53 |
|
Daenyth|Work
| ew emacs ;P | 18:53 |
|
Mikachu
| oh wait, that url isn't in topic anymore | 18:53 |
|
| Daenyth|Work: sorry :) | 18:53 |
|
Daenyth|Work
| hehe np | 18:53 |
|
| thanks albertito | 18:53 |
| → Boman joined | 18:54 |
|
yoh
| albertito, hm -- thanks! I wasn't aware... not yet sure how/where to use but RTFM should help! | 18:55 |
|
albertito
| Daenyth|Work, yoh: you're welcome | 18:56 |
| bcarlyon|laptop → BCarlyon|Laptop | 18:56 |
|
Mikachu
| see http://tinyurl.com/yqpgv9 too | 18:57 |
| → ciaran joined | 18:59 |
|
yoh
| so it is a recent feature! cool... I started to panic that I didn't read manual / Linus' comments careful enough whenever I Started using git ;-) | 18:59 |
|
selckin
| is there an easy way to get a side-by-side diff from git diff ? | 19:00 |
|
Mikachu
| no | 19:00 |
|
yoh
| ah... what is wrong with me -- I mixed up 2008 and 2007 ;-) | 19:01 |
| → archis joined | 19:03 |
|
Mikachu
| also note the patch is rejected quite firmly :) | 19:03 |
| ← CodeOfficer left | 19:03 |
| → CodeOfficer joined | 19:03 |
| → towski joined | 19:04 |
| ← CodeOfficer left | 19:04 |
| ← tweakism left | 19:09 |
| ← vbabiy left | 19:09 |
| → alb joined | 19:09 |
| → vbabiy joined | 19:09 |
| → johnw- joined | 19:10 |
| → CodeOfficer joined | 19:12 |
| → CodeOffi_ joined | 19:12 |
| → ijcd joined | 19:12 |
| → CodeOff__ joined | 19:15 |
| → pygi joined | 19:17 |
| ← ajonat left | 19:18 |
| → icwiener joined | 19:21 |
| → statim joined | 19:21 |
| → xazmine joined | 19:24 |
| → lea_w1 joined | 19:24 |
|
xazmine
| Is there a way to combine a whole branch into just one commit? | 19:24 |
| lea_w1 → lea_w | 19:24 |
|
netoman
| I do git cvsimport and it imports an old revision of a file (1.21 instead of 1.22 wich is the latest). Am I doing something wrong? | 19:25 |
|
xazmine
| I'm using git-svn, and I'd like to commit a whole series of commits as just one commit to git-svn... | 19:25 |
| → Eridius|work joined | 19:26 |
| → ebel joined | 19:26 |
| ← johnw left | 19:26 |
| ← ciaran left | 19:26 |
| → ciaran joined | 19:27 |
| ← CodeOfficer left | 19:29 |
| → davi_ joined | 19:29 |
| ← ciaran left | 19:29 |
| → ciaran joined | 19:30 |
| → giom joined | 19:30 |
| CodeOff__ → CodeOfficer | 19:30 |
| ← giom left | 19:30 |
| ← albertito left | 19:31 |
| ← CodeOffi_ left | 19:31 |
|
yoh
| xazmine, man git-rebase , search for squash | 19:34 |
|
| not sure if there could be some negative side-effects due to git-svn | 19:34 |
| → polpak joined | 19:34 |
| ← ijcd left | 19:34 |
| alb → albertito | 19:36 |
| → ijcd joined | 19:42 |
| foca → foca|machito | 19:43 |
| foca|machito → foca | 19:44 |
| → _bdiego joined | 19:44 |
| _bdiego → bdiego | 19:44 |
| → PeterFA joined | 19:46 |
| → nutrimatt joined | 19:48 |
| → ph^ joined | 19:48 |
| → jaushman joined | 19:48 |
|
jaushman
| while setting up gitosis I run "sudo -H -u git gitosis-init < /tmp/id_dsa.pub" and I receive the error "IOError: [Errno 13] Permission denied: '/home/git/gitosis/projects.list.12603.tmp'"...anybody have any suggestions on solving this? | 19:50 |
|
Tv
| jaushman: sounds like user git can't write to /home/git | 19:50 |
|
| well /home/git/gitosis but still | 19:51 |
|
Daenyth|Work
| sounds like that to me also | 19:51 |
|
jaushman
| so, do I set that permission when I do "sudo adduser"? forgive me if my questions are remedial, but i'm new to Linux and Ubuntu | 19:54 |
| → k_dub joined | 19:54 |
|
jaushman
| the user is git and gitosis exists in /home/git | 19:55 |
| → Ademan joined | 19:56 |
| → rdavila_ joined | 19:56 |
| ← pygi left | 19:57 |
|
Tv
| jaushman: did you create /home/git yourself? | 19:57 |
| → CodeOffi_ joined | 19:58 |
|
Daenyth|Work
| jaushman: can you getent passwd | grep git | 19:59 |
|
jaushman
| Tv: yes, as part of adduser using "--home /home/git \" | 19:59 |
| → CodeOff__ joined | 19:59 |
|
Tv
| jaushman: ls -ld /home/git /home/git/gitosis | 19:59 |
| davi_ → davi | 20:00 |
| → giom joined | 20:00 |
| ← k_dub left | 20:00 |
|
jaushman
| Daenyth: git:x:108:114:git version control,,,:/home/git:/bin/sh | 20:00 |
|
| ls -ld /home/git /home/git/gitosis | 20:00 |
|
Daenyth|Work
| mm | 20:00 |
| ← giom left | 20:00 |
|
Daenyth|Work
| looks ok | 20:00 |
|
jaushman
| drwxr-xr-x 5 git git 4096 Aug 11 14:59 /home/git | 20:01 |
|
| drwxr-xr-x 8 root root 4096 Aug 11 14:39 /home/git/gitosis | 20:01 |
|
Daenyth|Work
| that's it | 20:01 |
|
| chown -R git.git ~git | 20:01 |
|
| as root | 20:01 |
|
Tv
| jaushman: how did that latter happen.. | 20:01 |
|
Daenyth|Work
| sudo mkdir? | 20:01 |
|
Tv
| jaushman: ok well why ;) | 20:01 |
|
jaushman
| wow...i've been staring at this for hours and didn't see that | 20:02 |
| → pjhyett joined | 20:02 |
|
Tv
| jaushman: i recommend a cardboard dummy | 20:03 |
| ← chris2 left | 20:04 |
| ← davi left | 20:04 |
|
jaushman
| :D thank you both | 20:04 |
|
madduck
| pasky: so topgit coverage was short but I think between that talk and the debian package, you'll soon have a few new users | 20:11 |
|
| better keep that shell script stuff POSIX-compliant! :) | 20:12 |
| ← Daenyth|Work left | 20:12 |
|
Oejet
| madduck: Nice talk. | 20:12 |
| → egn joined | 20:13 |
|
madduck
| thanks dude | 20:13 |
| → markkalderon joined | 20:14 |
| ← CodeOfficer left | 20:15 |
| ← CodeOffi_ left | 20:16 |
| CodeOff__ → CodeOfficer | 20:16 |
|
pasky
| hehe :) | 20:18 |
|
Oejet
| madduck: There has been some discussion about using vcs for package patch management in Fedora. | 20:21 |
|
madduck
| Oejet: i know. please let anyone know about vcs-pkg.org | 20:22 |
|
| we really ought to be working together. | 20:22 |
| → Auris-- joined | 20:24 |
|
Oejet
| madduck: So you read the "RFC: Exploded source repo layouts" thread by Doug Ledford? | 20:25 |
| → neoeinstein joined | 20:26 |
|
madduck
| nope, where? | 20:26 |
|
Oejet
| http://thread.gmane.org/gmane.linux.redhat.fedora.devel/89035 | 20:27 |
| → neoeinstein_ joined | 20:29 |
| ← neoeinstein left | 20:29 |
| ← emlprime left | 20:29 |
| → synsol joined | 20:31 |
| ← neoeinstein_ left | 20:31 |
| → tvw joined | 20:31 |
| → neoeinstein joined | 20:31 |
|
synsol
| hey all, im almost scared to ask this here but is there a git for windows? | 20:31 |
|
doener_
| in fact, two | 20:32 |
|
| on for cygwin, on using msysgit | 20:32 |
|
Oejet
| Also the see posts by the same author under the earlier thread: http://thread.gmane.org/gmane.linux.redhat.fedora.devel.announce/181/focus=88473 | 20:32 |
|
doener_
| s/on/one/g | 20:32 |
|
madduck
| pasky: feature request #1 from the crowds: convert existing branches to tg branches | 20:32 |
| ← neoeinstein left | 20:32 |
| → neoeinstein joined | 20:32 |
|
synsol
| really? do u know if either r good? | 20:32 |
| → fixUp joined | 20:33 |
| ← neoeinstein left | 20:33 |
|
madduck
| Oejet: are you a fedora developer? | 20:33 |
|
Oejet
| madduck: No, I just lurk. :) | 20:33 |
| → _graham_ joined | 20:34 |
|
madduck
| ic, would you write a mail to the thread to let them know about vcs-pkg? | 20:34 |
|
| i am on my way out now and will read the threads later | 20:34 |
| → ahti_ joined | 20:34 |
|
| doener_ buys a "y", an "o", an "a" and an "e" for synsol | 20:34 |
|
bremner
| what is the state of tg? is it worth trying to use | 20:34 |
|
doener_
| synsol: no, I don't know, I don't use Windows. | 20:34 |
|
| synsol: the msys one is called msysgit (ask Google about it). On cygwin, you can use the regular upstream stuff I think | 20:35 |
| → rdavila__ joined | 20:35 |
|
Oejet
| madduck: I do not dare to post to fedora-devel. :D | 20:36 |
|
synsol
| k, thx, btw i dont use it either, unfortunatly an ignorant/stupid company i do work for does | 20:36 |
|
| but they pay well so ill forgive them | 20:36 |
| ← CodeOfficer left | 20:36 |
| ← rdavila__ left | 20:37 |
|
madduck
| Oejet: alright. | 20:37 |
|
| bremner: yes | 20:37 |
|
bremner
| madduck: thanks | 20:37 |
|
madduck
| pasky: if you need a series of all patches, then you have to create a tg branch that depends on all of them, right? | 20:37 |
| → djinni joined | 20:38 |
|
Oejet
| madduck: A search on "vcs-pkg" on the fedora-devel archive turns up nothing relevant. | 20:38 |
|
madduck
| yeah, i am afraid it hasn't spread much yet | 20:38 |
|
pasky
| madduck: the feature request is too unclear | 20:41 |
|
| madduck: "series" usually means that each of the patch depends on exactly one other patch, except the first one | 20:42 |
|
jaushman
| newb still looking for help...running git clone git@<server>:gitosis-admin.git on local machine results in ERROR:gitosis.serve.main:Repository read access denied and i'm unclear where to look to resolve this permissions issue | 20:42 |
|
madduck
| pasky: i asked about it on the mailing list the other day. squashing tg trees into quilt series | 20:44 |
|
| tg export basically | 20:44 |
|
| and if you create a dummy tg branch which depends on all feature branches | 20:45 |
|
| and export that, you should get a series across all feature branches, no? | 20:45 |
| ← nonix4_ left | 20:45 |
| → redondos joined | 20:47 |
|
pasky
| ah | 20:47 |
|
| yes | 20:47 |
|
madduck
| i wonder if it would make sense to provide a feature for this | 20:48 |
|
| a squash-all feature | 20:48 |
|
pasky
| I call these dummy branches [STAGE]s (instead of [PATCH]es) | 20:48 |
|
madduck
| ok | 20:48 |
|
| i would love a command | 20:48 |
|
| tg make-series -o debian/patches | 20:48 |
|
| which would (possibly using a file to limit) export all branches to files in debian/atches | 20:48 |
|
| i suppose i could write thta. :) | 20:48 |
|
pasky
| what kind of files? | 20:49 |
|
madduck
| git format-patch output | 20:49 |
| ← AhtiK left | 20:49 |
| ← archis left | 20:49 |
|
madduck
| so 1. create stage branch, 2. export to tmp branch, 3. format-patch tmp branch to debian/patches/* | 20:49 |
|
| maybe debian/patches/series could be used to determine the branches | 20:50 |
|
| although no, that can't work | 20:50 |
|
pasky
| so something like tg export tmp; git rev-list master..tmp | xargs -l tg patch | 20:50 |
|
madduck
| the series file has to be created | 20:50 |
|
pasky
| er | 20:50 |
|
| not tg patch | 20:51 |
|
| git format-patch | 20:51 |
|
| so also without the -l ;) | 20:51 |
|
madduck
| git-format-patch master at the top of tmp would do it all | 20:51 |
|
pasky
| ah | 20:51 |
|
| yeah | 20:51 |
|
madduck
| git checkout tmp; git-format-patch -o debian/patches master | 20:51 |
|
pasky
| but I suspect in fact you want quilt series? | 20:51 |
|
madduck
| i'll hack this up later, okay? | 20:51 |
|
| yeah. but aren't git-format-patch files quilt-compatible? | 20:51 |
|
pasky
| but there is no series file... it would make sense to have something like tg export --quilt debian/patches | 20:52 |
|
| that would just do it all | 20:52 |
|
madduck
| yes, absolutely | 20:52 |
| ← ph^ left | 20:52 |
| ← rdavila_ left | 20:52 |
|
madduck
| including writing the debian/patches/series file | 20:52 |
|
pasky
| yes | 20:52 |
|
madduck
| that's a nice approach | 20:52 |
|
| i need to run out for a bit | 20:52 |
|
| if you havent' done it by the time i come back, i will. :) | 20:52 |
|
| ttfn | 20:53 |
|
pasky
| ;) | 20:53 |
| → flask-- joined | 20:53 |
|
flask--
| Is there a way to make a pattern in .gitignore that will make git track a directory but none of the files or subdirectories underneath it? | 20:54 |
|
Eridius|work
| flask--: git doesn't track directories | 20:54 |
|
flask--
| hmmm | 20:55 |
|
doener_
| flask--: just add a (tracked) .gitignore file in that directory | 20:55 |
|
| that one can just contain * | 20:55 |
|
flask--
| ahhhh | 20:55 |
| → tcoppi_ joined | 20:55 |
|
flask--
| you can do per-directory .gitignores ? | 20:55 |
|
doener_
| yep | 20:55 |
|
| flask-- does the git happy-dance | 20:55 |
|
j_engelh
| dance? http://www.youtube.com/watch?v=UX6e7sO1ss0 | 20:56 |
|
flask--
| heh | 20:58 |
| → yann_ joined | 20:59 |
| yann_ → yann | 20:59 |
| → cilly joined | 21:00 |
|
flask--
| http://photos1.blogger.com/blogger/6295/1280/320/dilbert.gif | 21:01 |
| → ckoehler joined | 21:01 |
| → glguy_ joined | 21:02 |
| ← chrisb left | 21:02 |
|
glguy_
| With a freshly git-gc'd repo, would one expect to see a performance difference in git-clone for http:// vs git:// urls? | 21:02 |
|
ckoehler
| how do you have two separate branches with features 1 and 2, if 2 depends on 1? i want code from both and use it together, by necessity, but want to keep them separate code wise | 21:03 |
|
| hope that made sense... | 21:03 |
|
| :) | 21:03 |
|
vmiklos
| glguy_: not really | 21:04 |
| → archis joined | 21:04 |
|
vmiklos
| the problem is that in most cases 1) you fetch, not clone 2) the repo is not freshly git-gc'd :) | 21:04 |
| → mw-home joined | 21:04 |
|
mw-home
| git seems hard to learn. where's a good place to start? | 21:04 |
|
j_engelh
| fetch not clone, shaken not stirred... | 21:05 |
|
polpak
| ckoehler: submodules possibly? | 21:05 |
|
doener_
| ckoehler: what do you mean by "separate"? Obviously, they can't be totally separated when 2 depends on 1 | 21:06 |
| → dragonball_ joined | 21:06 |
|
pasky
| so, how does debian/patches look like? | 21:06 |
|
| are the patches numbered? | 21:06 |
| ← mw-home left | 21:07 |
| → ereslibre joined | 21:07 |
|
doener_
| glguy_: clone shouldn't show any noteworthy differences. But fetch might. While git:// users only get a pack that contains what they need, http:// users will have to download the whole new pack, which can mean quite some overhead because they obviously download all the objects that you already have then | 21:08 |
|
| s/you/they/ | 21:08 |
| → pgregory joined | 21:09 |
|
pgregory
| hi all | 21:09 |
|
| can anyone help me to understand a merging scenario I've got? | 21:10 |
|
j_engelh
| real questions please... | 21:10 |
|
pgregory
| I'm struggling with the basic concepts of git, and really want to grasp it. | 21:10 |
|
doener_
| only if you care to explain it... | 21:10 |
|
pgregory
| sorry, I'll get to the point | 21:10 |
| → elux joined | 21:10 |
|
elux
| hey guys | 21:10 |
|
Oejet
| mw-home: What other VCS's do you know? | 21:11 |
|
ckoehler
| doener_: no, not totally separate | 21:11 |
| ← fixUp left | 21:11 |
|
elux
| how can i convert a svn repository into git? | 21:11 |
| → fixUp joined | 21:11 |
|
doener_
| elux: git-svn | 21:11 |
|
ckoehler
| just two different branches, features that are being worked on at the same time | 21:11 |
|
| but one depends on the other | 21:11 |
|
pgregory
| I have a local repo that has come from git-svn, I did git-svn init https://...., followed by git-fetch -r2368 | 21:11 |
|
ckoehler
| so eventually they will end up in the same branch, or master | 21:11 |
|
Eridius|work
| pgregory: not -r2368:HEAD ? | 21:12 |
|
ckoehler
| but for development, they are in two branches | 21:12 |
|
pgregory
| Eridius|work: I then did git-svn fetch, so yes in the end it is. | 21:12 |
|
ckoehler
| i guess they don't have to be dependent on each other even | 21:12 |
|
doener_
| ckoehler: assuming that "2" doesn't involve any merges, you could rebase 2 when you changed 1. But that's only a choice if you keep 2 local and don't push it out | 21:12 |
|
ckoehler
| just two features, in two branches, that i want to see at the same time | 21:12 |
|
pgregory
| and then I have git-svn and master, so I branch for work, using git checkout -b refcount | 21:12 |
|
| and now I have git-svn master and refcount, just as I want, all of which mirror the current HEAD of the SVN repo. | 21:13 |
|
ckoehler
| doener_: right, but then code from 1 is in branch 2 | 21:13 |
| → QuercusMax joined | 21:14 |
|
doener_
| ckoehler: if 2 depends on 1, the code _must_ be there *confused* | 21:14 |
|
ckoehler
| doener_: ya, sorry, scrap the dependency | 21:14 |
|
pgregory
| now, elsewhere I have another repo, that was originally based off the same SVN repo, but an earlier revision, and has some changes on it in a branch called attributes. | 21:14 |
|
ckoehler
| i have two separate features that are awesome | 21:14 |
|
pgregory
| I want to get the changes from the attributes branch into the refcount branch. | 21:14 |
|
ckoehler
| and i want to see them in a dev build at the same time | 21:14 |
|
doener_
| ckoehler: and you can easily limit eg. log output with "git log 1..2", or diff output with "git diff 1...2" | 21:14 |
|
pgregory
| and I can't get my head round how. | 21:14 |
|
ckoehler
| doener_: hm yeah... | 21:15 |
|
| isn't there some kind of patch management app for git? | 21:15 |
|
| so you can stack patches around? | 21:15 |
|
| not sure if it would help here | 21:15 |
|
pgregory
| anyone got any advice? | 21:15 |
|
doener_
| ckoehler: just use a scratch branch for testing. "git checkout -b tmp master; git merge 1; git merge 2; #Do some testing#; git checkout master; git branch -D tmp" | 21:16 |
|
pasky
| ckoehler: plenty of them | 21:16 |
|
| ckoehler: you can use just git with rebase -i for that | 21:16 |
|
| ckoehler: or you can use stgit or guilt | 21:16 |
|
| ckoehler: or if you ahve special needs, you can try for topgit, but it's still in very early development | 21:16 |
|
ckoehler
| doener_: good point | 21:16 |
|
| pasky: that's a lot of options, thanks! | 21:16 |
|
doener_
| pgregory: you repos are "incompatible" in so far that the two git-svn imports created different commits | 21:17 |
|
pgregory
| doener_: right, so am I stuffed then? | 21:17 |
|
doener_
| pgregory: no. You only want the stuff in "attributes" that is not in "git-svn" in the same repo, right? | 21:17 |
|
pgregory
| doener_: yes | 21:18 |
|
doener_
| pgregory: btw, you were the one with the home/laptop/work git-svn setup, right? | 21:18 |
|
pgregory
| doener_: yes | 21:18 |
|
doener_
| osiris or something :-) | 21:18 |
|
pgregory
| doener_: good memory :) | 21:18 |
|
doener_
| ok, do you remember the git rebase command I gave you back then? | 21:19 |
| ← glguy_ left | 21:19 |
|
pgregory
| doener_: unfortunately, after much reading I still don't feel much closer to proper understanding :( | 21:19 |
| → glguy_ joined | 21:19 |
|
pgregory
| doener_: yes, roughly, although I have to admit I didn't fully understand "why" that worked, and reading and re-reading the git-rebase manpage hasn't helped at all. | 21:20 |
|
doener_
| ok, we'll need basically the same thing again | 21:20 |
| → digitalhobbit_ joined | 21:20 |
| → loincloth joined | 21:21 |
|
doener_
| let's try to understand rebase once more then. Gimme a moment to prepare something | 21:21 |
|
pgregory
| doener_: really appreciate your help, I have a feeling that proper understanding of git would be a real benefit. | 21:21 |
| → Ryan52 joined | 21:21 |
| ← Ryan52 left | 21:22 |
| → flaguy joined | 21:23 |
| ← lolage0 left | 21:24 |
|
doener_
| pgregory: http://git.pastebin.com/m4299a0dc -- that creates a simple git repo with two branches and shows the result in gitk. I'll use that for some explanations | 21:24 |
|
| pgregory: let me know when you got the gitk running | 21:24 |
| → dramsay joined | 21:25 |
|
Modius
| Matthew Lamari | 21:28 |
| → skyweb joined | 21:29 |
| → SjB joined | 21:29 |
| ← derRichard left | 21:33 |
| ← vbabiy left | 21:33 |
| ← polpak left | 21:34 |
|
pgregory
| doener_: sorry, got disconnected | 21:35 |
|
doener_
| np | 21:35 |
| ← redondos left | 21:35 |
| ← BabelO left | 21:36 |
| → BabelO joined | 21:37 |
|
doener_
| pgregory: but you got the paste url, right? | 21:37 |
|
pgregory
| yep, done | 21:37 |
| → thannoy joined | 21:38 |
|
doener_
| ok, so in gitk, you should see that the side branch forked off at 2 | 21:38 |
|
pgregory
| yep | 21:38 |
|
j_engelh
| fork at 2, news at 11? | 21:38 |
|
doener_
| pgregory: so master and side-branch have two commits in common (1 and 2) | 21:38 |
|
pgregory
| right | 21:38 |
| ← xazmine left | 21:39 |
|
doener_
| pgregory: and each of the branches has two commits that are only in one of the branch, the "a" ones in master and the "b" ones in side-branch | 21:39 |
|
pgregory
| yep | 21:39 |
|
doener_
| now, when specifying revisions, you can say, for example, that you want commits that are in side-branch, but not in master. That is "side-branch ^master" or just "master..side-branch" | 21:40 |
| ← elux left | 21:40 |
|
doener_
| in this case, that range would contain 3b and 4b | 21:40 |
|
pgregory
| doener_: what does master..side-branch actually mean? | 21:41 |
|
doener_
| just what I said above. "master..side-branch" == "side-branch ^master". The ^ prefix means "not". So that's the commits that are reachable from side-branch, but not from master. | 21:41 |
|
| where "reachable" means that you can walk the graph that you see in gitk downwards. That is, you follow the edges in the graph from the child to the parent, but not the other way around (it's a directed graph) | 21:42 |
| → Sylia joined | 21:43 |
|
doener_
| so from "side-branch" you can walk to 4b, 3b, 2 and 1, but not to 3a and 4a | 21:43 |
|
| similarly, from master you can reach 4a, 3a, 2 and 1, but not 3b and 4b | 21:44 |
| ← BabelO left | 21:44 |
| → tlyng joined | 21:44 |
| → BabelO joined | 21:45 |
|
doener_
| pgregory: still unclear? | 21:46 |
| ← BabelO left | 21:46 |
|
pgregory
| doener_: sorry, just trying to digest | 21:48 |
|
doener_
| no problem, take your time. | 21:48 |
|
pgregory
| right clear | 21:48 |
|
| the syntax seems a little odd to me, .. is used as a 'range' operator in Ruby that I'm working with at the moment. | 21:49 |
| ← ckoehler left | 21:49 |
| ← richcollins left | 21:50 |
|
Eludias
| pgregory: In that case, be prepared that '...' is also something else. | 21:50 |
|
doener_
| right, that's what comes next :-) | 21:50 |
|
pgregory
| Eludias: cheers, I'll be sure to read up | 21:50 |
|
Eludias
| pgregory: '..' is also a kind of range operator (depending on the git command) | 21:50 |
|
doener_
| "master...side-branch" is similar. It means "all commits that are reachable from either master or side-branch, but not from both" | 21:52 |
|
Eludias
| pgregory: For example, 'git log a..b' shows _all_ revisions from a to b, while 'git diff a..b' shows _only_ the difference between a and b (so is independent on the intermediate revisions). | 21:52 |
|
doener_
| (note that with diff the meaning of .. and ... is different, because you don't specify ranges there, but let's ignore that for now) | 21:52 |
|
| pgregory: for some practice, which commits are in the range master...side-branch? | 21:53 |
| ← dragonball_ left | 21:53 |
| → kinection joined | 21:54 |
|
kinection
| how do you update a submodule? it seems like git submodule update is now doing anything. | 21:55 |
|
| *not | 21:55 |
|
| the item is registered in .gitmodules | 21:55 |
|
selckin
| did you init it? | 21:56 |
|
kinection
| there are files in there | 21:56 |
|
| i'm fairly sure i did in the past | 21:56 |
|
| i did it again | 21:57 |
|
wildfire
| Eludias, btw both of those commands will work the same without the '..' in them (as I learnt a few weeks ago) | 21:58 |
|
doener_
| wildfire: no, for log "a b" and "a..b" are quite different. For diff they're the same though | 21:59 |
| ← ereslibre left | 21:59 |
|
pgregory
| doener_: 3a,3b, 4a, 4b | 21:59 |
|
doener_
| pgregory: right | 21:59 |
|
| pgregory: ok, so let's move on to the rebase. You got the required basics now | 22:00 |
| cbrake → cbrake_away | 22:00 |
|
doener_
| the "full" format for rebase is: git rebase --onto <onto> <upstream> <branch> | 22:00 |
|
| pgregory: what rebase does, is that it tries to create new commits that introduce the same changes as some existing commits, but on top of a different base commit | 22:01 |
| ← glguy_ left | 22:02 |
| → jdarius joined | 22:02 |
|
doener_
| pgregory: say you have two patches that apply to version 1 of your program. Now version 2 is done and you want to update your patches. | 22:02 |
| → jackdempsey joined | 22:02 |
|
doener_
| pgregory: so instead of using version 1 as the base for your patches, you now want to use version 2 | 22:03 |
| → tona joined | 22:03 |
| ← tona left | 22:03 |
|
doener_
| pgregory: and that's just what rebase helps you to do. | 22:03 |
|
| pgregory: let's first look at the commits that rebase will try to "replay". | 22:04 |
|
| pgregory: and luckily, that's quite easy, because that is just <upstream>..<branch> | 22:04 |
|
| pgregory: let's say we want to move 3b and 4b, so that instead of 2, 3b has some different parent | 22:07 |
|
pasky
| madduck: (it's implemented) | 22:07 |
| ← tcoppi_ left | 22:07 |
|
doener_
| pgregory: the rebase command would then look like this "git rebase --onto <onto> master side-branch" | 22:07 |
|
| pgregory: because as we have seen earlier, "master..side-branch" contains just those two commits, 3b and 4b | 22:08 |
|
| pgregory: let me know when you digested that or if there are any questions | 22:09 |
| ← _graham_ left | 22:09 |
| → supercali_ joined | 22:09 |
|
jdarius
| i'm trying to git push origin master ssh:path/to/rep ... Q: how do I specify my username on the remote machine? (eg, "--user jdarius") | 22:09 |
| → bugfux joined | 22:10 |
| ← kinection left | 22:10 |
| → \ask- joined | 22:10 |
| → rmh3093 joined | 22:11 |
| → ereslibre joined | 22:12 |
|
jdarius
| is there a flag for that? I'm not too clear on git syntax conventions | 22:13 |
|
DrNick
| use normal ssh syntax | 22:13 |
|
| i.e. user@host:path | 22:13 |
|
doener_
| jdarius: that push command makes no sense. You're trying to push a branch called ssh | 22:13 |
|
DrNick
| and there's also that, too | 22:14 |
| → cbreak joined | 22:14 |
|
doener_
| jdarius: it's either "git push $remote_name $refspecs" or "git push $url $refspecs" | 22:14 |
| ← jaushman left | 22:15 |
|
pgregory
| doener_: did you mean "git --onto <onto> master..side-branch" ? | 22:15 |
|
| oh no, sorry just read | 22:15 |
|
jdarius
| reading up on this. thanks DrNick and doener_ | 22:15 |
|
doener_
| pgregory: :-) | 22:16 |
|
pgregory
| the rebase takes the two last parameters and effectively does the .. | 22:16 |
|
| confusing | 22:16 |
| → joydivider joined | 22:16 |
|
doener_
| pgregory: not necessarily. The thing is, you always rebase a branch, thus the name <branch>. | 22:17 |
|
pgregory
| so it considers all commits in that branch up to the fork? | 22:18 |
|
doener_
| pgregory: The <upstream> parameter defines your, well, upstream. You obviously don't want to alter things that are in your upstream | 22:18 |
|
| pgregory: right, in this case it simply walks up to the forking point. With a more complex history, the walking might not be as easy, but the idea stays the same. | 22:19 |
|
pgregory
| I'm trying to work out in my head what git will actually do, will it reapply the diffs for all thos commits to the HEAD of the current branch? | 22:20 |
|
doener_
| we didn't define that yet. So far, we only talked about the set of commits that it will try to re-apply | 22:20 |
| Auris-- → Auris- | 22:21 |
| → WALoeIII joined | 22:21 |
|
doener_
| Let's look at the upstream once more. Say you have "git rebase --onto <onto> origin/master master". | 22:21 |
|
| In that case "origin/master" is your upstream. Stuff that comes from some other repository on which you based your work. | 22:22 |
|
| So that rebase command would re-apply your commits in master that are not in origin/master. In other words: Your local commits. | 22:23 |
| → tusho joined | 22:23 |
|
doener_
| ok. Next stop: <onto>. That specifies the commit onto which you want to re-apply. | 22:24 |
|
| That's simple, right? ;-) | 22:24 |
|
| so: git rebase --onto master master side-branch | 22:25 |
|
| pgregory: what do you expect that to do? | 22:25 |
| → comex joined | 22:25 |
| ← supercali left | 22:25 |
| → eternaleye joined | 22:27 |
|
pasky
| hm | 22:27 |
|
| for the last 1.5 months, t/t5540-http-push.sh is broken | 22:28 |
| → tcoppi joined | 22:28 |
|
pasky
| but noone cares | 22:28 |
|
| pasky wonders if there's anyone in the world ever running this test ;) | 22:28 |
|
madduck
| pasky: :)) | 22:29 |
|
pgregory
| doener_: errm, reapply the changes on sidebranch to master at teh HEAD? i.e. 3b forks from 4a? | 22:29 |
| ← ijcd left | 22:29 |
|
vmiklos
| pasky: given that you need to do more than a 'make test' to run it, not too much people ;) | 22:30 |
|
doener_
| pgregory: try to avoid using HEAD or so for now (looks like you misunderstand that, we'll look at that later). But the general idea is right | 22:30 |
|
| pgregory: it takes the changes from 3b and 4b (ie. master..side-branch) and replays them on top of 4a | 22:31 |
|
pgregory
| yep, that's what I thought | 22:32 |
|
doener_
| pgregory: ok, so that's done for now. Now <branch> has another purpose other than just specifying the right hand side of the range. | 22:33 |
|
pasky
| madduck: is tg export --quilt satisfactory for you now? | 22:33 |
|
doener_
| After the rebase, <branch> is also updated to point to the result of the rebase. | 22:33 |
|
pasky
| the code turned out to be amazingly simple | 22:33 |
|
doener_
| pgregory: so in this case, when the rebase is done, side-branch is updated to point to the new 4b commit | 22:33 |
|
pgregory
| doener_: would it much up the lesson if I did that now? | 22:34 |
|
| just to see it visually in gitk. | 22:34 |
|
doener_
| pgregory: it would get you a bunch of conflicts due to the setup of the example | 22:34 |
|
pgregory
| oh | 22:34 |
|
doener_
| I'll quickly adjust that | 22:34 |
|
pgregory
| right, of course, silly me | 22:35 |
| → codeshot joined | 22:35 |
|
| pasky hopes gitster's back is alright again | 22:36 |
|
doener_
| pgregory: http://git.pastebin.com/m3a5c9bcc | 22:36 |
|
| pgregory: with that one, you can try the rebase | 22:36 |
| ← supercali_ left | 22:37 |
|
madduck
| pasky: about to try it out. | 22:37 |
| → lu_zero joined | 22:37 |
| ← Oejet left | 22:37 |
| → supercali joined | 22:37 |
|
madduck
| as i am packaging my first topgit-using package: topgit itself. :) | 22:37 |
|
jdarius
| ok, drnick and doener_ , I got it. For posterity, I was confused about what my 'git remote add' command in the previous step was doing. | 22:39 |
|
jaalto
| Is it normal that "git fetch -v" does not display a thing? I would expect to seen "Connecting...done" at leat if nothing is fetched. | 22:39 |
|
pasky
| madduck: :) | 22:39 |
|
doener_
| jdarius: -v makes it quite talkative here, even if there's nothing new to fetch: http://git.pastebin.com/m6b88d7ef | 22:41 |
|
jaalto
| I have 1.5.6.3 | 22:41 |
|
doener_
| sorry, I meant jaalto | 22:41 |
|
| 1.6.0rc2 here | 22:41 |
|
jaalto
| doener_: That's more like it (pastebin). I wonder if it makes any difference that the repo is under superrepository.. But still. | 22:42 |
|
doener_
| pgregory: oh, oops, the new example has a bug in it that causes it to miss the "1" commit. But that doesn't make much of a difference | 22:43 |
|
jaalto
| I also tried "git ls-remote origin" and it came empty. But I have repos downloaded from there as seen by "git branch -b" | 22:43 |
|
doener_
| branch -b? | 22:44 |
|
jaalto
| -a | 22:44 |
|
doener_
| maybe the remote repository got wiped or so? | 22:44 |
|
pgregory
| doener_: done, makes sense now | 22:45 |
|
doener_
| jaalto: your remote branches get only deleted by "git remote prune", not by plain fetching | 22:45 |
| ← cilly left | 22:45 |
|
pgregory
| doener_: in gitk I get effectively one long chain of commits. | 22:45 |
|
doener_
| pgregory: right | 22:45 |
|
pgregory
| presumably if I changes something and committed on master now, I'd see the familiar fork? | 22:45 |
|
doener_
| pgregory: exactly, because master still points to 4a | 22:46 |
|
jaalto
| doener_: Hm, I tried to clone th repository again (not mine; 3rd party). and this time it reads: "warning: remote HEAD refers to nonexistent ref, unable to checkout". So something is fishy or the repository is no longer there. | 22:46 |
|
pgregory
| right | 22:46 |
|
doener_
| jaalto: yeah, looks like the remote repo got wiped or so | 22:46 |
|
pgregory
| doener_: it's starting to gel now, and I think I can see the solution to my problem in the details. | 22:47 |
|
doener_
| pgregory: ok, you know about the commit^ and commit~ syntax, right? | 22:47 |
|
pgregory
| doener_: no | 22:47 |
|
jaalto
| doener_: Shouldn't the fetch say with -v something about that? | 22:47 |
|
doener_
| jaalto: the repo is just empty, it's still a repo. clone complains because it actually needs to use HEAD, fetch just sees that there is nothing and thus does nothing | 22:48 |
|
| jaalto: Might be a welcome addition to have some diagnostic message though | 22:49 |
|
jaalto
| doener_: Indeed. Plain <empty> is a little exotic. | 22:49 |
|
doener_
| pgregory: ok, first, the ^n syntax. With that one, you select a parent of a commit | 22:50 |
| ← bugfux left | 22:50 |
| → rdavila joined | 22:50 |
|
jaalto
| doener_: Thanks. | 22:50 |
|
doener_
| pgregory: so "master" points to the commit 4a, master^1 selects the first parent of master | 22:50 |
|
| pgregory: so in the example, that's the 3a commit | 22:50 |
|
pgregory
| doener_: oh, yes, sorry misread your comment, I thought you meant "git commit^" | 22:51 |
|
doener_
| pgregory: as a shorthand, master^ is the same as master^1 | 22:51 |
|
pgregory
| doener_: yep, read up on most of that. | 22:51 |
|
doener_
| ok | 22:51 |
|
| then for some more practice, recreate the second example, and then come up with a rebase command that creates a graph where 4b is a child of 3a | 22:52 |
| → ivarv joined | 22:52 |
| ← tlyng left | 22:53 |
|
pgregory
| doener_: ok, give me a sec. | 22:53 |
|
doener_
| side-branch should point to the new 4b after the rebase, and 3b should not be in side-branch anymore | 22:53 |
| → tlyng joined | 22:53 |
|
jaalto
| doener_: It looks like the project is dead. How do I remote this subproject from the superproject? | 22:53 |
|
doener_
| jaalto: no idea, didn't use submodules yet | 22:54 |
|
ivarv
| newbie q: i've got a local repo with a bunch of changes. I would like to reset *some* of those changes (ie: bring back a directory I deleted on the filesystem, but not via git). Is this possible ? | 22:54 |
|
doener_
| ivarv: so you didn't commit that deletion yet? | 22:54 |
|
ivarv
| doener_, nope | 22:54 |
|
jaalto
| doener_: ok, I'll skim the docs to refresh | 22:54 |
|
doener_
| ivarv: then "git checkout HEAD -- directory" | 22:54 |
| ← icwiener left | 22:55 |
|
ivarv
| doener_, awesome ! thanks so much | 22:55 |
|
| doener_, i would never have thought of checkout.. I was looking at revert and reset.. | 22:55 |
| → ft joined | 22:56 |
|
johnw-
| in I want my server's repo to contain an up-to-date working tree, it's enough to put "git reset --hard HEAD" into hooks/post-update, right? | 22:56 |
|
charon
| so i'm preparing a patch series that depends on jc/post-simplify in the middle of it (i.e. i want 2 patches in master, and 1 kept queued until later), but that dependency will inevitably result in conflicts | 22:57 |
|
| should i somehow send along the merge diff? | 22:57 |
|
| if so, can format-patch do that for me? | 22:57 |
| → _jarod joined | 23:00 |
|
pgregory
| doener_: nope, can't do it | 23:03 |
|
doener_
| pgregory: ok, let's start with the --onto parameter. Which argument would that require? | 23:03 |
|
pgregory
| I can get all of side-branch to fork off 3a using "git rebase --onto master^ master side-branch" but can't work out how to select only 4b to rebase. | 23:03 |
|
doener_
| ok, the --onto is correct, the side-branch as <branch> is also (obviously) correct | 23:04 |
|
| pgregory: now remember what we said about which commits get replayed. There was a simple rule to get the range. | 23:05 |
| → polpak joined | 23:05 |
| ← jdarius left | 23:05 |
| dwmw2 → dwmw2_gone | 23:05 |
|
doener_
| pgregory: your command uses the range master..side-branch | 23:05 |
|
pgregory
| doener_: <upstream>..<branch> | 23:06 |
|
doener_
| pgregory: but you need a range that only contains 4b | 23:06 |
|
pgregory
| hmm | 23:06 |
| ← skyweb left | 23:07 |
|
pgregory
| side-branch^ side-branch? | 23:07 |
|
flaguy
| doener_: in your running example with pgregeroy, second paste, line 9: s/file/file1/ Yes? | 23:07 |
|
doener_
| exactly, just that the range needs ".." in between (but not the rebase command) | 23:07 |
|
| flaguy: yep | 23:07 |
| → rdavila_ joined | 23:08 |
|
pgregory
| doener_: yeah, I was offering the arguments to the rebase command | 23:08 |
|
| pgregory just tries this... | 23:08 |
|
doener_
| ok, just wanted to clarify. And yeah, trying that is a good idea | 23:08 |
| → Hobbes joined | 23:09 |
|
pgregory
| done, and all makes sense, but what's happened to 3b? | 23:10 |
|
doener_
| pgregory: that commit (as well as the old 4b) is still around. There is just currently no ref pointing to it, so gitk doesn't show it | 23:10 |
|
pgregory
| right, just to clarify in my head... | 23:10 |
|
| rebase arguments, --onto defines the commit that the changes are grafted onto, and the other two define a range of commits by way of the '..' operator? | 23:11 |
|
doener_
| pgregory: try this: recreate the starting repo, then "git branch old-side-branch side-branch" ot create a second ref pointing to 4b, then do the rebase, and look at the results in gitk | 23:11 |
|
| pgregory: yep, that's quite a valid way to remember how rebase works. Just that the last argument also specifies the branch that gets updated to point to the result of the rebase | 23:12 |
| → zdennis joined | 23:13 |
|
pgregory
| doener_: hmm done that, but the gitk graph is not easy to follow. | 23:13 |
| ← ereslibre left | 23:14 |
| → exg_ joined | 23:14 |
| → ereslibre joined | 23:14 |
| → Cap_J_L_Picard joined | 23:14 |
|
pgregory
| doener_: ahh right, gottit. | 23:15 |
|
doener_
| not as hard as it looked, right? | 23:15 |
|
pgregory
| right | 23:15 |
|
doener_
| ok *phew* ;-) | 23:15 |
| → Sput joined | 23:15 |
| → EgS joined | 23:15 |
|
pgregory
| just confusing with the crossing edges | 23:15 |
| ← polpak left | 23:16 |
|
pgregory
| so, now I think I have the tools to rebase the attributes changes onto refcount. | 23:16 |
|
doener_
| ok, there are a few shorthands for rebase. First, <onto> defaults to <upstream> | 23:16 |
|
| so "git rebase master side-branch" is the same as "git rebase --onto master master side-branch" | 23:17 |
|
tango_
| damnit, svn is SLOW ... | 23:17 |
| ← ebel left | 23:17 |
|
doener_
| and <branch> defaults to the branch you have currently checked out | 23:17 |
|
pgregory
| doener_: so if I have side-branch, "git rebase master" would do the same? | 23:18 |
|
doener_
| so if you have side-branch already checked out, "git rebase --onto master master side-branch" is the same as "git rebase --onto master master" | 23:18 |
| ← rdavila_ left | 23:18 |
|
doener_
| yep, if side-branch is checked out, "git rebase master" is also the same as "git rebase --onto master master side-branch" | 23:18 |
|
pgregory
| cool | 23:18 |
|
doener_
| and that's probably also one of the most common modes of invocation | 23:18 |
|
| I just started out with the full syntax, because I feel that it is easier to understand that way | 23:19 |
|
selckin
| if i run git commit in one terminal and have typed the commit message, then go change some code and git add it, then close my editor, will it pickup the changes? | 23:19 |
| → Oompa joined | 23:19 |
|
segher
| is there some config option (per branch) to say "git rebase" means "git rebase some-particular-branch"? | 23:19 |
|
doener_
| selckin: good question. try it and report? :-) | 23:19 |
|
pgregory
| doener_: ok, just to make sure I've got it, that "commond mode of invocation" would be to merge changes back from a branch to the master? | 23:20 |
|
selckin
| doener_: /lazy, gimme sec :) | 23:20 |
|
doener_
| segher: you can configure it so that "git pull" means "git rebase somebranch" | 23:20 |
|
| pgregory: no. master is not affected. | 23:20 |
|
segher
| hrm... will that actually do some git fetch as well? | 23:20 |
|
selckin
| doener_: doesn't seem to . | 23:20 |
|
doener_
| segher: yep. | 23:20 |
|
pgregory
| doener_: nope, sorry, bring master changes up to the branch, by reapplying the branch changes further up the master? | 23:21 |
|
segher
| i'll have to look at that again then, thanks | 23:21 |
|
doener_
| segher: are we talking about a local or about a remote branch? | 23:21 |
| → cehteh joined | 23:21 |
|
doener_
| segher: ie. master or origin/master? | 23:22 |
|
segher
| i usually do smth like git checkout master ; git pull ; git checkout work ; git rebase master | 23:22 |
|
doener_
| segher: that's fine. Just specify the remote as . in the config. fetching from . doesn't do much as that's the repo itself | 23:23 |
|
| you need to do that anyway as you rebase against a local branch | 23:23 |
| → devjj joined | 23:23 |
|
doener_
| pgregory: yeah, that's more like it. | 23:23 |
|
devjj
| Is it possible to edit/delete a remote origin once added? | 23:23 |
|
doener_
| devjj: git remote rm | 23:24 |
|
segher
| well, master really is just <some-remote>/master | 23:24 |
|
devjj
| doener_: Thanks. | 23:24 |
|
segher
| but i have it in a local branch "master" as well | 23:24 |
| → glguy_ joined | 23:24 |
|
pgregory
| doener_: thanks for all your help, much appreciated. | 23:24 |
|
SamB
| devjj: or you could edit your .git/config if you'd rather | 23:24 |
| ← rdavila left | 23:24 |
| → johnw_ joined | 23:25 |
|
glguy_
| is there a better way to revert specific uncommitted hunks than: git add -i (select the good code) ; git checkout FILENAME ; git reset FILENAME | 23:25 |
|
doener_
| pgregory: ok, now to your actual task. You would add a the old clone (the one with the attributes branch) as a remote to the new repo (git remote add old-repo /path/to/old/repo) | 23:25 |
|
| pgregory: then fetch from that remote: git fetch old-repo | 23:26 |
|
pgregory
| doener_: yep, done that. | 23:26 |
|
doener_
| pgregory: then you have the attributes branch as old-repo/attributes | 23:26 |
|
| then you create a local branch from that: git branch attributes old-repo/attributes | 23:26 |
|
| and then rebase that branch | 23:27 |
|
segher
| glguy_: git add -i ; make sure you added everything you want ; git checkout . | 23:27 |
|
| erm, commit first | 23:27 |
| → unreal_ joined | 23:27 |
|
doener_
| pgregory: as <upstream> you just use the first commit in the attributes branch that you do not want | 23:27 |
|
glguy_
| is: git checkout . like git reset --hard | 23:27 |
|
segher
| pretty much, yes | 23:27 |
|
pgregory
| doener_: all sounds good, I'll write that down and give it a got shortly. | 23:28 |
|
doener_
| glguy_: no. "git checkout ." puts the contents of the index into the working tree | 23:28 |
|
Mikachu
| git checkout HEAD -- . is like git reset --hard, yes | 23:28 |
|
glguy_
| while reset destroys the index | 23:28 |
|
segher
| doener_: well i did say commit first :-) | 23:29 |
|
Mikachu
| actually git checkout HEAD -- . and git reset --hard are not exactly the same | 23:29 |
|
| segher is still scared of the index | 23:29 |
|
Mikachu
| if you have files in the index that aren't in HEAD, the checkout command will restore them too, if they're deleted in the working tree | 23:29 |
|
| :) | 23:29 |
|
| possibly | 23:29 |
| ← johnw- left | 23:29 |
|
doener_
| pgregory: good. Let me know how it works out | 23:30 |
|
pgregory
| doener_: will do | 23:30 |
|
| pasky spends a minute trying to parse mikachu's statement | 23:37 |
|
pasky
| hum | 23:37 |
|
| oh | 23:37 |
|
| i get it \o/ | 23:37 |
|
Mikachu
| pasky: it happens in some circumstances that i haven't determined exactly | 23:37 |
|
| i didn't check "." | 23:37 |
|
pasky
| I just use these two intuitively | 23:38 |
|
| and it *feels* that there are differences | 23:38 |
|
doener_
| http://git.pastebin.com/m757dc58c | 23:38 |
|
pasky
| but my head just starts hurting bad when I try to consciously define them | 23:38 |
|
Mikachu
| they're more different when the argument isn't HEAD of course :) | 23:38 |
| ← devjj left | 23:38 |
|
pasky
| well, that too :) | 23:38 |
|
Mikachu
| doener_: ah, but for full effect you should rm -rf a b first :) | 23:39 |
|
doener_
| "git checkout HEAD -- ." first updates the index to _also_ cotain the contents of HEAD, _not_ deleting any additional files | 23:39 |
|
Mikachu
| but it shows enough | 23:39 |
|
| doener_: i think that it is not desired behaviour though | 23:39 |
|
doener_
| and then it updates the working tree in the same way, using the contents of the index | 23:39 |
|
| Mikachu: it's described in the man page like that | 23:39 |
|
Mikachu
| yes, i asked junio and he said he would take a patch :) | 23:39 |
|
| since them i'm optimistically bringing it up every chance i get hoping someone else will fix it :P | 23:40 |
|
doener_
| ah, yeah, I was around back then, didn't remember who was the other one | 23:40 |
|
| Mikachu: I'm reluctant to fix it, because if I down, Murphy will have made someone use that behaviour who will badly flame me ;-) | 23:40 |
|
| Mikachu: plus, I have no clue how to fix it :-) | 23:41 |
| → x77686d joined | 23:41 |
|
Mikachu
| it seems unlikely someone would depend on it | 23:41 |
|
| yeah me either :) | 23:41 |
|
madduck
| pasky: for export --quilt, I still need to create a tg branch that depends on all the feature branches I want to include in the export | 23:41 |
|
| the stage branch | 23:41 |
|
pgregory
| doener_: ok, got it to work (I think) with "git rebase --onto refcount attributes^^ attributes" which reapplied the top two commits from attributes. | 23:41 |
|
pasky
| madduck: yes | 23:42 |
|
doener_
| doesn't "unlikely" jsut beg to summon Murphy upon the one that fixes it? ;-) | 23:42 |
|
madduck
| unfortunately, both export and export --quilt includes a commit/patch/file for this branch | 23:42 |
|
| which has "no changes" | 23:42 |
|
doener_
| pgregory: yep, if those two commits are what you wanted, and you wanted them on top of refcount, then that's exactly the right thing | 23:42 |
|
pasky
| madduck: I think (i) export -a might make sense (export all the branches) (ii) export -n might make sense (exclude empty patches; tg summary can detect them, you can reuse the code) | 23:43 |
|
pgregory
| doener_: strangely though it wouldn't accept "git rebase --onto refcount attributes^2 attributes" | 23:43 |
|
| doener_: and from the git-rev-parse manpage I can't see why. | 23:43 |
|
Mikachu
| pgregory: the shorthand for a^^ is a~2, not a^2 | 23:43 |
|
doener_
| pgregory: ^2 is the second parent of "attributes". Only merge commits have more than one commit | 23:44 |
|
madduck
| pasky: and maybe even export -f $FILE to read those branches to export from a file | 23:44 |
| → zdennis_ joined | 23:44 |
|
pasky
| I'm not sure about that one | 23:44 |
|
pgregory
| oh, oops | 23:44 |
|
doener_
| pgregory: attributes^^ is the first parent of the first parent of attributes. The shorthand for walking the first parents is ~ | 23:44 |
|
madduck
| pasky: are you sure that "empty branches" can be ignored everywhere? | 23:44 |
|
bts-
| anyone here with git-svn experience know how to fetch externals now that | 23:44 |
|
doener_
| pgregory: so, as Mikachu said, xxx^^ == xxx~2 | 23:44 |
|
pasky
| madduck: what do you mean? | 23:44 |
|
bts-
| .. now that --no-ignore-externals has been removed | 23:44 |
| → BOOKZ joined | 23:44 |
|
pgregory
| doener_: right, that makes it very clear now. | 23:44 |
|
madduck
| pasky: okay, then don't implement -f. This is something that can easily be done on top | 23:44 |
| → unreal joined | 23:45 |
|
madduck
| pasky: Imagine I have a tg set A->B->C and B happens to be empty | 23:45 |
|
BOOKZ
| I have an issue with Git.pm | 23:45 |
|
madduck
| so A->C actually | 23:45 |
|
pgregory
| that's great, thanks for all your help, not only have you helped to solve the problem, but more importantly, I understand how. | 23:45 |
|
madduck
| but I created it off B | 23:45 |
|
| can B just be left out? | 23:45 |
|
| I think so, just making sure | 23:45 |
|
pasky
| I can't imagine what the problem would be | 23:46 |
|
| if not | 23:46 |
|
| but, about -f... | 23:46 |
|
| madduck neither | 23:46 |
|
pasky
| I'm not really happy with current tg export usage | 23:46 |
|
| it's highly arbitrary that it always just exports current branch | 23:46 |
| ← unreal_ left | 23:46 |
|
madduck
| well, then maybe we should reolve this before I create and upload the debian package? | 23:46 |
|
| because it *will* get used a lot | 23:46 |
|
Mikachu
| maybe you should clearly mark it as subject to change too | 23:47 |
|
pasky
| but the usage *will* be volatile during the 0.n releases (though mind you, I hope and expect 1.0 to be at most few weeks away) | 23:47 |
|
madduck
| volatile is fine | 23:47 |
|
doener_
| pgregory: about HEAD, I gave some explanations a few days ago. http://colabti.org/irclogger/irclogger_log/git?date=2008-08-08,Fri#l488 | 23:47 |
|
madduck
| but if we already know that something will change, then we might just as well change it now and then upload. :) | 23:47 |
|
pasky
| well :) | 23:48 |
|
BOOKZ
| http://rafb.net/p/wkXPgf24.html | 23:48 |
|
pasky
| I mean... | 23:48 |
|
doener_
| pgregory: from that one to about 8:08 on the timeline. | 23:48 |
| ← WALoeIII left | 23:48 |
|
pasky
| tg export (--collapse BRANCH|--quilt DIR) [TOPIC]... | 23:48 |
|
| this would be the natural usage, wouldn't it? | 23:48 |
| → agib joined | 23:48 |
|
| j_engelh collapses | 23:48 |
|
BOOKZ
| http://rafb.net/p/wkXPgf24.html # this shell script does what I want (creates a diamond) | 23:48 |
|
pasky
| lol | 23:48 |
|
| and when I see it written now, this is still backwards compatible | 23:49 |
|
| so we're fine? | 23:49 |
|
j_engelh
| if it does not do stacks like stgit i am not going to use it :p | 23:49 |
|
BOOKZ
| http://rafb.net/p/SqZFTY15.html # this perl script doesn't (A4 is not a merge) | 23:49 |
|
| (using Git.pm) | 23:49 |
|
pasky
| j_engelh: it can do stacks | 23:49 |
|
madduck
| pasky: so tg export actually takes a list of branches? | 23:49 |
|
| madduck tries | 23:49 |
|
pasky
| madduck: no | 23:49 |
|
| madduck: that's just the suggested usage :P | 23:49 |
|
j_engelh
| pasky: yeah but the last thing you showed me was a bunch of branches | 23:49 |
|
pasky
| *new | 23:49 |
|
| *proposed | 23:49 |
|
| *etc... | 23:50 |
|
| j_engelh: it can do stacks and _MORE_ :) | 23:50 |
|
j_engelh
| hah | 23:50 |
|
madduck
| pasky: okay, that would be *nice* | 23:50 |
|
pasky
| BOOKZ: so what does the script do instead? | 23:50 |
|
j_engelh
| is it at least written in C/C++? | 23:50 |
| → chrisb joined | 23:50 |
|
| pasky gives j_engelh a Look | 23:51 |
|
agib
| does anyone know how to display all branches *except* 1 with gitk? is there some sort of --all-but=branch option? | 23:51 |
|
pasky
| madduck: okay, it would be *nice* if someone sent me a cute patch overnight ;) | 23:51 |
|
| agib: maybe try ^branch ? | 23:51 |
|
j_engelh
| but but but | 23:51 |
|
Mikachu
| agib: --all ^foo ? | 23:51 |
|
madduck
| pasky: to honour enumerated branches? | 23:51 |
|
pasky
| j_engelh: you're welcome to rewrite tg summary in C | 23:51 |
|
| it'd be great help, actually :P | 23:51 |
|
j_engelh
| ^foo does not work | 23:51 |
|
pasky
| madduck: yes | 23:51 |
|
| madduck: and another patch for -n ;) | 23:52 |
|
vmiklos
| pasky: do you plan to provide tarballs for topgit releases? it may be interesting if tg gets more popular. | 23:52 |
|
Mikachu
| j_engelh: ah, i guess it excludes too much | 23:52 |
|
madduck
| i already have a patch adding DESTDIR to Makefile, but I won't give it to you jsut yet because I'd like to have more testing i.e. more branches in the topgit source package at the moemnt. :) | 23:52 |
|
pasky
| vmiklos: http://repo.or.cz/w/topgit.git?a=snapshot | 23:52 |
|
| madduck: sure :) | 23:52 |
|
vmiklos
| pasky: ah, i always forget snapshots are enabled on repo.or.cz :) | 23:53 |
|
madduck
| vmiklos: Debian will provide orig.tar.gz files for snapshots I package | 23:53 |
|
j_engelh
| madduck: you know what amazes me, that debian's mplayer fails | 23:53 |
|
madduck
| to play out streams? | 23:53 |
|
| our | 23:53 |
|
agib
| Mikachu: hmm doesn't work | 23:53 |
|
| something with revparse? | 23:53 |
|
BOOKZ
| pasky: the script does a commit, but not a merge | 23:53 |
|
Mikachu
| agib: yeah i take it back | 23:53 |
|
j_engelh
| madduck: whatever the page says, so yes :p | 23:53 |
|
madduck
| i believe debconf8.debconf.org/video has some information on that, j_engelh | 23:53 |
|
BOOKZ
| so A1-A2-A4 and no A3 in the history | 23:53 |
|
SamB
| madduck: what, you aren't going to use the repository directly in your debian packages? | 23:53 |
|
Mikachu
| j_engelh: my mplayer also failed to play it | 23:54 |
|
| without the -cache trick | 23:54 |
|
j_engelh
| well *mine* does not. | 23:54 |
|
pasky
| BOOKZ: so what happens when it calls the merge? | 23:54 |
|
Mikachu
| good for you :) | 23:54 |
|
j_engelh
| Mikachu: which just means packman did a better job :p | 23:54 |
|
pasky
| i get unusable video with packman mplayer | 23:54 |
|
madduck
| SamB: ? | 23:54 |
|
pasky
| but vlc works fine | 23:54 |
|
Mikachu
| yeah, clearly it's up to the packager to make sure the ogg demuxer works :) | 23:55 |
|
j_engelh
| perhaps because there's nothing in the room atm? | 23:55 |
|
pasky
| oh | 23:55 |
|
| you mean right now | 23:55 |
|
| no idea :) | 23:55 |
|
madduck
| we are all eating dinner or drinking beer | 23:55 |
|
| no more talks | 23:55 |
|
| Mikachu (away) | 23:55 |
|
BOOKZ
| pasky: it says "Merge with strategy recursive failed." (which is somewhat expected) | 23:55 |
| ← david_koontz left | 23:55 |
|
madduck
| tomorrow again at 13UTC I think | 23:55 |
|
| pasky wants video stream of madduck eating dinner and drinking beer | 23:55 |
|
j_engelh
| yeah I forgot to apply European time shift | 23:55 |
|
madduck
| pasky: you don't. :) | 23:55 |
|
BOOKZ
| and git status tells me that the file is unmerged and modified | 23:56 |
|
madduck
| pasky: I am going to release 0.2-1 now and then get hacking on that other stuff | 23:56 |
|
BOOKZ
| but when I change it and commit, it's not a merge , just a child of the HEAD | 23:56 |
|
pasky
| madduck: ok, cool | 23:56 |
|
madduck
| pasky: can I subscribe you to the package tracker so that you get bug reports sent directly? | 23:56 |
|
pasky
| sure | 23:56 |
|
madduck
| same email as author email? | 23:56 |
|
| let's see if I can fasttrack this through Debian NEW. :) | 23:57 |
|
pgregory
| the only book I've found on Git is "Pragmatic Version Control Using Git", worthwhile or not? | 23:57 |
| → technel joined | 23:57 |
|
pasky
| not | 23:57 |
|
technel
| If dir/ is a Git repository and I copy dir/ to dir2/, is that a Git repository as well? | 23:57 |
|
pasky
| at least not in the form I saw it the last time | 23:57 |
|
Eridius|work
| pgregory: http://git-scm.com/documentation | 23:57 |
|
pasky
| BOOKZ: sorry, gotta get some sleep | 23:57 |
|
Eridius|work
| technel: yes | 23:58 |
|
doener_
| pgregory: I read part of an example chapter. not impressed | 23:58 |
|
BOOKZ
| pasky: thanks anyway | 23:58 |
|
pasky
| BOOKZ: at least I might tell you that it's more comfortable to use git rev-parse HEAD than that log incanation ;) | 23:58 |
|
Eridius|work
| pgregory: there's also the in-progress http://book.git-scm.com/ | 23:58 |
|
technel
| Eridius|work: See, I did that (via rsync, actually), and the directory has .git/ in it, but when I run "git status" it says: git: /lib/libz.so.1: no version information available (required by git) -- any ideas? | 23:58 |
| → david_koontz joined | 23:58 |
|
pasky
| pgregory: or just stick with the User Manual? | 23:58 |
|
j_engelh
| technel: update libz | 23:58 |
|
BOOKZ
| what's weird is that the two merge commands do not give the same output | 23:59 |
| ← tvw left | 23:59 |
| → xenoterracide joined | 23:59 |
|
j_engelh
| some distributions are just to ... old! | 23:59 |
|
Eridius|work
| technel: sounds like a problem with your git binary or libz, not with the git repo | 23:59 |
|
pasky
| pgregory: it's probably the most complete resource | 23:59 |
| → rswarbrick joined | 23:59 |
|
technel
| j_engelh: uh, is libz supposed to be a pkg? | 23:59 |
|
j_engelh
| i've seen that error too, and it happened before upgrading glibc + zlib | 23:59 |
|
| technel: depends on which distroland you live in | 23:59 |
|
SamB
| hmm, my mplayer can't parse those playlists | 23:59 |
|
j_engelh
| SamB: uh | 23:59 |
|
BOOKZ
| one says: "Auto-merged A / CONFLICT (content): Merge conflict in A / Automatic merge failed; fix conflicts and then commit the result." | 23:59 |
|
j_engelh
| SamB: mplayer -playlist <url or file> | 23:59 |
|
| SamB: works wonders btw | 23:59 |