| 2007-02-26 |
|
kesselhaus__
| how is access control handled in git? can you allow e.g. to r/w files/dirs for users? | 00:00 |
|
raalkml
| no | 00:01 |
|
| what do you need it for? | 00:01 |
|
Tali
| kesselhaus__: access control is always for the entire repository | 00:01 |
|
kesselhaus__
| well, its like the repo might have directories, where docs/requirments are stored, but not everybody should be allowed to read or write all of them | 00:02 |
|
| or some parts of the code base should be restricted to some users but not all | 00:03 |
|
raalkml
| right. That why I missed the last deadline rebuilding that module: I wasn't allowed to read the requirements | 00:03 |
|
Tali
| kesselhaus__: you could limit write access in a central repository by setting up hooks which check the new version before going on | 00:03 |
|
| kesselhaus__: but you can't limit read access in git | 00:04 |
|
raalkml
| yes. Separate the repos | 00:04 |
|
Tali
| (other then limiting physical access to the repository of course) | 00:04 |
|
raalkml
| btw, you may want to read GIT mailing list on subprojects. | 00:05 |
|
Tali
| raalkml: but that does not really help here | 00:05 |
|
| not without setting up the hooks i mentioned | 00:06 |
|
raalkml
| Tali: well, it will | 00:06 |
|
| once any subprojects available | 00:06 |
|
Tali
| raalkml: because if you have write access to the supermodule, you obviously can update the submodules, too | 00:06 |
|
kesselhaus__
| raalkml: well, there could be granted access to some external users, but they should not know everything thats part of the project | 00:06 |
|
raalkml
| no. Subprojects can have restricted read access | 00:06 |
|
kesselhaus__
| thats what i mean with r/w access to the files | 00:06 |
|
raalkml
| strictly speaking, git does not care about files | 00:07 |
|
| so that part will never work | 00:07 |
|
Tali
| raalkml: ok, you can give out individual subprojects and so limit read access. but you must not give out the supermodule if you want to limit subprojects | 00:07 |
|
raalkml
| directories (as subproject) - yes (but hard). Files - never | 00:07 |
|
kesselhaus__
| raalkml: well, i'm coming from the cvs side, and we currently use PVCS (which is actually just a pain in the ass with the webfrontend) | 00:08 |
|
raalkml
| Tali: you often have to give out superproject to let people know where to start | 00:08 |
|
| kesselhaus__: git's documentation has very nice cvs-migration.txt document | 00:09 |
|
| kesselhaus__: you might want to look at it | 00:09 |
|
kesselhaus__
| though, if there are ports wo windows, i suppose, the user access control is handled not with the OS functionality? | 00:10 |
|
Tali
| raalkml: /wi raalkml | 00:10 |
|
| ups | 00:10 |
|
raalkml
| :) | 00:10 |
|
| kesselhaus__: yes. Exclusively | 00:10 |
|
| kesselhaus__: git has no access control whatsoever | 00:10 |
| ← raalkml left | 00:11 |
| → raalkml joined | 00:11 |
|
raalkml
| sorry... | 00:11 |
|
Tali
| kesselhaus__: you can only limit physical access or write hook scripts which prohibit an action based on the user who is executing it | 00:12 |
|
gitte
| An automatic branch, rewriting history, should work... | 00:15 |
| → gitte joined | 00:15 |
|
gitte
| Basically, the integrity of a repository can only be checked when you have total read permission. | 00:16 |
| → cehteh joined | 00:16 |
|
kesselhaus__
| http://www.spearce.org/2005/06/the_horrors_of.html <-- this pretty good describes my pain at work | 00:23 |
|
| even though its not from me | 00:23 |
|
raalkml
| almost everyone has a story to tell :) (I have Perforce) | 00:23 |
|
Tali
| This story is even worse than what we have at work... | 00:29 |
|
cehteh
| hey some people are forced to use M$ VSS ... | 00:32 |
|
gitte
| raalkml: s/av/at/ | 00:35 |
|
kesselhaus__
| i have to write down each file i change, as this f..ing webclient does not allow a diff on the project, and checking in files in different directories have to be done one for a time | 00:43 |
|
| some of the algo/generic team now changed inofficially changed to subversion ;) | 00:44 |
|
raalkml
| that's a scary discussion on that the_horrors_of(pvcs) | 00:44 |
|
gitte
| Well, svn _is_ faster than PVCS... | 00:44 |
|
| ... but a big fat snail compared to git! | 00:45 |
|
raalkml
| inofficially, I changed to git | 00:45 |
|
| it's just the imports from and exports to perforce getting me down | 00:46 |
|
gitte
| Whenever I have to use svn or cvs, I work with git, and somehow transport the result back to cvs... | 00:46 |
|
kesselhaus__
| and I'm just looking for some alternatives too, as there are now such a lot | 00:46 |
|
raalkml
| kesselhaus__: don't say it here! There is no vcs but git :) | 00:47 |
|
Tali
| gitte: same for me. I really prefer svn-import over svn co | 00:47 |
|
gitte
| We already stole^Wimitated the hunk committing from darcs... | 00:47 |
|
| ... and when we soon have that interactive rebase, nobody comes close to us! | 00:48 |
|
| I mean, it really _rocks_. | 00:48 |
|
kesselhaus__
| how is this working with the revisions/commit logs, using one with the other? | 00:48 |
|
Tali
| we should allow to clone and fetch from cvs:/svn: URIs at some time... :) | 00:48 |
|
gitte
| Tali: no... I think we should allow people to migrate their CVS server to a git-cvsserver... | 00:49 |
|
| kesselhaus__: in cvs, there are no revisions. I have no idea if git-svn includes svn's idea of revisions in the commit message, but tailor does that for svn... | 00:50 |
|
Tali
| gitte: obviously it is better to migrate the central repo, yes | 00:50 |
|
gitte
| Tali: with the benefit that proper developers can shortcut to git... | 00:50 |
|
arw
| well, it is better, but having both options is preferable, as migrating is not always possible... | 00:50 |
|
| (mgmt doesn't like it, no access to the server, etc) | 00:51 |
|
kesselhaus__
| i mean if your sourcefiles are checked in cvs gives a revision number, and with a $Log$ in the file header, you get the history | 00:51 |
|
| .oO( which is just blowing the file, but its required by our coding rules ) | 00:52 |
|
gitte
| arw: mgmt is the number one blocker of successful projects. | 00:53 |
|
| kesselhaus__: these rules are stupid. | 00:53 |
|
Tali
| kesselhaus__: there are a lot of stupid coding rules out there :-( | 00:53 |
|
gitte
| therefore you have to work to implement them. | 00:53 |
|
| Can be done with hooks, though. | 00:53 |
|
arw
| kesselhaus__: i guess (correct me if I guess wrong), revision numbers are impossible to get right if your tool supports wild gang-bang everybody does everybody else merging and branching... | 00:54 |
|
gitte
| arw: the common practice is to use max(a,b) + 1 whenever the files are different (where a and b are the revision numbers given by the two branches) | 00:55 |
|
kesselhaus__
| if you ever made something like x &= ~(y | (1 << n)); pclint conform, then you know why i dont like codingguidelines | 00:56 |
|
gitte
| "files are different" meaning that both branches disagree with the merge base, _and_ with each other. | 00:56 |
|
arw
| gitte: yes, but there is no guarantee, that revisions get unique numbers across branches which defeats the purpose of having such a number. | 00:58 |
|
kesselhaus__
| unfortunately, we do not branch unless we e.g. backport something, even though i could use branches as we have several platforms | 00:59 |
|
gitte
| arw: yes. but mgmt does not realise that! | 01:00 |
|
| kesselhaus__: with git, branching is done very often. The main reason I like git so much is that branches are so easy. | 01:01 |
|
| Whenever you want to try something, make a new branch! | 01:01 |
|
| If it does not work, just throw it away... | 01:01 |
|
raalkml
| or don't even make it and throw away | 01:02 |
|
arw
| in some tool (baz or bzr I think), 'checkout' just was an alias for 'branch' :) | 01:02 |
|
gitte
| well, in git, branches are actually nothing else than pointers into the history. | 01:12 |
|
Tali
| so, its already really late here, I'll go sleep a bit... | 01:13 |
|
| gitte does so, too. | 01:21 |
| → davi joined | 01:30 |
| → dancor joined | 02:01 |
| dwmw2_BOS → dwmw2_gone | 02:01 |
| ← dancor left | 02:12 |
| → robfitz joined | 02:18 |
| → Ori_B joined | 02:39 |
|
z3ro
| where is the main gitweb tree? is this John Hawley's tree? | 02:54 |
|
| http://www.kernel.org/pub/scm/git/warthog9/gitweb.git ? | 02:54 |
|
| oh, nevermind. | 02:57 |
|
| it's included with git. | 02:57 |
| → Tv joined | 03:12 |
| → _jcrigby joined | 03:24 |
|
mugwump
| z3ro: if you're interested in latest gitweb you might like to also track git://repo.or.cz/git/jnareb-git.git | 03:33 |
|
| or http://roke.dyndns.info/cgi-bin/gitweb/gitweb.cgi/git.git | 03:33 |
|
z3ro
| mugwump: I don't really care about the very latest gitweb. the one provided with git should be fine. | 03:33 |
| → db3 joined | 03:59 |
|
db3
| what git commands would be best used for backporting commits | 04:04 |
|
| from a development branch to a stable branch? | 04:04 |
|
| cherry-pick? | 04:04 |
| → Romster joined | 04:32 |
| → Romster joined | 04:58 |
| → rkaway joined | 05:27 |
|
gitster
| A 90 minute old answer is yes. But with a little planning, you could use merge. | 05:29 |
|
| The trick is when you are building something you know will be worthy for stable, you fork a topic from the stable, build that feature, and first merge into development branch to test it. | 05:30 |
|
| If it is not Ok, you still build on the topic to fix it up, merge it to development again. | 05:31 |
|
| Repeat until you perfect the topic, and then finallly, you merge that topic into stable. | 05:31 |
|
db3
| That seems like a good plan | 05:32 |
|
| If I've merged to a topic branch, what's the best way to selectively | 05:34 |
|
| remove certain commits | 05:34 |
|
gitster
| You don't. That's what I meant by "with a little planning". | 05:37 |
|
| If you just released version 1.2.0, but you still have maintenance tracks of 1.0.0 and 1.1.0 versions, and if what you are newly developing for 1.3.0 _might_ apply all the way back to 1.0.0, then you fork the topic from the tip of 1.0.0 maintenance track. | 05:38 |
|
| That way, you can backport that topic to 1.0.0, 1.1.0 and 1.2.0 maintenance track once it is perfected. | 05:39 |
|
| without any need to "selectively remove certain commits". | 05:39 |
|
| That strategy at times means you might need to have one sub-topic each per maintenance track for that topic. The bulk of the logic change/addition for the topic itself will be done on the main topic branch, but you would have side branches that fork from the topic branch to adjust that topic for the target release branch. | 05:41 |
|
| For example, 1.0.0 and 1.1.0 codebase may have different interfaces to a few functions your topic might use. You code the main topic for one particular release (say 1.0.0), and with one side branch (which you fork from the topic branch) you absorb the interface difference between 1.0.0 and 1.1.0 codebase, so when you backport the topic to 1.1.0 maintenance branch you merge that side brnach as well. | 05:43 |
| → halfline_ joined | 05:55 |
| → T1 joined | 06:06 |
| T1 → Tv1 | 06:06 |
| → spuk joined | 06:14 |
| Tv1 → Tv | 06:16 |
| → Roomster joined | 06:41 |
| → Roomster joined | 06:42 |
| Roomster → Romster | 06:43 |
| → devogon joined | 06:46 |
| → jeffpc joined | 07:01 |
| → z3ro joined | 07:46 |
|
mugwump
| darn, wish cg-admin-rewritehist would update refs | 09:40 |
|
| mugwump acts spastic for a bit and then starts using --tag-name-filter | 09:46 |
|
mugwump
| argh, my commit timestamps got stomped on | 10:32 |
|
| damn, I didn't think cg-admin-rewritehist touched those | 10:33 |
|
| stink | 10:33 |
| → DebolazX joined | 10:34 |
|
mugwump
| hmm, git-commit-tree seems to be at fault | 10:49 |
|
| oh. parse_date won't accept its own output as input anymore | 10:55 |
|
gitte
| parse_date has an output? | 11:00 |
|
mugwump
| sure, a date | 11:01 |
|
| epoch +TZ | 11:01 |
|
| and you can't feed it that any more as input | 11:01 |
|
| why doesn't date.c just use regex.h | 11:04 |
|
| that code is nuts | 11:04 |
|
gitte
| ...maybe because regex is slow? | 11:05 |
|
| oh, BTW what do you expect of commit timestamps when rewriting history? | 11:05 |
|
| after all, you are recommitting... | 11:05 |
|
mugwump
| I expect them not to change | 11:05 |
|
gitte
| But you are _rewriting_, i.e. re_committing_ them! | 11:08 |
|
mugwump
| don't tell me what I'm doing | 11:08 |
|
| I happen to know that, thank-you very much :) | 11:09 |
|
| this is just a simple regression anyway. you are allowed to do this, it's just gotten more strict about what it accepts | 11:09 |
|
gitte
| mugwump: your last comment was about parse_date() again? | 11:11 |
|
| ./test-date "1172488220 +0100" | 11:11 |
|
| 1172488220 +0100 -> 1172488220 +0100 -> Mon Feb 26 12:10:20 2007 | 11:11 |
|
| 1172488220 +0100 -> Mon Feb 26 12:10:20 2007 | 11:11 |
|
mugwump
| ./test-date "782434800 +0000" | 11:12 |
|
gitte
| Note that the first "conversion" from timestamp+tz to itself is done by parse_date(). | 11:12 |
|
mugwump
| 782434800 +0000 -> bad -> Thu Jan 1 12:00:00 1970 | 11:12 |
|
gitte
| date.c:384. | 11:13 |
|
| It only allows dates starting with Jan 1 2000 | 11:13 |
|
mugwump
| aha well spotted, thanks | 11:14 |
|
| sweet | 11:15 |
|
gitte
| Might make sense to set it to Jan 1 1980, to allow for ancient repos being converted to git... | 11:15 |
|
mugwump
| sure. this one starts in '87 | 11:16 |
|
| I'd guess at least 1e8 for the cut-off, though | 11:19 |
|
| unless 8-digit numbers aren't special | 11:19 |
|
| eg yyyymmdd | 11:19 |
|
| I think 9-digit iso8601 is yyyywwwhh or something equally useless | 11:20 |
|
| s/www/ddd/ | 11:20 |
|
gitte
| OTOH if you know that the input is timestamp+tz, why not roll your own parser? | 11:21 |
|
mugwump
| because I don't like writing C ? :) | 11:21 |
|
gitte
| :-) You should really stop worrying and learn to love C. | 11:21 |
|
mugwump
| I miss continuations and closures too much though | 11:22 |
|
gitte
| iso8601 has hours in the timestamp? and three digits for the day? | 11:22 |
|
mugwump
| there are lots of wacky iso8601 forms | 11:22 |
|
| there's one for every length of sequence of digits up to 10 I think | 11:23 |
|
gitte
| What exactly do you mean by "continuations and closures" in this context? | 11:23 |
|
mugwump
| a continuation is a variable which represents your return state | 11:23 |
|
| a closure is a variable that retains access to lexicals when it was taken | 11:24 |
|
| er, a closure is a *function pointer* that retains access to lexicals when it was taken | 11:24 |
| → Romster joined | 11:25 |
|
gitte
| BTW 1e8 has 9 digits. | 11:30 |
|
mugwump
| yes, 8 digit dates are useful | 11:30 |
|
| and 1e8 is sufficiently far in the past... | 11:30 |
|
| for me, anyway ;) | 11:32 |
|
gitte
| BTW if you want to force some really old names down git-write-tree's throat, you do not need to muck with parse_date() | 11:33 |
|
| Just set GIT_COMMITTER_DATE="timestamp +tz" | 11:34 |
|
mugwump
| instead of COMMIT_DATE ? | 11:35 |
|
| I thought that's what I was setting | 11:35 |
|
| maybe not. whatever latest cg-admin-rewritehist sets | 11:36 |
|
| I've rewritten what I need for now anyhow | 11:36 |
| → benlau joined | 11:36 |
| → chris2 joined | 11:37 |
|
gitte
| Would be nice to share your work... | 11:37 |
|
mugwump
| ok | 11:40 |
|
| but it's just changing a default :) | 11:40 |
|
gitte
| If it helped you, it might help others. They can still ignore it. | 11:40 |
|
| But open source works like this: send things out. | 11:41 |
|
mugwump
| but bitching in irc is so much more fun | 11:43 |
|
gitte
| ;-)) | 11:44 |
|
| gitte thinks "birching" would be a nice term for that | 11:44 |
|
mugwump
| there's probably an irc client called that already | 11:46 |
|
| lol | 11:48 |
|
| http://www.bebits.com/app/1139 | 11:48 |
|
| gitte has to leave... | 11:53 |
|
| mugwump waves | 11:54 |
| → _jcrigby joined | 12:06 |
| → chris2 joined | 12:06 |
| → DebolazX joined | 12:06 |
| → devogon joined | 12:06 |
| → rkaway joined | 12:06 |
| → robfitz joined | 12:06 |
| → cehteh joined | 12:06 |
| → gitte joined | 12:06 |
| → kesselhaus__ joined | 12:06 |
| → lu_zero joined | 12:06 |
| → normalperson joined | 12:06 |
| → orospakr joined | 12:06 |
| → Geniack joined | 12:06 |
| → halfline joined | 12:06 |
| → jdl joined | 12:06 |
| → moh joined | 12:06 |
| → anholt joined | 12:06 |
| → CIA-11 joined | 12:06 |
| → masterdriverz joined | 12:06 |
| → clee joined | 12:06 |
| → fonseca joined | 12:06 |
| → robtaylor joined | 12:06 |
| → Tali joined | 12:06 |
| → anders_ joined | 12:06 |
| → siprbaum joined | 12:06 |
| → mountie joined | 12:06 |
| → ag joined | 12:06 |
| → gitsky joined | 12:06 |
| → toidinamai joined | 12:06 |
| → Alex joined | 12:06 |
| → jave joined | 12:06 |
| → felipe joined | 12:06 |
| → ruskie joined | 12:06 |
| → pdmef joined | 12:06 |
| → buggs joined | 12:06 |
| → dwmw2_gone joined | 12:06 |
| → bartman joined | 12:06 |
| → nickh joined | 12:06 |
| → Ace2016 joined | 13:07 |
|
Ace2016
| hi all | 13:07 |
|
| can someone help me with this error | 13:07 |
|
| http://pastebin.co.uk/10991 | 13:07 |
|
| its the last command for getting xgl | 13:07 |
|
robfitz
| have you installed git? | 13:12 |
| → raalkml joined | 13:15 |
|
Ace2016
| yea | 13:24 |
|
| isn't that git? | 13:24 |
|
| ok i did update-alternatives and i have git-scm now and it said fatal: git checkout xgl-0-0-1 Not a git repository | 13:25 |
|
| no wait | 13:25 |
|
| command: git checkout xgl-0-0-1 output: fatal: Not a git repository | 13:25 |
|
| oh i see, i had to cd into xserver | 13:26 |
| → kanru joined | 13:41 |
| → spuk- joined | 13:47 |
| → raalkml joined | 13:51 |
| → tokkee joined | 13:51 |
| → kynde joined | 13:51 |
| → niv joined | 13:51 |
| → vlajos joined | 13:51 |
| → efelix joined | 13:51 |
| → matled joined | 13:51 |
| → palmcron joined | 13:51 |
| → kblin joined | 13:51 |
| → linuxmigration joined | 13:51 |
| → _jcrigby joined | 13:51 |
| → DebolazX joined | 13:51 |
| → devogon joined | 13:51 |
| → rkaway joined | 13:51 |
| → robfitz joined | 13:51 |
| → cehteh joined | 13:51 |
| → gitte joined | 13:51 |
| → kesselhaus__ joined | 13:51 |
| → lu_zero joined | 13:51 |
| → normalperson joined | 13:51 |
| → orospakr joined | 13:51 |
| → Geniack joined | 13:51 |
| → halfline joined | 13:51 |
| → jdl joined | 13:51 |
| → moh joined | 13:51 |
| → anholt joined | 13:51 |
| → CIA-11 joined | 13:51 |
| → masterdriverz joined | 13:51 |
| → clee joined | 13:51 |
| → fonseca joined | 13:51 |
| → robtaylor joined | 13:51 |
| → Tali joined | 13:51 |
| → anders_ joined | 13:51 |
| → siprbaum joined | 13:51 |
| → mountie joined | 13:51 |
| → ag joined | 13:51 |
| → gitsky joined | 13:51 |
| → toidinamai joined | 13:51 |
| → Alex joined | 13:51 |
| → jave joined | 13:51 |
| → felipe joined | 13:51 |
| → ruskie joined | 13:51 |
| → pdmef joined | 13:51 |
| → buggs joined | 13:51 |
| → dwmw2_gone joined | 13:51 |
| → bartman joined | 13:51 |
| → nickh joined | 13:51 |
| → arw joined | 13:51 |
| → corecode joined | 13:51 |
| → maio_ joined | 13:51 |
| → zakame joined | 13:51 |
| → ianw__ joined | 13:51 |
| → mugwump joined | 13:51 |
| → Thumper_ joined | 13:51 |
| → tko joined | 13:51 |
| → yashi joined | 13:51 |
| → meyering joined | 13:51 |
| → tchan joined | 13:51 |
| dwmw2_gone → dwmw2_BOS | 14:09 |
| → timlarson_ joined | 14:29 |
| → nud joined | 14:37 |
| → GeertB joined | 14:58 |
| → spuk- joined | 15:10 |
| → spearce joined | 15:26 |
|
| spearce wonders if git 1.5.0 more closely resembles a nipple than 1.4.x did... | 15:27 |
|
cehteh
| try twisting it | 15:28 |
|
spearce
| kesselhaus__: still awake? the horror page you linked to was mine... | 15:28 |
|
cehteh
| spearce: does this horror still persist? :) | 15:28 |
|
spearce
| cehteh: yes. which is one reason I use git. I have my own git-pvcsimport tool that goes through the PVCS web interface to checkin/checkout files and sync with git. ;-) | 15:29 |
|
cehteh
| haha | 15:29 |
|
| nice | 15:29 |
|
| well the sad part ist that management burns money, time and developer nerves in masses | 15:29 |
|
spearce
| its their own money. well, except for the developer nerves anyway... | 15:30 |
|
cehteh
| yeah .. | 15:31 |
|
| i think thats somewhat demotivating | 15:31 |
|
spearce
| i've silently converted all of my peers to using git, then flushing to PVCS via that script. everyone is like "how did i ever get by without this?!?!?". management has no clue, but is happy developers are producing faster. | 15:31 |
|
| heh, reading #git logs is starting to become a requirement. i'm fearing we may be slowly moving from a mailing list community to a mailing list + irc community. :) | 15:32 |
|
cehteh
| and when they find out you get a reprimand | 15:32 |
|
spearce
| cehteh: actually better, i got them all to sign a form saying we're allowed to use the software. so they are on the hook for allowing it, not us. i just wish i could get them to completely replace pvcs with git. :) | 15:33 |
|
| btw, said form was required by management - and they have it in their secure filing cabinet thingy... | 15:33 |
|
cehteh
| ah ok :) | 15:33 |
|
| well .. working with git (or any other distributed rcs) and then feeding it to a centralized rcs is what many people do and often the best they can gain | 15:35 |
|
spearce
| cehteh: so I was thinking about adding source ~/.wishrc to git-gui, but i'm a little uncomfortable with the idea of just executing some file in your home directory. ;-) | 15:51 |
|
cehteh
| yeah .. i dont like that either | 15:52 |
|
| thats a bandaid i added for myself .. but it seems to be suggested but still uncommon in tcltk apps | 15:52 |
|
spearce
| so my other thought was i could add an option in git-config (e.g. gui.addFont) that you can put the font in, and it would execute "option add *font $that" for you. | 15:53 |
|
cehteh
| seriously i would prefer the [gui] section in gitconfig ... but having its own config file is ok too | 15:53 |
|
| i think it needs to be worked out to make some small simple font system in that way .. you know how emacs handles that? | 15:54 |
|
| one default font and others inherit/modify on that | 15:54 |
|
| thats certainly some more work .. but in the long run i think thats the proper way to do it | 15:55 |
|
spearce
| well, git-gui basically does that too. we have two though, one for normal ui (usually a proportional width font) and one for diff/commit display (usually a fixed width font). | 15:55 |
|
cehteh
| doesnt need to be much complicated ... how many diffrent fonts do git gui's currently use? 3 .. maybe up to 5 in future ... | 15:56 |
|
| i have some ideas about git gui .. but since i dont plan to work on it i better dont proclaim too much ;) | 15:56 |
|
spearce
| heh. i'd still love an email with some suggestions for improvement. you may have a bright idea that i might actually want to implement, and find time to do. ;-) | 15:57 |
|
cehteh
| anyways ... its already a nice tool .. i never thought i would use a gui for checkins .. but that changes | 15:57 |
|
spearce
| hah! my big gripe with it now as it can't run my commit messages through fmt. which i do in vi. i'll probably try to get something like that added... but its been low priority for me. | 15:58 |
|
cehteh
| yes .. actually most base functionality is there, well done | 15:59 |
|
| i miss 'rebase' in the merge menu | 15:59 |
|
| and do checkout's merge or abort? i didnt tried yet, but would be nice too ... maybe 3way .. also a reset --hard; checkout enforceable | 16:00 |
|
spearce
| checkout's abort. there's no provision to do a merged checkout (no -m flag). | 16:01 |
|
| reset --hard is there (Merge->Abort Merge) | 16:01 |
|
cehteh
| err .. just checkout -f ... reset is another thing (gnu arch has a undo / redo stack for the working copy) | 16:01 |
|
| well in git one just branches | 16:02 |
|
| that Abort Merge does a git reset isnt clear for someone who doesnt know it .. | 16:04 |
|
spearce
| i know, i've thought about that... i was thinking of linking that same action under a different menu item too, but i wasn't sure where to hang it, or what to call it. | 16:04 |
|
cehteh
| ok .. Branch -> Reset... after Create.. Delete.. | 16:06 |
|
spearce
| ok, that's not a bad idea at all. | 16:06 |
|
cehteh
| and Merge -> Rebase... | 16:06 |
|
spearce
| also not a bad idea - but some amount of work. :-) | 16:07 |
|
cehteh
| another idea would be to have a console window where the git commands assembled are shown and the output (stdout/stderr) is redirected .. dunno how that works if lets say gpg wants a passsphrase | 16:09 |
|
| the Staging window could be used for that .. make it tabbed or such either showing staging or console | 16:10 |
|
| cehteh usually runs git-gui & ... but then it litters my console when i use it | 16:10 |
|
spearce
| what do you mean it litters your console? | 16:11 |
|
cehteh
| the stdout/stderr from the git command still go to the console | 16:11 |
|
| (generating packs, gpg logging) | 16:12 |
|
spearce
| wtf? git-gui usually captures everything to itself, i have never seen it let git command output go to the terminal it was started from. | 16:13 |
|
cehteh
| huh | 16:14 |
|
| heh it does that here .. maybe from the hooks | 16:14 |
|
spearce
| i just did a repack in git-gui and nothing went to my terminal. the hooks to (e.g. pre-commit) are captured by git-gui and if they produce any output its shown in a popup window... | 16:14 |
|
cehteh
| $ cat .git/hooks/post-commit | 16:14 |
|
| #!/bin/sh | 16:14 |
|
| git sign "$(git-symbolic-ref HEAD | cut -d/ -f 3-)_signature" | 16:14 |
|
| git publish | 16:14 |
|
| thats whats shown | 16:15 |
|
spearce
| ahhh... your post-commit hook. that i just run blindly and don't get the output of. hmm. | 16:15 |
|
cehteh
| exactly | 16:15 |
|
| well i an wrap it in a >&/dev/null | 16:15 |
|
| maybe thats even the better way | 16:16 |
|
spearce
| to discard the output? | 16:17 |
|
cehteh
| yes | 16:18 |
|
spearce
| what if its failing? | 16:18 |
|
cehteh
| thats not critical in my case .. hence i saied thats the better way ... for people where it is critical, they want to retain the output | 16:18 |
|
| sign recreates a gpg-signed tag .. but if it fails the older one suffices ... | 16:19 |
|
| publish mirrors to my web-server and that will definately fail when my laptop is not on the net, but thats still not a big issue | 16:20 |
|
| does git commit reflect the exit value of hooks in its own exit value? | 16:22 |
|
| if yes then you could pop up a warning ... | 16:22 |
|
spearce
| no, not the post-commit hook. which is where i got the idea to just run post-commit blind in git-gui. | 16:23 |
|
| the pre-commit hook is honored. | 16:23 |
|
cehteh
| ok | 16:23 |
|
spearce
| doesn't mean i cant change post-commit behavior in git-gui to behave that way though. | 16:24 |
|
| right now i've got a small mess on my hands - i'm trying to fix the no-change commit case but repository_state is a freaking disaster. i'm scared of changing it. ;-) | 16:24 |
|
cehteh
| hehe | 16:25 |
|
spearce
| and i'm a lot more aggressive about rewriting code than Junio is. ;-) | 16:25 |
| → felipe joined | 16:26 |
|
| cehteh would like tool-tips or even better using the status-bar for help | 16:27 |
|
spearce
| tooltips ? in tk? are you nuts? ;-) | 16:28 |
|
cehteh
| when the user hovers over menu Merge -> Abort Merge then "Does a git-reset --hard to delete any existing changes in your working copy" could appear in the status bar | 16:29 |
|
| hey i am not tcl or gui programmer :) | 16:29 |
|
spearce
| i don't think i can get a mouse hover event there. maybe its possible. i haven't tried. | 16:29 |
|
cehteh
| don't care just a idea | 16:30 |
|
| thats what i like in xfig .. it always explains what the user can do at one place | 16:31 |
| → kukks joined | 16:32 |
|
cehteh
| not a shiny gui but very functional/useful | 16:32 |
| → ferdy joined | 16:32 |
|
spearce
| agreed. i'll take functional/useful over shiny anyday. but i'm not the average computer user. ;-) | 16:34 |
| → chris2 joined | 16:37 |
| → lyakh joined | 16:47 |
| → GyrosGeier joined | 16:51 |
|
spearce
| i kinda would like to use tile in git-gui, but i don't want to add the dependency. | 16:56 |
| → Oejet joined | 16:57 |
|
cehteh
| cant you make it optional .. prolly even some more work :) | 16:57 |
|
| http://wiki.tcl.tk/14796 .. even obsoleted :p | 16:58 |
|
spearce
| cehteh: I think i'm going to do an overhaul of git-gui and make the 0.7.x series. i want to do some features in there but its just getting impossible to maintain. ~6k lines of sometimes rather messy tcl in one giant file is *not* helping me. :) | 17:07 |
|
| btw, the i did miss a number of font configs on ui widgets. which is why your option hack fixes the fonts for you. *sigh* | 17:07 |
|
cehteh
| hehe :) | 17:08 |
|
spearce
| whoops, git-gui 0.6.2 missed the 1.5.0.2 release window. :) | 17:09 |
|
corecode
| heh i found a (small) bug? in diff | 17:13 |
|
| -vm_fork(struct lwp *lp1, struct proc *p2, int flags) | 17:13 |
|
| +vm_fork(struct proc *p1, struct proc *p2, int flags) | 17:13 |
|
| later... | 17:13 |
|
| @@ -240,7 +237,7 @@ vm_fork(struct lwp *lp1, struct proc *p2, int flags) | 17:13 |
|
| it uses the old function name | 17:13 |
|
| not sure if that is expected | 17:14 |
|
gitte
| corecode: if you read the diff, you are more likely to know the old name (or signature)... | 17:14 |
|
| so I'd say it is good. | 17:14 |
|
corecode
| well, i was confused for a short moment | 17:15 |
|
| because i though "wtf? i didn't change the signature?" | 17:15 |
|
gitte
| I, for one, like that behaviour. You see in the "+" line what is new, but you can orient yourself with the function name you are more likely to know. | 17:19 |
|
| For example, I write a patch and send it to you, where I rename "main()" to "somestrangefunction()". | 17:20 |
|
spearce
| agreed. the only thing i don't like is the header grabs the Java class name, not the method name. but java's crap anyway. ;-) | 17:20 |
|
gitte
| I guess if you know the code already, saying "this is in main()" is more likely to help you. | 17:21 |
|
| spearce: at least it is a little more consistent than C++... | 17:21 |
|
Tali
| spearce: stupid question: how do I use egit in eclipse? How can I install the plugin so that it gets loaded in the main eclipse? | 17:43 |
| → pdmef_ joined | 17:43 |
|
spearce
| Tali: import the plugin into your workspace, then export the three plugins using the plugin export wizard. that should make a local update site that you can then point your eclipse at and install the plugins from. | 17:44 |
|
Tali
| ah, where do I find the plugin export wizard? | 17:45 |
|
| (I don't have eclipse at hand at the moment) | 17:45 |
|
spearce
| File->Export, Plug-in Development, Deployable plug-ins and fragments. | 17:46 |
|
Tali
| great, thanks. | 17:48 |
|
| will try that later | 17:48 |
| → Eludias joined | 17:48 |
|
arw
| there is an eclipse-plugin? | 17:48 |
|
spearce
| its a work in progress. not really useful for the mere mortal. | 17:49 |
|
Tali
| but I guess its nice to learn a little bit about eclipse at the same time, too. | 17:49 |
|
| and my company is thinking about deploying eclipse in the near future, so I have to work with it anyway... | 17:50 |
|
spearce
| i'm still using eclipse and git-gui in parallel. | 17:50 |
|
cehteh
| spearce: btw instead of the rescan button you could use inotify/dnotify .. dunno if thats intended, but showing an old state in git gui has no much value anyways | 17:52 |
|
spearce
| cehteh: i've actually thought of doing that, but not every OS supports it. (windows?). anyway, i'd like to do it someday, mac os x has the same type of concept and i think its worth doing. | 17:53 |
| → alley_cat joined | 17:53 |
|
cehteh
| spearce: polling the directory mtime once every few seconds wont hurt either .. i agree that polling sux ... but if there is no OS support, its not your fault anyways .. and doing it at a low frequency isnt problematic | 17:54 |
|
| windows prolly has its own notify system .. i would be surprised if not | 17:57 |
|
| (someone just confirmed me that windows has a api for that) | 18:00 |
|
spearce
| api? something i can use from pure tcl? ;-) | 18:00 |
|
cehteh
| at worst you have to ship a small C tool which does that .. maybe then portable for windows and linux | 18:01 |
|
| popen("git-watch-dir", "r") .. or such :) | 18:02 |
|
| prolly even a good idea since it only needs to report relevant changes means not .git and exclude all things from .gitignore | 18:02 |
|
spearce
| indeed. | 18:03 |
|
cehteh
| such a tool could be useful for quite a lot other tasks too | 18:04 |
|
| if you come back to this, tell me maybe i try my luck, hacking it together | 18:04 |
|
spearce
| ok. probably after i overhaul git-gui and get 0.7 out; it would be easier to add that in then. | 18:05 |
|
cehteh
| sure .. i have a lot of other fun anyways | 18:06 |
| → arthurgeek joined | 18:08 |
| → Romster joined | 18:08 |
|
arthurgeek
| Hi all! I compiled git on Mac OS X 10.4.6 and when I run git-clone I get: /usr/local//bin/git-clone: line 177: git-init: command not found | 18:09 |
|
spearce
| odd. that should not have happened. ;-) | 18:09 |
|
| git does `git --exec-path` give you ? | 18:10 |
|
| and `which git-init` ? | 18:10 |
|
arthurgeek
| --exec-python: /usr/local//bin and there's no git-init | 18:11 |
|
raalkml
| arthurgeek: that's not git. That's something else | 18:12 |
|
spearce
| and how does git-clone exist but not git-init ? partial installation somehow? | 18:12 |
|
raalkml
| arthurgeek: there was an installation, btw? | 18:13 |
|
| make install | 18:13 |
|
arthurgeek
| raalkml: yeah.. | 18:13 |
|
Tali
| and with the same prefix= as the compile? | 18:13 |
|
gitte
| arthurgeek: It is one of the things I do not particularly like in git that it has an inbuilt execdir... | 18:14 |
|
cehteh
| gitte: where else? | 18:14 |
|
gitte
| So, if you just type "make", and add the directory to the PATH, it will not work without setting GIT_EXECDIR first. | 18:15 |
|
cehteh
| with .gitconfig you cant install diffrent versions of git in parallel | 18:15 |
|
gitte
| cehteh: with any other program, when I "make" it, I can start it with ./program-name, and it works... | 18:15 |
|
arthurgeek
| I uned ./configure with prefix and then maxe and make install | 18:15 |
|
cehteh
| gitte: mhm maybe the exec-dir should be stored relative to the calling program ... | 18:16 |
|
gitte
| Hmm. Try executing with GIT_TRACE=1. | 18:16 |
|
cehteh
| not absolute | 18:16 |
|
| that would make sense | 18:16 |
|
| gitte thinks it would still not be better. | 18:17 |
|
arthurgeek
| Tali: the configure set GIT_EXECDIR for make and make install? | 18:17 |
|
raalkml
| cehteh: it not always possible to find the "calling program" | 18:17 |
|
cehteh
| $0 :) | 18:18 |
|
raalkml
| cehteh: consider execvp("/usr/local/bin/git-init", argv) where argv[0] = "git-init" | 18:18 |
|
cehteh
| raalkml: this is only the generic case anyways .. if one has some strange setup he prolly knows what he id doing | 18:18 |
|
raalkml
| where is git-init started from? | 18:18 |
|
cehteh
| i mean only the 'git' fontend | 18:19 |
|
Tali
| arthurgeek: if you used configure it should do it for all make calls, yes | 18:19 |
|
cehteh
| not the git-.* thing .. 'git' sets/needs execdir | 18:19 |
|
arthurgeek
| Tali: then, what's my problem? | 18:19 |
|
raalkml
| cehteh: and why can't I call "git" the same way with execvp? | 18:20 |
|
Tali
| arthurgeek: run "make install" again and look at the command lines if it puts all the programms in the correct location | 18:20 |
|
gitte
| arthurgeek: You can _override_ the compiled-in execdir with GIT_EXECDIR. | 18:20 |
|
| arthurgeek: try git-clone after "export GIT_TRACE=1" to see what it tries to call. | 18:21 |
|
cehteh
| raalkml: you can .. why not? ... but if you do you should know what you are doing :) | 18:21 |
|
| means you should setup GIT_EXECDIR | 18:21 |
|
raalkml
| cehteh: oh, I do. I just didn't know that git parses argv[0] (whereas noone else does) | 18:21 |
|
cehteh
| i only think about the generic case when someone calls it from a shell and has diffrent git installations .. | 18:22 |
|
raalkml
| I actually like it how it is. It is stable. Not very handy, but trustable | 18:22 |
|
cehteh
| and yes such should be documented ... | 18:22 |
|
raalkml
| just compile it with different prefixes | 18:23 |
|
arthurgeek
| http://pastie.caboo.se/43144 my ls /usr/local/bin/ | grep git | 18:23 |
|
raalkml
| arthurgeek: looks correct. ls -l? | 18:24 |
|
| (just check for -x) | 18:24 |
|
Tali
| at least git-init and git-push are missing | 18:26 |
|
| disk full perhaps? | 18:27 |
| → arthurgeek_ joined | 18:27 |
|
arthurgeek_
| sorry... ICR client crashed... | 18:28 |
|
| **IRC | 18:28 |
|
Tali
| arthurgeek_: can you rerun make install and look for error messages? | 18:28 |
| → pdmef_ joined | 18:28 |
|
arthurgeek_
| http://pastie.caboo.se/43145 and here is my make install output | 18:28 |
|
| What's this rm -f last line? | 18:29 |
|
gitte
| arthurgeek_: I am on a text console, so I cannot look at your pix. | 18:31 |
|
| But the rm -f line reveals that you are on Windows. | 18:31 |
|
| And it just so seems that you use MinGW? | 18:32 |
|
arthurgeek_
| gitte: I'm on a Mac | 18:32 |
|
raalkml
| arthurgeek_: it's a bit short for make install | 18:32 |
|
gitte
| What? | 18:32 |
|
arthurgeek_
| gitte: it's not a pic.. | 18:32 |
|
Tali
| raalkml: you can scroll to the right | 18:33 |
|
raalkml
| oh, yes | 18:33 |
|
arthurgeek_
| gitte: Mac OS X 10.4.6 | 18:33 |
| → GyrosGeier joined | 18:33 |
|
raalkml
| arthurgeek_: the last rm -f + ln is linking builtin commands to git executable | 18:34 |
|
| gitte seems to be unable to load http://pastie.caboo.se/43145 | 18:34 |
|
raalkml
| well, no errors | 18:34 |
|
| gitte still thinks GIT_TRACE=1 would be a good idea... | 18:35 |
|
arthurgeek_
| gitte: http://pastie.caboo.se/43145.txt | 18:35 |
|
matled
| pastie.caboo.se has dns problems | 18:35 |
|
raalkml
| does "//" in a path means something to Mac OS X? | 18:36 |
|
matled
| nope, this is just from $(prefix)/bin | 18:37 |
|
raalkml
| ok, just checking | 18:37 |
|
gitte
| arthurgeek_: thanks, I saw it now. | 18:38 |
| → arthurgeek joined | 18:38 |
|
arthurgeek
| seems to be working now... | 18:39 |
|
raalkml
| arthurgeek: have you already tried GIT_TRACE=1 git clone ...? | 18:39 |
|
Tali
| raalkml: he didn't have git-init installed, no GIT_TRACE would help here | 18:39 |
|
arthurgeek
| raalkml: yeah... the first time I tried it stoped when loading git-init | 18:39 |
|
raalkml
| but you did have git installed (the executable file named "git") | 18:40 |
|
arthurgeek
| now I compiled it again (make && make install) and it's working... | 18:40 |
|
Tali
| strange, but good it works now | 18:40 |
|
| hmm, looking at the ls output again, it seems that no builtin command was installed | 18:41 |
|
raalkml
| arthurgeek: next time, it'd be a good idea to do make -s install and pay attention to anything you see (-s hides the commands) | 18:41 |
| → alley_cat joined | 18:45 |
| → alley_cat joined | 18:46 |
| → alley_cat joined | 18:47 |
| → arthurgeek joined | 18:57 |
| → Tv joined | 19:07 |
| → Oejet joined | 19:22 |
| → ACSpike[Work] joined | 19:26 |
|
ACSpike[Work]
| do any of the three native win32 efforts listed on http://git.or.cz/gitwiki/WindowsInstall have web presences? | 19:27 |
| → troyt joined | 19:27 |
|
spearce
| ACSpike: not really. all three are still works-in-progress, though the MinGW port may actually be useable. | 19:28 |
|
| http://repo.or.cz/w/git/mingw.git | 19:29 |
|
clee
| spearce: the MinGW port actually supports git:// URLs now, doesn't it? | 19:33 |
|
spearce
| clee: i think that's what i read, but i don't use it myself so i can't say. | 19:34 |
|
troyt
| Question: What's the normal order/procedure for submitting patches to git? I've been working on support for large pack files. My repo has about 5.6 GB worth of pack files, so it was an itch... I'm still working on testing/verifying my patch, but it seems to be working so far... | 19:34 |
|
spearce
| troyt: see Documentation/SubmittingPatches. but you are walking on the same code that Nico and I are in right now.... *sigh* | 19:34 |
|
troyt
| Such is life. It's not like anybody knew I was digging there... | 19:35 |
|
spearce
| what is the change, expanding the offset in the index to 64 bits? | 19:36 |
|
troyt
| More or less. | 19:36 |
|
spearce
| did you account for handling the old and new index formats by putting PACK_IDX_SIGNATURE in the 64 bit version? | 19:37 |
|
troyt
| Yup. I saw that bit of code and was thinking "hmmm... looks like this may be pending" | 19:37 |
|
| So I uncommented it and used PACK_IDX_SIGNATURE. | 19:38 |
|
spearce
| that, and a whole lot of other stuff in there is. | 19:38 |
|
troyt
| I can easily just submit the patch so you can see what I did. | 19:38 |
|
spearce
| yea, that would be interesting. but be prepared for Nico to jump. :-) | 19:38 |
|
troyt
| Define "Jump" | 19:38 |
|
spearce
| reply with something saying we're working on this. :) | 19:39 |
|
| last time i was in this code with a huge series (sliding window mmap) it got blocked by Junio's changes and Nico's changes and i got pushed back 6 months *and* had to rewrite everything. not pleasant. | 19:39 |
|
troyt
| Yeah, well, I can't say it would be a suprise. My submission would be like a bolt from the blue; nobody was expecting it. | 19:40 |
|
gitte
| troyt: did we not talk about that a few days ago? | 19:40 |
|
spearce
| in case you did not know, Junio did something like that a while ago and pulled it. it never got merged into next. | 19:40 |
|
raalkml
| troyt: I'm intrigued enough | 19:40 |
|
troyt
| Sure did, gitte. | 19:40 |
|
raalkml
| when do you think you are ready? | 19:40 |
|
gitte
| ACSpike[Work]: the third effort is probably not really started at all. | 19:41 |
|
troyt
| I had my local kernel hacker (Eric Biederman) over my shoulder helping me out as well... | 19:41 |
|
gitte
| Wow. That's a good way to learn... | 19:41 |
|
troyt
| No kidding. | 19:41 |
|
| gitte envies troyt. | 19:42 |
|
jdl
| I'd be worried with biederman behind me... :-) | 19:44 |
|
ACSpike[Work]
| gitte: that's the TortoiseCVS route? | 19:44 |
| → Tv joined | 19:44 |
|
gitte
| Yes. | 19:46 |
|
spearce
| troyt: please do post your patch, i'd at least be interested in seeing how you did this... but i'm also going to suggest we don't merge it, because i want to get pack v4 through instead. | 19:46 |
|
gitte
| And the description is a little misleading... | 19:46 |
|
troyt
| Well, I've worked with biederman for two years now, so I'm pretty used to him. The funny part was when he kept telling me that "this is C, not C++". | 19:46 |
|
| Pack V4? | 19:46 |
|
gitte
| spearce: maybe the patch can be integrated in your packv4 efforts? | 19:47 |
|
spearce
| troyt: nico and i are trying to improve the basic packfile format to be smaller and be able to do some reading operations faster. | 19:47 |
|
| gitte: Nico and I have already settled on 64 bit index in pack v4... | 19:47 |
|
gitte
| ... by storing tree objects differently... | 19:47 |
|
spearce
| and commits. | 19:47 |
|
gitte
| Commits also? | 19:47 |
|
| Yeah, makes sense: for reachability. | 19:47 |
|
spearce
| yes. especially commits, it helps rev-list. | 19:47 |
|
gitte
| you cannot pack sha1s efficiently anyway. | 19:48 |
|
spearce
| you mean compress? ;-) | 19:48 |
|
gitte
| :-) | 19:48 |
| → T1 joined | 19:59 |
| T1 → Tv1 | 19:59 |
|
gitte
| spearce: I just cobbled together a patch to show method names in diffs of java code... | 20:00 |
|
spearce
| gitte: heh, very nice. ;-) | 20:01 |
|
| f'k. now i have to rebase on top of nico's 6 series... grrr... | 20:04 |
| ← arthurgeek left | 20:09 |
|
| gitte needs almost as much time composing a commit message as writing & testing the patch! | 20:11 |
|
spearce
| yea, me too. you aren't alone there. :) | 20:11 |
|
gitsky
| you're doing it for our children | 20:13 |
| dwmw2_BOS → dwmw2_gone | 20:21 |
|
gitte
| gitsky: I'd have to fork() first :-) | 20:22 |
| → lhz joined | 20:22 |
| dwmw2_gone → dwmw2_BOS | 20:28 |
|
| gitte wonders what _BOS means... | 20:33 |
|
clee
| _BOS probably means Logan airport | 20:35 |
|
| (in Boston - the airport code is BOS) | 20:35 |
|
| and, gitte - don't you mean you'd have to spawn()? | 20:36 |
|
troyt
| you have to fork() before you can spawn() | 20:39 |
|
spearce
| though i think `date` has to come first. ;) | 20:40 |
|
troyt
| spearce: Should I CC the patch to the git list, or just send it your way? | 20:40 |
|
spearce
| cc the list, others may wish to comment. | 20:40 |
|
jdl
| git gui grouses about not being able to parse the "git version gitgui.0.6.1.g509b" string. | 20:41 |
|
spearce
| jdl: when its running? like at startup? | 20:41 |
|
jdl
| That version string is unfortunate for other reasons too. | 20:41 |
|
| yes. | 20:41 |
|
spearce
| wtf. | 20:42 |
|
| don't even tell me git-describe did something very very bad.... | 20:42 |
|
jdl
| It really would have been nicer to see some variant of 1.5... based version string too. | 20:42 |
|
spearce
| git describe 509b | 20:42 |
|
| v1.5.0.1-213-g509b4d7 | 20:42 |
|
| hmm. | 20:42 |
|
jdl
| describe current top of git git.git? | 20:43 |
|
spearce
| yes | 20:43 |
|
jdl
| I get: | 20:43 |
|
| % git --version | 20:43 |
|
| git version gitgui.0.6.1.g509b | 20:43 |
|
spearce
| very wrong. very wrong. | 20:43 |
|
| are you missing the 1.5.0.1 tag in your git.git repository? | 20:43 |
|
| spearce thinks git-describe may need to grow some more smarts here with gitgui tags... | 20:44 |
|
jdl
| No. | 20:44 |
|
spearce
| so what does `git describe --debug 509b` give you? | 20:44 |
|
jdl
| apparently, describe has had its heuristic changed to find the "closest tag" differently now. | 20:44 |
|
spearce
| yea, i wrote that feature. it works very well.... | 20:45 |
|
| except now! | 20:45 |
|
jdl
| git describe --debug 509b | 20:45 |
|
| searching to describe 509b | 20:45 |
|
| annotated 213 v1.5.0.1 | 20:45 |
|
| annotated 240 v1.5.0 | 20:45 |
|
| annotated 455 v1.5.0-rc4 | 20:45 |
|
| annotated 651 v1.5.0-rc3 | 20:45 |
|
| annotated 780 v1.5.0-rc2 | 20:45 |
|
| annotated 911 v1.5.0-rc1 | 20:45 |
|
| annotated 1111 gitgui-0.6.1 | 20:45 |
|
| annotated 1127 gitgui-0.6.0 | 20:45 |
|
| annotated 1195 v1.5.0-rc0 | 20:45 |
|
| annotated 1269 v1.4.4.4 | 20:45 |
|
| traversed 1600 commits | 20:45 |
|
| more than 10 tags found; listed 10 most recent | 20:45 |
|
| gave up search at 851a911024481f6759bce337b8dc50241070db81 | 20:45 |
|
| Oh wait. | 20:45 |
|
| I had a 1.4.mumble installed when I rebuilt this 1.5.0.1.... | 20:45 |
|
| is it not self-referential enough during a build? | 20:46 |
|
spearce
| no. we rely on the installed git-describe to generate the new version. | 20:46 |
|
| so if you had 1.4.x installed when you built 1.5.x it would compute the version wrong. | 20:46 |
|
jdl
| So it is _not_ self referential enough to be current during the build... | 20:46 |
|
| Right. | 20:46 |
|
| So you have to build it twice to get it right? | 20:47 |
|
| Feh. | 20:47 |
|
gitte
| clee: ;-) | 20:47 |
|
spearce
| well, build, install, build, install. :) | 20:47 |
|
jdl
| Becky will love this. | 20:47 |
|
| gitte thinks IRC sucks, because when you work on something different for a few minutes, you have to look what are the unseen messages... | 20:48 |
|
gitte
| jdl: Who is Becky? Beckham? | 20:48 |
|
spearce
| gitte: what do you want, a diffstat summary for irc? ;-) | 20:48 |
|
jdl
| The person here that does the git installs locally. | 20:49 |
|
| Our install process is less than ideal. | 20:49 |
|
clee
| jdl: you have somebody who does git installs for you? | 20:49 |
|
| that's a job? | 20:50 |
|
| man, I'm working at the wrong company | 20:50 |
|
jdl
| No. | 20:50 |
|
| She's the one who understands the process. :-) | 20:50 |
| → sgrimm joined | 20:51 |
|
jdl
| I'm disinclined to figure it out for fear _I_ get to do them too. | 20:51 |
|
| What's the one .o file I can remove to force it to get this version right? | 20:53 |
|
spearce
| shouldn't be necessary. just running make with the right git-describe in place should force the version to update, and the files to recompile. | 20:54 |
|
jdl
| It didn't. | 20:54 |
|
spearce
| kill GIT-VERSION-FILE then. | 20:55 |
|
jdl
| Crap. | 20:56 |
|
| Stupid path problems. | 20:56 |
|
| % make | 20:56 |
|
| GIT_VERSION = gitgui.0.6.1.g509b | 20:56 |
| → robinr joined | 20:56 |
|
sgrimm
| How do I make git-rebase --continue work when I've decided to accept the upstream version of the file? | 20:59 |
|
spearce
| git-rebase --skip ? | 20:59 |
|
| or maybe not... | 20:59 |
|
| if its the entire patch its --skip. | 21:00 |
|
sgrimm
| No, just one file | 21:00 |
|
| I run "git add foo" then "git-rebase --continue" and it tells me I need to run git-add. | 21:00 |
|
spearce
| if its just one file in the patch but not others, checkout the upstream version and restage that in the index, then --continue. | 21:00 |
|
| git status ? | 21:00 |
|
| anything else unmerged? | 21:00 |
|
jdl
| checkout the version of the file you want, then update-index it. | 21:00 |
|
sgrimm
| OK, I'll try that | 21:00 |
|
spearce
| well 1.5.0 add/update-index == tomato/tomato. :) | 21:01 |
|
sgrimm
| Hmm, no dice. Did "git checkout foo", "git add foo", "git rebase --continue" and got the "did you forget to use 'git add'?" message for that file. | 21:02 |
|
| Actually, wait, I guess this particular patch did only touch that one file. I guess --skip will work. | 21:02 |
|
jdl
| OK so git gui is happy with a better-formed (modern) version string. Thanks. | 21:03 |
|
sgrimm
| But jeez, "accept the upstream version" is a pretty common thing to do, isn't it? Shouldn't be so obscure in the git UI. | 21:03 |
| Tv1 → Tv | 21:04 |
|
gitte
| Did I understand correctly that git-rebase --continue commits the result itself? What if I want to edit the commit message to reflect some changes I had to make? | 21:06 |
|
spearce
| yea, that's an issue. you can edit the message file, but there's two different ones depending on if you used -m or not. | 21:07 |
|
gitte
| How awful would it be on existing users if we changed that? | 21:07 |
|
spearce
| so long as it autocommits on --continue, i doubt users would notice. or is that what you wanted to change? ;-) | 21:08 |
|
gitte
| Yes, that's what I wanted to change. | 21:08 |
|
| For example, if I realize that a certain patch I made was done differently in upstream, I want to skip it. | 21:09 |
|
| The most natural way for me would be to "git reset --hard; git rebase continue" | 21:09 |
|
| Sometimes, I upstream has some specific thing differently, and I have to fix up the code _and_ the message. | 21:10 |
|
| Most natural to me would be "git commit -F .msg -e; git rebase continue" | 21:10 |
|
robinr
| spearce: http://www.eclipse.org/legal/eplfaq.php , section 27 | 21:10 |
|
spearce
| robinr: yea. | 21:11 |
|
gitte
| Lawyers. Urgh. | 21:11 |
|
robinr
| gitte: yes, the one that decided to create one license to rule them all | 21:13 |
|
| gitte thinks if you need a lawyer to understand a certain legal document, when you are perfectly capable of writing a C grokking parser in perl, suggests that legal documents are only written to make sure that lawyers always get loads of money. | 21:14 |
|
gitte
| How can you tell that a lawyer lies? | 21:15 |
|
robinr
| that's an old one | 21:15 |
|
gitte
| I still love it. | 21:15 |
|
robinr
| works on politicians and car salesmen too | 21:15 |
|
gitte
| Well, never attribute to malice that which can be explained by stupidity. | 21:16 |
|
| I think that lawyers could and should be held fully accountable for what they do. | 21:16 |
|
robinr
| anyway, it seems the eclipse people don't mind GPL:ed plugins as long as we do not COPY code | 21:21 |
|
| (from eclipse | 21:21 |
|
| ) | 21:21 |
|
spearce
| right | 21:21 |
|
sgrimm
| gitte: In my experience behind every scummy lawyer is an equally scummy client. I'm sure you wouldn't put the FSF's lawyers in the same bucket as SCO's? | 21:22 |
|
robinr
| sgrimm: watch your language! | 21:23 |
|
| mentioning SCO in an innocent channel | 21:23 |
|
| :) | 21:23 |
|
sgrimm
| :) | 21:23 |
|
robinr
| the Source Code 0wners, brr | 21:25 |
|
gitte
| sgrimm: a decent person will get a decent job. Nuff said. | 21:26 |
| → Tv joined | 22:02 |
| → Tv joined | 22:21 |
| → devogon joined | 22:38 |
| → Simon- joined | 22:46 |
|
Simon-
| erm. is there any easy way to recover from typing "git reset" instead of "git bisect reset"? :/ | 22:46 |
|
spearce
| Simon: git checkout `cat .git/head-name` | 22:48 |
|
| actually just `git bisect reset` | 22:48 |
|
gitte
| If something like that happens to me, I usually look into the reflog. | 22:49 |
|
spearce
| gah, we should put *.h files before *.c files when we spit out a patch. | 22:49 |
|
gitte
| And when I find the commit I want to reset to, I say "git checkout <thebranch>; git reset --hard <thecommit>" | 22:50 |
|
Simon-
| I managed to get it to work by doing diff|patch -Rp1 (to get rid of the needs update errors) and reset it back to the right place | 22:50 |
|
gitte
| Instead of "git diff | patch -Rp1", you can say "git reset --hard", too. | 22:51 |
|
| The advantage: it is faster, and you do not need `git update-index --refresh` (or git-status, which does that implicitly) | 22:51 |
| → gitster joined | 23:11 |
| → GyrosGeier joined | 23:18 |
|
meyering
| hi gitster, you're just in time :) I've just posted a patch for a little problem with 2GB files in diff --cc area: http://marc.theaimsgroup.com/?l=git&m=117253150809507&w=2 | 23:18 |
| ← troyt left | 23:18 |
|
meyering
| spearce: and ChangeLog/README/NEWS before everything else | 23:19 |
| → troyt joined | 23:19 |
| ← Simon- left | 23:22 |
|
gitster
| meyering: pre told me that you had a rather big integer size patches. do you want to feed them to me too? | 23:25 |
|
| gitster favors a small step at a time approach, though... | 23:25 |
|
meyering
| gitster, maybe he was mistaken? I'll take a look tomorrow. | 23:34 |
| → mountie joined | 23:37 |
|
gitster
| If you do not already have it, there is no need to hurry. | 23:37 |
|
| gitte wonders if xdiff has size_t problems, too (it uses long throughout) | 23:39 |
|
gitte
| gitster: I just remembered my builtin merge-one-file patch... Should I resubmit it, or do you hate it? | 23:42 |
| → cworth joined | 23:50 |
| → prologic joined | 23:58 |
|
prologic
| Hi guys, an interesting question. how would I create a git repo to watch several other git rpeos in some nice way ? | 23:59 |
|
| so taht the master repo has a combined log of all sub-repos | 23:59 |
|
| or something :) | 23:59 |
|
| is this even possible | 23:59 |