IRCloggy #git 2009-05-11

Logs Search ←Prev date Next date→ Channels Documentation

Provider of IRC logs since 2005.
WARNING: As Freenode became unjoinable and lost all warnings in topics, we cannot log channels on Freenode anymore.

2009-05-11

killerchicken__ so what you can do is gitk, and find a commit without sensitive information in it.00:00
note down its sha00:00
bryanray joined00:00
killerchicken__ sha1, that is00:00
then do a git rebase -i sha100:00
Emachman The history is as follows:00:00
Today: Commit 2 - Removing personal info00:00
killerchicken__ this will bring up an editor, where you can pick commits. Remove all commits that have offending data in it, then save.00:00
Emachman April 28: Commit 1 - Initial import00:01
killerchicken__ ah. so you only have two commits in total?00:01
Emachman And that's it00:01
Only 2 to that file00:01
killerchicken__ doesn't matter00:01
just pick any commit before that commit 100:01
Emachman Ok00:01
killerchicken__ do you want to keep parts of commit 1, or get rid of it entirely?00:02
spenser przemoc: Thank you. Hopefully this gets fixed. I'm going to get back to work.00:03
przemoc: bye00:03
spenser left00:03
Emachman Commit 1 is adding a bunch of files, not just the one with personal info00:04
killerchicken__ so you want to edit that commit?00:04
then, when the text editor comes up, don't delete the line with the commit, but change the "pick" to "edit"00:05
then you can edit that commit00:05
qhoxie joined00:06
struberg spearce if I like to detect git-added files, I have to compare the ObjectId of this file in the DirCache with the one from the HEAD, isn't? Is there an iterator for that?00:07
or is there an much easier way?00:08
spearce struberg: yes. CanaonicalTreeIterator.00:08
there also are methods on TreeWalk to add an ObjectId; it creates the CTI for you00:08
Emachman Well... it's out of my git repo... but it's still accessbale from github by going to http://github.com/soxred93/<repo>/commits/master/00:08
paulboone joined00:08
WALoeIII joined00:08
spearce struberg: note it must be a tree objectid, not a commit objectid like HEAD often is; so you need to resolve HEAD to a tree. e.g. RevWalk.parseTree(HEAD).00:09
struberg spearce: txs!00:09
Emachman left00:09
struberg spearce: thought about addint it as 3rd iterator to the treewalk00:09
spearce struberg: yup00:10
that's why treewwalk takes any number of iterators00:10
struberg so I can compare fielsystem/index/repo00:10
yea, took me a bit to figure it out ;)00:10
spearce: CanonicalTreeParser isn't?00:11
spearce struberg: uh, yea, that's it. :-)00:11
seangrove joined00:14
stuffcorpse left00:15
stuffcorpse joined00:15
ceej left00:17
Yuuhi left00:18
ashleyw joined00:18
voker57__ left00:19
voker57__ joined00:22
bnferguson left00:22
struberg left00:23
cxreg "Last week at eurocrypt, a small group of researchers announced a fairly serious attack against the SHA-1 digest algorithm"00:24
Ilari 2^52 attack reportedly.00:25
And its collision attack, not second preimage attack.00:26
voker57__ left00:26
cxreg 52 out of 160?00:26
oh, I see. hmm.00:27
JohnnyL left00:28
Ilari cxreg: Brute force would be 2^80.00:29
killerchicken__ cxreg: The way I see it, this is not a problem today. But everyone using sha1 better had a migration plan to another hash for when sha1 is broken, which will most likely happen soon. I'm not sure if there is any development in that region. If not, there probably should be.00:29
Ilari Is there faster-than-generic 2nd preimage attack for MD5 yet?00:29
killerchicken__ (with broken, I mean not just being able to create collisions, but preimage attacks at least)00:30
cxreg development in that region, in git you mean?00:30
killerchicken__ Ilari: not that I know of00:31
agenteo joined00:32
voker57__ joined00:33
RandalSchwartz sha1 isn't used cryptographically in git, though00:33
Ilari In git, its kinda problematic. The namespace from different hashes is totally distinct from SHA-1 namespace.00:33
killerchicken__ RandalSchwartz: it is, when you sign a tag.00:33
Ilari RandalSchwartz: It is.00:33
RandalSchwartz sure, but any faking would be quickly exposed00:33
killerchicken__ and exactly how?00:34
RandalSchwartz and almost certainly result in a tree that doesn't compile00:34
the odds of finding a collision to a published hash that also represents a good tree are not worth considering00:34
this has been discussed time and again on the list00:34
Anjo_Malvado joined00:34
RandalSchwartz it's not worth rearguing it00:34
Anjo_Malvado error: insufficient permission for adding an object to repository database ./objects00:34
google didn't help. Could anyone?00:35
Ilari RandalSchwartz: There are two VALID postscript files that collide in MD5.00:35
elad` left00:35
RandalSchwartz MD5 is far smaller00:35
Anjo_Malvado - pushing to a shared repo?00:35
was it set up as a shared repo?00:35
killerchicken__ RandalSchwartz: nonetheless, it's very possible that a preimage attack on sha1 is discovered. git better had a plan to migrate away from sha1 in that case.00:35
Anjo_Malvado RandalSchwartz: yup00:35
RandalSchwartz right permissions, etc?00:35
you a member of the group that owns the repo?00:35
Anjo_Malvado RandalSchwartz: well, I followed the instructions...00:35
RandalSchwartz: oh, hummm00:35
RandalSchwartz and the files all mode 66x in there00:35
shared repos need group sharing00:36
Ilari RandalSchwartz: Only files in logs need to be that. The rest tend to be 444.00:36
RandalSchwartz wanders off... can't keep typing00:36
gaveen left00:36
Anjo_Malvado RandalSchwartz: you mean in the bare repo, .git/*00:36
Ilari: .git/objects/* ?00:37
Ilari Anjo_Malvado: If you have '.git' directory (as oppsoed to 'foo.git'), it isn't bare.00:37
voker57__ left00:37
Anjo_Malvado Ilari: yeah yeah, my mistake. I mean: /my/repo/software.git/objects00:38
sorry :P00:38
arohner left00:38
Ilari Anjo_Malvado: All DIRECTORIES there should be 2770/2775 (for multi-user repo). All the regular files should be 444.00:38
Anjo_Malvado Ilari: okie, thanks. Will try now :)00:39
Ilari Anjo_Malvado: Note, Directories only. So 'chmod -R' WILL NOT WORK right.00:40
Anjo_Malvado Ilari: yup.00:40
Ilari: you mean: chmod 2775 branches hooks info objects refs00:41
Ilari: or do you mean: find . -type d -exec chmod 2775 {} \;00:42
voker57__ joined00:42
Anjo_Malvado Ilari: and: find . -type f -exec chmod 444 {} \;00:42
ashleyw left00:42
Anjo_Malvado better backup his bare repo00:43
Ilari Anjo_Malvado: The latter. Exception to that "regular files only need 444" is stuff inside 'logs' directory.00:43
nabilelisa left00:43
Ilari Anjo_Malvado: Those files (in case they exist) need 660/664.00:43
Anjo_Malvado Ilari: oh, I see. trying right now.00:43
Ilari Anjo_Malvado: Plus everything has to have right user group.00:44
Anjo_Malvado: And also do 'git config core.sharedrepository world' (2775 so 'world').00:44
__iron left00:45
voker57__ left00:46
Anjo_Malvado Ilari: there is no logs directory in my bare repo00:46
aziz left00:47
voker57__ joined00:48
gaveen joined00:48
jamescarr joined00:49
jamescarr git add * works recursively right?00:49
bnferguson joined00:50
Anjo_Malvado Ilari: it worked, thanks :)00:51
voker57__ left00:52
qhoxie_ joined00:52
ashleyw joined00:52
ashleyw left00:53
voker57__ joined00:54
eno__eno00:54
RayMorgan joined00:55
rettub_ joined00:55
Ilari jamescarr: 'git add <directory>' is recursive.00:56
jamescarr: In 'git add *', the shell expands the '*' before handing it in.00:57
neoeinstein_ joined00:59
neoeinstein left01:00
neoeinstein_neoeinstein01:00
qhoxie__ joined01:02
ashleyw joined01:08
Anjo_Malvado Ilari: my bare repo doesn't have a logs directory. Did you mean that my local repo should have right permissions for its .git/logs directory?01:09
arohner joined01:09
Ilari Anjo_Malvado: logs directory isn't necressary on bare repo.01:10
Anjo_Malvado: If it isn't present, it doesn't contain any regular files.01:10
Anjo_Malvado Ilari: right, so that's why I guessed you were talking about the local repo01:10
Ilari: in the bare repo?01:10
ceej joined01:11
Anjo_Malvado Ilari: I have regular files... but still the bare repo doesn't have a logs directory01:11
Ilari Anjo_Malvado: Nope. The bare repo can have logs directory. And if there are regular files there, all pushing users need write perms to those files.01:11
Anjo_Malvado Ilari: oh, I see.01:11
Ilari Anjo_Malvado: In fact, those are the only files in repo that aren't WORM. That's why they need write perms while all others don't (instead needing write perms to their parent directories).01:11
Anjo_Malvado Ilari: so I guess some other operation will trigger the creation of a logs directory in the bare repo because so far it doesn't and everything is working now (pulls,pushes)01:12
Ilari Anjo_Malvado: In default configuration, nothing will trigger it.01:12
Anjo_Malvado Ilari: what does WORM stands for? o.O01:12
Ilari: what would?01:12
Ilari Anjo_Malvado: Write Once Read Many01:12
jgalvez joined01:12
Anjo_Malvado humm01:12
Ilari Anjo_Malvado: If reflog creation would be enabled, that would create files under it.01:13
jgalvez how do I replace a file in the current commit with the same file from the last commit? kind of like a rollback on a single file01:13
Anjo_Malvado Ilari: why would I use reflog? (what is it :)01:13
Ilari Anjo_Malvado: Reflogs record past values of branch pointer. Really useful in working repos, not so much in others.01:14
marvil07 left01:14
Ilari jgalvez: 'git checkout <commit> -- file'.01:15
Anjo_Malvado Ilari: okay, thanks for your patience :]01:15
jgalvez Ilari: like, git commit 08f01131fa2adbc90f121f1a504b6d4b6271dbcc -- file ?01:16
jfkw left01:16
qhoxie left01:17
zuez joined01:18
Ilari jgalvez: Something like that.01:19
jgalvez: That rolls back file called 'file'.01:19
parasti left01:20
voker57__ left01:22
voker57__ joined01:22
cpgcpg|away01:27
gberdyshev joined01:29
bryanray left01:29
cpg|awaycpg01:30
qhoxie_ left01:30
Kbyte left01:34
hpoydar joined01:39
elik joined01:39
leachim6 joined01:39
paulboone left01:40
mbroeker left01:46
smashwilson left01:46
Alien_Freak joined01:46
ceej left01:47
agenteo left01:48
ashleyw_ joined01:50
Sho_ left01:51
Sho_ joined01:52
Paf left01:54
Sho_ left01:55
paulboone joined01:55
kukks left01:55
Pewpewarrows left02:00
ashleyw left02:05
arohner left02:07
[1]intripoon joined02:07
kuadrosx joined02:09
mithro joined02:09
travisjeffery joined02:11
spearce left02:12
WALoeIII left02:14
Anjo_Malvado left02:17
poseidon left02:18
hpoydar left02:21
Radar joined02:22
theCarpenter joined02:23
intripoon left02:24
[1]intripoonintripoon02:24
cytrinox_ joined02:25
drewr left02:25
ethercrow_ left02:26
scarabx joined02:28
xenoterracide joined02:29
s1n does github support submodules?02:30
killerchicken__ they have a guide for it, so I'd assume yes.02:30
http://github.com/guides/using-git-submodules-to-track-plugins02:30
Arrowmaster theres not much to really support though02:31
s1n killerchicken__: yeah, i just saw that02:31
killerchicken__ left02:31
killerchicken__ joined02:31
killerchicken__ ups02:31
xenoterracide /topic is out of date... 1.6.3 is out02:32
killerchicken__ yeah, there's not much to support. Only thing I could think of is a special way of listing a submodule in the tree browser02:32
djgera joined02:32
s1n killerchicken__: the guide i saw was http://perlcabal.org/syn/S06.html#Macros02:33
doh02:33
stupid copy/paste02:33
http://github.com/guides/developing-with-submodules02:33
killerchicken__ s1n: I was actually just looking for any indication of "omfg github breaks my submodules"02:34
and there's none of that.02:34
s1n killerchicken__: do i actually do a 'push push master'?02:34
wooli left02:35
s1n or is that a typo02:35
killerchicken__ s1n: I'm not sure what that gh thing is supposed to mean02:35
is that github specific?02:36
s1n i suppose02:36
killerchicken__ then no idea. I would assume typo, but unsure.02:36
s1n is there a github channel i should be asking this in?02:36
ericindc left02:36
killerchicken__ /who #github says "yes"02:36
gotgenes left02:37
cytrinox left02:38
theCarpenter left02:39
cpg left02:41
gaveen left02:42
cpg joined02:46
gotgenes joined02:47
paltman94 joined02:50
leachim6 left02:50
xenoterracide left02:50
wmoxam left02:51
tjafk1 joined02:52
xenoterracide joined02:55
wmoxam joined02:55
fujin joined02:56
Modius joined02:58
gaveen joined02:59
paltman94 left03:00
JPohlmann left03:01
JPohlmann1 joined03:01
djszapi left03:06
tjafk2 left03:09
scientes joined03:11
s1n is it possible to have 2 files from 2 repos in the same directory? (i'm thinking a file in master and a file in a submodule)...03:11
offby1 don't think so.03:11
you could put in a symlink though.03:12
[1]intripoon joined03:13
s1n symlink isn't overly portable...03:13
offby1 true03:15
k0001 left03:17
k0001 joined03:18
harinath__ joined03:19
JPohlmann1 left03:22
harinath_ left03:23
xenoterracide s1n: not really, not in any git-ish way03:23
s1n: obviously you could just copy them around03:23
even in a scripted way03:24
qrush left03:24
xeno joined03:26
dreiss joined03:26
s1n xenoterracide: yeah, i'm trying to figure out how to structure a plugin type setup using submodules03:27
xenoterracide the only real problem you'd have is 'in the same directory'03:28
intripoon left03:30
[1]intripoonintripoon03:30
bcardarella joined03:32
paulboone left03:33
jamescarr left03:39
orafu left03:40
orafu joined03:40
xeno__ left03:42
jsbmsu joined03:45
jsbmsu left03:45
scarabx left03:46
dan left03:46
rovalent joined03:49
jrmuizel joined03:51
schacon joined03:52
ethercrow joined03:54
paltman94 joined03:54
AkumaStreak joined04:02
patmaddox joined04:04
bentob0x joined04:08
jrmuizel left04:10
ashleyw_ left04:13
kate21de joined04:14
travisjeffery left04:16
gaveen left04:18
Fissure hm, it seems using fast-export for archiving repos gives smaller files than using bundles (after compression)04:19
is there a canonical file extension for fast-export output?04:19
jrmuizel joined04:20
bcardarella left04:20
dreiss left04:20
mugwump I'd use .gfi04:20
gaveen joined04:20
Fissure yeah, that's what i came up with too04:21
mugwump Also I think your result that it's smaller will vary vastly on the repository being compressed04:22
paltman94 left04:22
jony joined04:22
mugwump sounds like you're making a small win from a better stream compressor by forsaking the benefits of delta compression04:23
paulboone joined04:25
priidu joined04:27
Fissure yeah; it may only help on smaller repos04:29
these are for school project so they only have a semester of history04:29
s/project/projects/04:29
mugwump eg, running git fast-export --all on perl.git gives 7.6GB of output. Doubt any stream compressor's going to get that down to less than the pack size of ~100MB04:31
mugwump sets bzip2 going, just to see ;)04:32
paulboone left04:33
dreiss joined04:34
Fissure bzip2? lzma, man04:38
twas left04:38
twas joined04:38
schacon left04:38
mugwump I'll try that next04:41
spending much more time on stream compression is an outdated notion anyway, as you'll see from the figures04:42
girishr joined04:42
Fissure the increase in dictionary size by more than an order of magnitude helps, though04:46
ashleyw joined04:46
Fissure like i said, shallow history :)04:46
mugwump right, well with git the window is a sliding window, which can happily slide over any other object in the repository04:47
Fissure i meant for lzma vs bzip204:47
mugwump I'm just glad Linus went with gzip ... good choice of compressed size vs time spent in compression/decompression04:48
twas left04:49
cehteh a bundle is much smaller than a fast export here04:50
mugwump: lzo would have been a nice option too04:51
Fissure oh, it's definitely the right move for usage... i wouldn't use anything but gzip for real-time access04:51
cehteh: what did you compress the fast export with?04:51
cehteh not compressed :P04:51
btw squashfs can be used a nice archiving tool04:52
paulboone joined04:52
paulboone left04:53
cehteh you get all filesystem metadata archived, it compresses very well, much better than tar.bz for example .. it works in parallel on multicore and is very fast04:53
Fissure well of course the fast export is bigger if you don't compress it :P04:53
cehteh bzip2 has a 900k compression window at best04:53
mugwump or, "at worst" if you have less L3 than that04:53
Fissure what does squashfs use?04:53
cehteh for the kind of data which fast import produces thats quite suboptimal04:54
Fissure: dunno lzop maybe, but the biggiest wins are because metadata is very well kept small04:55
Fissure that's why i said bzip2 was a poor choice04:55
cehteh $ du -sh .git*04:57
13M .git04:57
12M .git.squash04:57
mhm after git gc :P04:57
FreakGuard left04:57
orafu left04:58
orafu joined04:58
cehteh well you want to archive only one branch right?04:58
curvature left05:00
curvature joined05:00
Fissure most of these only have one branch05:02
rovalent left05:02
hyperair joined05:03
Jinzhu joined05:05
bobmcw_ joined05:06
bobmcw left05:06
qhoxie__ left05:08
Weaselweb joined05:10
joshsdc left05:12
gberdyshev left05:13
xenoterracide git commit -a is like svn commit isn't it?05:15
Fissure no05:17
git commit -a doesn't hit the server05:17
xenoterracide ok so it's like it except it doesn't hit the server05:17
RandalSchwartz most things in git don't "hit the server"05:18
at least, the things we use hourly05:18
xenoterracide understands git05:18
ivanoats joined05:18
xenoterracide but I'm doing a presentation to people who are probably more familliar with svn05:18
besides git doesn't require a server ;)05:19
RandalSchwartz understands git too05:19
RandalSchwartz wishes people would forget SVN exists05:19
xenoterracide well wish me luck in making converts ;)05:19
mugwump Fissure: ok after 40 minutes, bzip2 got my perl.git down to 1.45GB05:20
still 14.5 times bigger than 20 minutes of getting git to repack the data05:22
ivanoats left05:25
Fissure again, try with lzma -905:25
jony left05:25
jony joined05:25
Fissure it does *much* better in places where window size matters05:26
mugwump what's the default with lzma?05:26
FreakGuard joined05:29
xenoterracide there a man page explaing refspec05:31
?05:31
Helios joined05:32
jrmuizel left05:32
xenoterracide how is git push origin --all different from git push origin?05:34
jceb joined05:34
Helios left05:34
JasonWoof xenoterracide: I think it makes all your branches exist in the remote05:35
normally push just pushes whatever branch you're in05:35
I _think_05:35
mugwump why not read the man page05:36
xenoterracide git push origin will push all that are already on the remote05:36
mugwump: I'm reading it05:36
it's not clear to me05:36
JasonWoof I just do "git push" and it pushes my current branch05:36
xenoterracide if manpages weren't written in alpha kernel geek05:36
mugwump ok so --all is like a pushspec of refs/heads/*:refs/heads/*05:36
unadorned 'git push' pushes *all matching branches*05:36
without an explicit pushspec05:36
tim_jenssen joined05:37
JasonWoof mugwump: branches matching what?05:37
mugwump I have long advocated the default behaviour to be more what JasonWoof just expected thoguh05:37
JasonWoof: all heads with the same name05:37
xenoterracide actually the default is now to yell at you :P05:37
mugwump so, like refs/heads/*:refs/heads/*05:37
xenoterracide 1.6.3 changes a bit05:37
mugwump actually --all is like +refs/heads/*:refs/heads/*05:37
xenoterracide mugwump: so it will push branches not already on the remote?05:38
mugwump --all probably will, due to the +05:38
xenoterracide ok05:38
JasonWoof mugwump: same as what? sorry, I don't really understand refs. I think it terms of branches, and occationally tags05:38
robinr joined05:38
xenoterracide still wants something that pushes to all remotes all matching branches05:38
JasonWoof xenoterracide: sounds like that's what "git push" does05:39
Helios joined05:39
xenoterracide JasonWoof: no05:39
don't think so05:39
never has for me05:39
but maybe I'm mistaken05:39
JasonWoof I didn't either, but that's my best guess at what mugwump is saying05:39
I haven't worked with a remote that has more than one branch, so I haven't had to know about this stuff05:40
or at least haven't pushed to one05:40
mugwump xenoterracide: there's a 'git remote update'05:40
xenoterracide well I have05:40
mugwump but that's about it05:40
xenoterracide mugwump: that's pulls not pushes05:40
mugwump right05:40
xenoterracide I always use that to update05:40
because I don't like it auto merging stuff for me05:41
mugwump: I want a push equivilant of git remote update05:41
Eridius joined05:41
JasonWoof mugwump: when I do "git push" will it ever matter what I have in local branches other than the one I currently have checked out?05:41
mugwump JasonWoof: when in doubt, use 'git push origin HEAD'05:43
or set push = HEAD in your [remote ...] section05:43
drizzd left05:43
mugwump xenoterracide: free ponies are down the corridor05:43
xenoterracide mugwump: hah05:44
JasonWoof I like just typing "git push" but I'd like to know if/when this might get me in trouble05:44
stuffcorpse left05:44
xenoterracide I don't think I ever noticed git push working by itself05:44
mugwump ok here's where it gets you in trouble. Say you've got a 'master' and a 'release-3' branch05:46
xenoterracide oh, and I really wish that git would start writing man pages in something other than alpha geek05:46
mugwump you merge in 'master' to 'release-3'05:46
to see how well it merged05:46
xenoterracide or publish a clear explaination of some of this somewhere05:47
mugwump you forget about this, then switch to 'master' and do some work05:47
finally, 'git push' will push both branches05:47
andy7534211 joined05:47
JasonWoof oh05:47
mugwump xenoterracide: why? people will just complain anyway05:47
they're in unix english: concise05:48
JasonWoof ok, so "git push" will push all branches, that have a matching branch (by name) in the remote repo?05:48
mugwump exactly05:48
xenoterracide mugwump: there in git speak05:48
refspec still means nothing to me05:48
and I've still never found an explaination of it05:48
mugwump where are you reading 'refspec' ?05:49
andy7534211 can I have two `remote.origin.url's? so when I do git pull it will pull from two repositories?05:49
xenoterracide mugwump: git help push05:49
the entire secion on it is still reading kinda alien05:49
I know how to use push and I still don't understand what it's saying05:50
mugwump so, <refspec> is described in the second paragraph05:50
of OPTIONS05:50
xenoterracide yes I've read it05:50
mugwump which part is difficult?05:51
xenoterracide doesn't really want to go into tearing it apart now05:51
xenoterracide I'm just griping05:51
khmarbaise joined05:51
xenoterracide and trying to figure out what to put on this slide05:51
mugwump ok well why not suggest improvements to the list as a patch or send your critique there05:51
stuffcorpse joined05:51
xenoterracide so I can explain it to other people05:51
JasonWoof xenoterracide: looks to me like the refspec thing for push is a way of pushing specific commits to a specific place on the remote05:52
hopefully you'll never need to do that05:53
xenoterracide JasonWoof: git push simply pushes to the remote of the current branch05:53
although I think all remotes would make more sense05:53
mugwump you could submit an enhancement to 'git remote' maybe05:54
JasonWoof at least with the colon. if you have a branch name that matches the name of the remote branch you want to push to, you can just give the name of the branch to push05:54
mugwump I actually have already submitted a change to that section of the manual based on IRC comments05:54
JasonWoof xenoterracide: mugwump just told me that "git push" pushes all branches that have remote branches with matching names05:54
mugwump I guess the man pages could do with more glossaries05:55
xenoterracide JasonWoof: right05:55
but that's not the same as pushing all remotes05:55
mugwump would that help?05:55
git remote | xargs -n 1 git push05:55
:)05:55
JasonWoof :)05:55
xenoterracide heh05:55
JasonWoof mugwump: that's cheating ;)05:55
xenoterracide I don't actually need it these days05:55
I quit working on the project where I could have used it05:56
JasonWoof I don't think I'd want to push more than the current branch05:56
xenoterracide JasonWoof: I did it all the time05:58
you've worked on 2 or 3 branches then push05:58
you shouldn't necessarily be pushing after each commit anyways05:58
it cut down on bandwith I'm sure, because I'm sure some objects were shared from merges05:58
mugwump JasonWoof: there's a new setting push.default05:58
xenoterracide yeah it's very annoying05:59
because now git yells at you if it's not set05:59
mugwump JasonWoof: in git 1.6.305:59
xenoterracide and you do a git push origin05:59
or whatever05:59
mugwump JasonWoof: use git config push.default current06:00
Tuomas joined06:00
gotgenes left06:01
mugwump JasonWoof: see man git-config06:01
Gitbot JasonWoof: the git-config manpage can be found at http://git.or.cz/man/git-config06:01
JasonWoof cool06:01
I look forward to that feature, when I have a newer git06:01
aspotashev joined06:02
JasonWoof I've got 1.6.0.6 right now06:02
mugwump dark ages! :)06:02
JasonWoof I bet I'll have that version of git before I need the feature06:02
aspotashev left06:02
aspotashev joined06:02
mugwump that's almost 5 months old!06:03
FreakGuard left06:03
hyperair left06:03
JasonWoof omg ;)06:03
I must be using a distro with a 6-month release cycle06:04
xenoterracide lol06:04
or cygwin06:04
JasonWoof I'll have to wait another 11 days before I'll get a new version06:04
mugwump no need to wait! build from source! :D06:04
xenoterracide had to wait like 3 days for git 1.6.306:05
girishr left06:05
JasonWoof yeah, yeah. first I'm going to learn how to use it06:05
xenoterracide it was excruciatingly long06:05
RayMorgan left06:05
JasonWoof git development does seem to go very fast06:05
xenoterracide JasonWoof: so does kernel development06:05
mugwump Actually tbh I'm happy with even the version in lenny06:06
xenoterracide most distro's just don't patch like they should06:06
JasonWoof this is not the first feature that has come up as a solution to my questions/concerns that has been created since 1.6.006:06
xenoterracide yeah, git's updates aren't so important imo06:06
JasonWoof git 1.6.0.6 works great. no complaints here06:06
mugwump there will be a version that will change all the defaults to produce fewer unexpected results at some point06:07
JasonWoof good06:07
mugwump then that will probably be considered a minimum version for most people, just like 1.5 was06:07
SRabbelier joined06:07
mugwump that push.default is one example of that06:07
JasonWoof I think it is wise to have the defaults be newbie friendly even at the cost of being powerful06:07
mugwump well, you need a deprecation cycle too06:08
JasonWoof wazzat?06:08
ashleyw_ joined06:08
mugwump if the defaults change, you need to warn people06:08
JasonWoof default -> an option -> an option you're not supposed to use anymore -> can't do it06:08
oh06:08
oic06:09
so it takes a couple versions06:09
agenteo joined06:09
JasonWoof one in which it warns people that if they want to continue to have it work the way it currently does, they have to add something to their config06:09
mugwump sure06:09
JasonWoof and if they don't, they'll get the new default next version06:09
yep, gotta change slow06:10
mugwump not slow. but not fast.06:10
JasonWoof guess I should be more specific there... when you're making changes that change the effects of commands people use a lot... you have to change slow06:11
grrr... still can't get it right06:11
eh, came out ok. I'm losing the ability to read though. should go to bed06:12
mugwump heh, sleep well06:14
hyperair joined06:16
robinr left06:18
aspotashev|eeepc left06:18
JasonWoof _should_ doesn't seem to work on my for going to bed :)06:20
ok, push.default looks awesome. I'm trying to figure out whether I should have it set to "tracking" or "current"06:20
jceb left06:21
JasonWoof I imagine in most cases it wouldn't make any difference06:21
"tracking" makes it so I can have a local branch correspond to a remote branch, and have that local branch have a different name than the remote one?06:22
johan-s left06:22
mugwump yes, tracking does that06:22
JasonWoof and "current" just does all local<-->remote branch matching by branch names06:22
Beket joined06:22
JasonWoof ?06:22
wmoxam_ joined06:23
ashleyw left06:23
mugwump check the man pages .. experiment :)06:23
JasonWoof sounds like a good idea06:23
today I made myself a test repo, made some stupid commits, and massed around with rebase a lot06:24
girishr joined06:24
JasonWoof I feel much more confident with it now06:24
practiced branching off and doing my commit rewriting with rebase in the branch, and (once I got it right) learned how to make my master branch match that (reset --hard rewritten-branch)06:26
FreakGuard joined06:26
JasonWoof dunno why it makes me so much more comfortable to do all my experimenting with rewriting in a branch06:27
I'm afraid that if I do it on master I won't be able to get it back06:27
but that's silly. I could just make a branch or tag at the current master's HEAD, then go nuts, and I can always reset --hard master back to the way it was06:27
wmoxam left06:28
Beket why not just branch, develop/rebase and then merge to master ?06:29
ashleyw_ left06:31
giallu joined06:36
gaveen left06:36
lohrun joined06:37
rjc_rjc06:38
tal67 joined06:39
kate21de left06:41
knittl left06:43
angerman joined06:44
RodP2 joined06:46
galderz joined06:47
knittl joined06:48
przemoc joined06:50
Stravy joined06:55
johan-s joined06:58
dohzya joined07:01
kuadrosx left07:01
ceyusa joined07:04
solydzajs joined07:05
JasonWoof Beket: I was working on the situation where master had a commit in it that I didn't like, and didn't want to make public ever07:05
Beket JasonWoof, cool. AFAIK it's possible to exclude a commit (or range of commits) with rebase, but never tried it actually.07:06
Radar left07:07
ciskje joined07:07
solitar joined07:08
JasonWoof yeah, you can mark them as "skip" with rebase -i, or use rebase's "--onto" option07:08
did the --onto thing once, still confused by it07:09
angerman left07:10
Ilari JasonWoof: --onto controls the point rebuilding the branch starts from.07:13
Beket it's basically where the result of rebase is appended, right ?07:14
really roughly speaking*07:14
nighthwk1 left07:15
Ilari Beket: Pretty much. Non-interactive rebase is bit like format-patch <upstream> + reset --hard <onto-commit> + am. <onto-commit> defaults to <upstream> if not specified.07:17
AkumaStreak left07:18
Beket nicely said, thanks Ilari07:18
darkskiez_ joined07:18
Ilari Beket: And the second branch (if specified) acts like 'checkout <branch>' at the beginning.07:19
jmesnil joined07:20
ljungk joined07:21
kalle_ joined07:22
FreakGuard left07:23
kalle_ left07:26
ljungk left07:26
ljungk joined07:27
gilimanjaro joined07:27
mugwump joined07:33
merlin83 joined07:34
mtkd joined07:35
FreakGuard joined07:36
mugwump left07:37
mugwump joined07:37
dwave joined07:39
webcoder joined07:39
FreakGuard left07:41
psankar joined07:41
ph^ joined07:43
eb_ joined07:44
JEEB__ joined07:46
mugwump Fissure: 108minutes of processing time, and lzma has reduced the 7.6GB input to 484MB07:49
I'll set lzma -9 going overnight :)07:49
eno__ joined07:49
Arrowmaster ....07:50
bobesponja left07:50
Arrowmaster thats nuts07:50
aphexer_ joined07:50
eMBee good afternoon07:50
Fissure like i said, it beat bzip2 pretty spectacularly :)07:50
cehteh "longer is better" :)07:51
eMBee is this article confusing or am i just not imersed in git myself yet? http://thecarlhall-dev.blogspot.com/2009/04/rename-git-remote-branch.html07:51
ceyusa left07:51
Fissure 7-zip uses the same algorithm and if you have 64-bit and enough ram you can make the window size up to 1 gig :)07:51
eMBee what does a larger window size do? allow duplication between the beginning and the end of the window be discovered?07:52
ia_ joined07:53
eb_ hey, I checked out a tag without creating a new branch locally. so it was on (no branch). then I accidentally added a new file to (no branch). after I noticed it I switched to the master branch, but then that newly added file was gone. any way I can retrieve it again?07:53
Leemp2 joined07:53
j416 joined07:53
eMBee eb_: check your reflog07:54
Fissure git reflog HEAD, find commit id of old no-branch commit, use checkout $commit -- $file07:54
eMBee the commit you made should still be there07:54
eb_ thx guys07:54
webcoder_ joined07:54
ia left07:54
shruggar joined07:55
eMBee or cherrypick the commit into the branch that you want, or create a new branch at that poit (git checkout -b newbranch $commit07:55
psoo joined07:55
psoo left07:55
fujin left07:55
naeu joined07:56
eb_ I will try the cherrypick into the master...07:56
cheers07:56
fujin joined07:56
solydzajs left07:59
eb_ lovely ;]07:59
coming from svn and only know a handful of commands in git08:00
but already i like it08:00
bdowning left08:00
ljungk left08:01
gretch joined08:01
eno left08:01
Leemp left08:02
Ademan left08:02
Radar joined08:02
Ademan joined08:03
bdowning joined08:03
webcoder left08:03
gilimanjaro left08:04
ljungk joined08:04
towski_ left08:07
jfkw joined08:07
Kbyte joined08:09
shruggar how do I show the log, but only for commits which effected a file in the current directory or lower?08:11
eMBee should be git log -- path08:12
shruggar thanks08:12
andy7534211luglog08:12
ceyusa joined08:13
shikamar1 joined08:15
RodP2 left08:15
luglogandy75342108:16
Ilari eMBee: Looks confused. That command looks like it should rename the remote (purely local thing).08:16
shikamar1 left08:16
eMBee Ilari: exactly08:17
if you read his previous post it is more clear that the comand does what he intends to do, he just uses a confusing way to explain it08:18
marc_m joined08:18
ljungk left08:19
RodP2 joined08:20
FreakGuard joined08:21
tbf joined08:21
marc_m left08:24
marc_m joined08:25
ljungk joined08:26
j416 left08:31
smeevil joined08:31
obeattie joined08:33
FlaPer87 joined08:33
abstrusething joined08:33
aspotashev left08:34
FlaPer87 hey guys, I've a wuestion... I've read around that keywords are not supported in git, so, Is there a way/workaround to keep using things like http://pastebin.com/m7914292b in my files?08:34
andy753421 left08:34
FlaPer87 I would like those values to be updated each time a user does a checkout08:35
obeattie left08:35
cedricv joined08:37
Modius left08:37
tono joined08:38
Ilari FlaPer87: Why won't you use VCS services to find the version while source is in version control and only expand keywords at export time?08:39
sunoano joined08:39
un|ogic joined08:40
Ilari FlaPer87: git archive can expand all types of format strings --pretty=format: of git log accepts.08:40
FlaPer87: See man gitattributes and man git-log08:41
Gitbot Ilari: the gitattributes manpage can be found at http://git.or.cz/man/gitattributes08:41
FlaPer87 Ilari: Ooook, I'll take a look to gitattributes thanks a lot08:41
=D08:41
Ilari FlaPer87: In practicular search for 'export-subst'.08:42
FlaPer87: Also look at how git.git does getting its version number.08:43
Weaselweb_ joined08:44
Weaselweb left08:44
Weaselweb_Weaselweb08:44
FlaPer87_ joined08:50
FlaPer87 left08:52
FlaPer87_FlaPer8708:53
ph^_ joined08:53
fluxusps joined08:53
fluxusps left08:53
FlaPer87 left08:54
Knirch In my project I have v1 v2 v3, v3 was created by converting from another scm, v1 and v2 were then reset to their respective heads. my problem now is that my v3 specific tags exist in v2. any creative ideas on how to get rid of the tags that aren't really part of the history?08:57
wereHamster what are v1,v2,v3? tags? branches?09:00
JPohlmann1 joined09:00
wereHamster and what do you mean with 'v3 exists in v2'?09:00
Knirch you could seem them as branches, but currently they're seperate repositories09:00
uhm, no you can't see them as branches, my bad :)09:01
wereHamster so they are separate repositories...09:01
Knirch yes09:01
_Vi left09:02
killerchicken_ joined09:03
Knirch in hindsight I should have converted the tags into v1, then the missing into v2 and then v3.. but the conversion will take ~3 hours, so not too keen on redoing it09:03
wereHamster how can you identify v3 tags that don't belong in v2?09:05
struberg joined09:05
JPohlmann1 left09:06
Bogh joined09:06
Knirch build_v3.<buildnr> is one type of tag I have, those I could just "manually" delete in the v1/v2 trees09:06
hmm, guess I could do something creative if I manage to get the same output as tig/gitk/etc, ie list the tags in git log output09:07
wereHamster for r in `git for-each-ref refs/tags/build_v3.*`; do git tag -d ...; done09:08
JEEB__JEEB09:08
ph^ left09:09
Knirch wereHamster: well yes, that takes care of the special log tags, then I have 5 years worth of developers adding random tags :)09:09
wereHamster is there any way you can automatically identify those? By looking at their history for example?09:10
Knirch is it possible to list the tags aswell in git log output?09:10
Ilari Knirch: --decorate?09:12
Knirch Ilari: sweet, thanks09:13
found one silly way09:16
$ git log --pretty=format:%H >/tmp/taglist09:16
$ for tag in $(git tag -l); do if ! grep -q $(git log -n1 $tag --pretty=format:%H) /tmp/taglist; then echo $tag REMOVE ; fi ; done09:16
nice, v1 went from 16M -> 6.5M09:17
thanks for the talk09:17
solydzajs joined09:18
killerchicken__ left09:19
dreiss left09:20
j416 joined09:23
Stravy left09:27
peritus_ joined09:27
ph^ joined09:29
j416 left09:30
gressie joined09:31
gressie left09:31
aspotashev joined09:31
tango_ joined09:33
webcoder joined09:35
dodo_the_last left09:35
Bogh left09:38
jaeckel joined09:41
ljungk left09:42
webcoder_ left09:43
MisterN joined09:44
mib_f6i623 joined09:44
darkskiez_ left09:45
ph^_ left09:46
khmarbaise left09:53
JasonWoof left09:54
aspotashev left09:55
ignas joined09:57
khmarbaise joined09:57
ignas hi09:57
Ryback_ joined09:58
Beket left10:00
__iron joined10:00
ignas is there a way to connect additional parent to a revision?10:01
Bogh joined10:01
yoann left10:02
AAA_awright ignas: git merge with the ours strategy10:03
mib_f6i623 left10:03
peritus_ left10:03
ignas ours strategy?10:03
also - the parent is way back in the history10:03
(it)10:04
AAA_awright --strategy ours10:04
ignas it's a result of import from other VCS10:04
doener ignas: grafts10:04
AAA_awright It won't work if it is an ancestor10:04
doener ignas: look for "grafts" in the git-filter-branch man page10:04
Lenary joined10:05
Kbyte left10:05
doener ignas: filter-branch is also what will make the grafts permanent (by creating new commits with the changed parent information)10:05
Kbyte joined10:05
njouini joined10:05
ignas hmm10:05
miib_e6i623 joined10:06
njouininisse10:06
nisse Hi!10:06
I have a git-svn problem.10:06
seb42 joined10:06
Ilari ...10:07
doener nisse: crystal ball is in repair10:07
nisse :d10:07
Well, we do not need that.10:07
The problem is a bit obscure.10:07
You see, I get lot's of conflicts when I try to dcommit10:08
Maybe I've just missed something important.10:08
Well, the question is: Is local branching/merging bad when working with git-svn10:09
?10:09
AAA_awright Avoid it, that's all I know from the git-svn man page10:10
nisse But: Then there's no use of git.10:10
I have to do rebase all the time.10:10
And keep my developing linear10:10
killerchicken_ no. you just have to linearize it before you commit to svn.10:11
Ilari nisse: Topic branches work right if you keep them up to date by rebasing.10:11
killerchicken_ there are still huge advantages over regular svn10:12
Ilari nisse: When topic branch is finished, do final (interactive) rebase it on top of master and then do something like 'git push . HEAD:master' ("reverse-merge" current branch to master).10:12
peritus_ joined10:12
Ilari nisse: Then check out master and dcommit.10:13
nisse Hmm, that seems more complicated that it needs to be.10:13
Ilari nisse: Also, git svn has 'git svn rebase'. It rebases current branch on top of correct one.10:13
nisse Maybe I have wrong workflow here.10:14
My current is:10:14
(on master) git checkout -b new_feature10:15
(on new_feature) git svn rebase10:15
everyting is well here10:15
then I do some further branching and merging10:15
and merge everything to new_feature10:16
and when I do git svn dcommit everyting blows up!10:16
Ilari nisse: 'git merge' and 'git svn' don't mix (at least if you don't really know what you are doing).10:16
nisse Okay, I guess both are true in my case ;)10:17
Ilari what my workflow should be then?10:17
If I cannot branc/merge as I like and then dcommit10:18
bizhat2 joined10:18
nisse svn is like disease10:19
Ilari nisse: When beginning each feature, make a branch for it. Make some commits there and keep it up to date with 'git svn rebase'. When finished, use interactive rebase (or whatever to clean it up) and update for one final time. Then merge topic branch into master and dcommit it.10:20
nisse It propagates itself even into my local git repos10:20
Okay, a sec, I'll digest what you've written.10:20
abstrusething left10:20
ccherrett left10:21
nisse Ah!10:22
Ilari: okay I get that10:23
What about squashes?10:23
Ilari nisse: Squashes are effectively the SVN way of merging.10:23
nisse When I do commit's to svn I want them to be squashes of my development history10:24
I have no interes in publishing my minor commits to svn10:24
So before I do dcommit I've been doing merge --squash another_branch10:25
Could that result in problems?10:25
bizhat2 left10:25
Ilari nisse: Nope.10:25
nisse Hmmm...10:25
Ilari nisse: As squash is effectively about redoing the whole side branch as "unrelated" change.10:25
nisse Okay10:25
mithro left10:26
nisse Hmm.10:26
Ilari: okay. Now I do understand bits from here and there.10:27
Ilari nisse: The reason why git-svn is so limited is that SVN is so limited.10:27
nisse Ilari: yeah, it was my first scm10:28
Crappy10:28
Ilari: Hmm, so I should always dcommit from master?10:28
Modius joined10:29
nisse and merge branches to it10:29
Ilari nisse: If dcommitting to trunk yes. Other SVN branches should have their own "primary" branches.10:29
nisse Okay10:29
doener hm, I usually don't go that far. I just dcommit on the topic branch and then rebase master10:29
nisse And it doesn't matter if I do (on master) merge --squash foo_brach and then dcommit?10:29
doener: Hum?10:30
Ilari nisse: Note that git-svn only pays attention to line through history that passes through first parents.10:30
nisse: Since all SVN "branches" are linear.10:30
mithro joined10:32
doener nisse: When you keep "master" clean, work on "foo" and keep "foo" up-to-date, then the "git merge foo" would be a fast-forward10:32
nisse: i.e. master is just updated to the state of "foo", there's no merge commit being created10:32
nisse: and then dcommit will send the individual commits to svn10:32
nisse Hmm, I'm even more confused that I was when we begun :)10:32
ccherrett joined10:33
doener nisse: the same thing happens when you do the dcommit on foo, and then update master from svn10:33
Ilari nisse: Well, just don't try feeding git svn true merge commits.10:33
nisse Okay, maybe if I tell the naive thing what I want you guys could just tell me the right workflow10:33
I want to have feature branches and then commit to svn when feature is finished10:34
doener nisse: if you do "merge --squash", or if master is ahead of "foo" when you merge and a merge commit is created, svn won't see the individual commits, but just a single big set of changes in a single revision10:34
Ilari nisse: True merge commits show up on git log as having 'merge xxxxxx... yyyyy...' line10:34
nisse Okay10:34
And I do not want my teammates to see my individual "fixed typo in comments" - type of commits here10:35
gitte joined10:35
nisse So should I :10:35
Ilari nisse: Eliminating those should belong to final interactive rebase pass (to clean up stuff before sending forward).10:36
solydzajs left10:36
nisse Ilari: could you be more verbose10:36
Ilari nisse: When topic branch is "finished", it needs to be cleaned up (commits split, cobined, rearranged) before submitting it upstream.10:37
nisse Yes10:37
Ilari nisse: In that process, one can combine those "oops, fix" commits into commits that they fix.10:38
Lenary_ joined10:38
nisse Okay10:38
un|ogic how can you move the branch HEAD to a different commit?10:38
dodo_the_last joined10:38
un|ogic nvmind, got it now10:40
Ilari un|ogic: 'git checkout <hash>' (read-only) or 'git reset --hard <commit>' (kill uncommitted changes and delete commits after that from current branch).10:40
un|ogic thnx10:40
Ilari un|ogic: Sometimes those get mixed up. Not a good thing.10:40
nisse http://pastie.org/47430410:41
girishr left10:41
un|ogic i know. I need to do it for illustrative purposes :)10:41
Yuuhi joined10:41
nisse Ilari: Okay my workflow is there10:41
Is there somethign wrong10:41
un|ogic doing: "git checkout <SHA>" followed by "git branch -f master" does the job10:41
doener nisse: that'll leave just a single commit in svn, making its history less useful10:41
nisse doener: This is what I want10:41
brizly1 joined10:42
sitaram joined10:43
nisse But anyways. Doing that results in horrible conflicts10:43
What's wrong there?10:43
Ilari nisse: Seems reasonable (apart from commit message from that dcommit). And 'git add .' is mostly for importing stuff...10:43
nisse: Maybe master isn't up to date with SVN at beginning? Or SVN gets commits at the middle?10:44
s/dcommit/merge/10:44
tbf left10:45
nisse Ilari: no svn does not get any commits10:46
_Vi joined10:46
FreakGuard hm... is there a small script about branch merging?10:46
copying stuff from one to another.. rather complicated10:47
ignas why are my tags not appearing in the remote repository?10:49
Ilari nisse: Note that 'git svn dcommit' first does equivalent of 'git svn rebase' before the actual committing takes place.10:49
ignas: 'git push <remote-repo> <tagname>'?10:49
ignas I am tagging things on my master, then comminting + pushing, but the tags do not show up on the remote10:49
ahh, I have to push tags explicitly10:49
Lenary left10:49
bizhat2 joined10:50
sitaram yes because tags are usually local (I making notes to myself...)10:51
Ilari ignas: And no need to commit after making tag for it to somehow "be part of branch". Tags never are part of some branch (they are in effect branches of their own).10:51
bx2 joined10:51
Ilari ignas: The "tags need to be committed" is one type of SVN braindamage.10:52
ignas Ilari: ahh, makes sense, thanks10:52
FreakGuard I've got a remote on github... how to push two branches?10:53
v0lksman joined10:53
Ilari FreakGuard: 'git push <remote-repo> branch1 branch2'10:53
bizhat2 left10:54
brizly left10:56
struberg1 joined10:56
FreakGuard I need to refork from a branch and make that branch my new master while renaming the other10:57
but my knowledge of git is somehow limited :)10:57
hmmmm10:58
PupenoG joined10:58
Lenary_ left10:58
PupenoG How do I change branches when I get the "error: You have local changes to 'ueoaueaou'; cannot switch branches."?10:58
FreakGuard PupenoG: git stash maybe?10:59
PupenoG FreakGuard: I've changed three files, I need to switch branches, commit one, come back, merge that other branch, commit two.10:59
knittl left10:59
FreakGuard PupenoG: git stash saves your current changes10:59
git stash apply applies them back10:59
aziz joined11:00
PupenoG FreakGuard: if I git stash save, when I git stash apply on the other branch, I'll get a merge conflict I'll have solve, and after merging them I'll get back and get another conflict.11:00
FreakGuard uh-oh11:01
ask someone else11:01
struberg left11:01
miib_e6i623 left11:02
PupenoG FreakGuard: ok, thanks.11:02
hyperair left11:02
PupenoG So, anybody else know how to do it?11:02
hyperair joined11:02
tbf joined11:02
PupenoG I remember git stash save used to only pick those files added (the index?), that was useful. Now it's less useful (by picking everything).11:03
gretch left11:04
sitaram left11:05
knittl joined11:06
solitar left11:09
girishr joined11:10
Jinzhu left11:11
peritus_ left11:14
mbroeker joined11:14
webcoder hello all, does anyone knows solution to these messages:11:15
error: src refspec master does not match any11:16
i am able to clone and push gitosis-admin with no problems11:16
but followed three tutorials for creating new repos and this is all i get11:17
FreakGuard how to copy a file from another branch to the actual one?11:18
webcoder after initialising git init in my local folder even added in .git/config some extra lines i.e. remote "origin" with correct URL and branch "master"11:18
boto joined11:22
masak joined11:22
grahal joined11:23
wereHamster FreakGuard: git show otherbranch:path/to/file > path/to/file; git add path/to/file; git commit11:23
but if you want to preserve history, it will get much more complicated11:23
FreakGuard wereHamster: hm... I somehow crashed something on merging the two branches... how to remerge? :)11:24
jaeckel PupenoG: try 'git help stash'11:24
struberg1 left11:25
mikl joined11:25
wereHamster FreakGuard: look at the reflog, reset --hard11:25
bob2 joined11:26
struberg joined11:26
FreakGuard wereHamster: git merge <remote> right?11:27
sdboyer joined11:27
wereHamster git merge <nameofbranchorsha>11:27
priidu left11:28
FreakGuard wereHamster: or fetch11:28
angerman joined11:28
wereHamster depends on what you want to do...11:28
FreakGuard worked out, thanks ;)11:30
priidu joined11:30
jstein joined11:31
Lenary joined11:31
dwave left11:32
jony left11:32
jstein by accident i copied a large directory into my source tree and added it with git. How can i get rid of it? My .git is now 280 MB instead of 8 MB. The wrong dir is deleted in the sourcetree now. and i tried git clean -f and git add -u but11:33
dwave joined11:33
jstein git status shows still so many "# deleted: " lines11:34
wereHamster jstein: did you commit the new files?11:34
jstein wereHamster, the wrong files? yes11:34
PupenoG jaeckel: I've already read the man page, couldn't find any argument it'll make it save only the added files.11:34
jaeckel PupenoG: look @ git stash --keep-index11:35
you take the first file in the index11:36
PupenoG jaeckel: I don't have that option.11:36
wereHamster jstein: two things you can do: look at the reflog and then reset --hard, that will remove the files from the history but they will remail for ~30 days in the .git directory (due to being referenced by the reflog). This is only recommended if you haven't already pushed the new commits to a public repo11:36
jaeckel humm11:36
you're using an old version?11:37
it's an option to git stash save11:37
PupenoG 1.5.6.311:37
jstein wereHamster, its a stand alone local repo.11:37
wereHamster jstein: reset --hard will reset _all_ files in your working tree, so if you have any additional changes you'll have to stash them11:38
angerman left11:39
jstein wereHamster, well, i dont want to loose my changelogs of existing files. i fear i should work with two repos. One for working, one for storing, right?11:40
jaeckel hmm11:40
bobmcw_ left11:40
jaeckel the --keep-index option was first mentioned with 1.5.6.1.95.ge71311:41
bobmcw joined11:41
wereHamster jstein: 'changelog of existing files'?11:41
Leemp2 left11:42
v0lksman anyone have any good docs for using Meld for conflict resolution? trying to learn...Any tips, tricks and docs appreciated....11:42
nisse Okay.11:43
Next problem.11:43
It seems that I'm buried it conflicts with git-svn11:43
jaeckel sorry, but i don't have another solution11:45
how about updating? :)11:45
jstein wereHamster, i am working on the source tree and mage a git commit -a after each edit. But one day i hat wrong files in my source, added them. Them deleted the files. Now i want that git only knows about files, wich are currently in my source dir. All history about deleted files should be wipedout11:45
jaeckel i think this won't work, since it's a version control system that wants to track changes like this ;)11:46
wereHamster jstein: how far in the past is the 'bad' commit?11:46
jstein wereHamster, i think 3 commits in the past.11:48
wereHamster jstein: does that 'bad' commit contains anything else then the files you want to have removed?11:49
jstein wereHamster, some small changes on good files. But it may get lost, if necessary11:50
wereHamster jstein: git rebase -i $shaofthebadcommit^; then select 'edit' in the first line, git rm the files; git commit --amend; git rebase --continue11:51
eevar2 joined11:53
RodP2 left11:54
eevar2 how do I list all commits to a given remote repo? and which branch they're on?11:54
glommer joined11:54
wereHamster eevar2: all commits *in* a given repo?11:55
eevar2 i guess11:55
do i have to clone it first, or?11:56
wereHamster eevar2: you need to clone it, then you can list all commits with git rev-list11:56
eevar2 ok, thanks11:56
peritus_ joined11:57
bobmcw_ joined12:01
bobmcw left12:01
GeertB left12:03
sfaci_csgeek12:05
ignas left12:06
jstein wereHamster, thank you, i will try that now.12:07
khmarbaise left12:09
parasti joined12:09
Radar left12:09
hummingkid left12:10
hyperair left12:10
eevar2 hmm.. can't figure out how to coax rev-list / log into showing branches. does that mean every commit is done to 'master'?12:12
or my currently active branch12:12
or whatever12:12
guess i should sit down and read up on how push/pull/fetch and everything remote actually works ;)12:13
ndim eevar2: If you need a graphical overview of what is in your repo, run "gitk --all".12:14
I am not a GUI person myself, but I do think graphically, so that is very helpful to me for getting an overview of branches and commits.12:14
khmarbaise joined12:16
[1]intripoon joined12:17
intripoon left12:17
[1]intripoonintripoon12:17
saLOUt joined12:19
saLOUt i changed my .git/info/exclude file and also the one on my git-server managed via gitosis. what can i do to let people using git clone have the same exclude file?12:20
eMBee joined12:20
dgfitch joined12:20
wereHamster saLOUt: create a .gitignore file and commit it12:22
saLOUt wereHamster: in wich folder? parent of .git?12:23
wereHamster root folder of the working tree or any subfolder12:23
nisse left12:23
quoin joined12:23
argonel joined12:24
cannonball joined12:27
UUncia joined12:28
bobmcw_bobmcw12:28
UUncia If I'd like to store my repository on a remote computer, is there a need for a git server or something?12:29
bob2 no12:29
RaceCondition joined12:31
RaceCondition how do I set up the origin remote so that when I push to origin, I push to it's myname branch instead of master?12:31
so that each developer can have a branch by their name in the central repo12:32
without having to specify branch name each time when pushing12:32
gh34 joined12:33
_Vi left12:33
_Vi joined12:33
wereHamster RaceCondition: set a push refspec in the cofig file, something like push = master:refs/heads/yourname12:34
wsc left12:34
RaceCondition wereHamster: what about simply push = master:erik?12:34
is that somehow different to the example you gave?12:34
wereHamster I think that will work, too12:34
aspotashev joined12:35
RaceCondition nice12:35
saLOUt if i want exclude alle hiden files in this and child directories. Would be .* in .gitignore correct?12:36
un|ogic saLOUt: yes12:36
saLOUt un|ogic: thx12:36
mithro left12:36
lorandi joined12:37
paltman94 joined12:37
quoin left12:38
peritus_ left12:38
jrmuizel joined12:39
wmoxam_ left12:40
parasti left12:40
cilly joined12:42
struberg1 joined12:43
struberg1 left12:44
_Vi left12:44
tobiassjosten joined12:45
_Vi joined12:46
tobiassjosten Is there a single command I can run to both do "git reset --hard" and "git pull", or something similar in effect?12:47
Basically, I want to SSH to a remote machine and have it replace its workdir with the latest from origin.12:47
wereHamster sh -c 'git reset --hard; git pull' <- there, a single command12:49
knittl left12:49
knittl joined12:49
lorandi left12:49
tobiassjosten wereHamster: Heh, brilliant. :)12:49
wereHamster: Would this work? sh -c 'cd /git/dir; git reset --hard; git pull'12:52
seezer joined12:52
tobiassjosten Or would the cd be lost after the semi colon?12:52
wereHamster that should work12:52
RaceCondition is it possible to have git checkout a svn repo as an external repo12:52
?12:52
tobiassjosten wereHamster: Awesome. Thanks a lot!12:53
wereHamster RaceCondition: not directly, you'll have to import the svn repo into git and add it as submodule12:53
tobiassjosten Hooks are repository specific, right? They are not synced with pull/push?12:55
Simon- left12:55
parasti joined12:55
wereHamster tobiassjosten: correct12:56
Simon- joined12:56
struberg left12:56
mithro joined12:57
ameyp joined12:58
ameyp left12:59
tnuic joined13:00
solydzajs joined13:00
bnferguson left13:00
tnuic left13:00
qrush joined13:02
jrmuizel left13:03
naeu left13:04
nighthwk1 joined13:04
lohrun left13:05
lohrun joined13:06
Ilari UUncia: Note that if you want ssh push to work, you need to install git on remote side. If 'ssh user@host git --version' works, you should be good to go.13:08
UUncia ok13:08
thx13:08
what about git://?13:09
Ilari UUncia: That needs git daemon to be running.13:09
UUncia on the server side, right?13:09
Ilari UUncia: Yes.13:09
UUncia ok13:09
thx13:09
mobhawk joined13:09
Ilari UUncia: file:/// doesn't need any kind of server (git internally invokes required stuff).13:10
UUncia i c13:10
Rhonda Ilari: Hmm, shouldn't a local git push to a bare + rsync be able to do the trick?13:10
Ilari Rhonda: rsyncing live git repos (even bare ones) isn't recomended.13:11
bschindler joined13:11
__iron left13:12
Ilari Rhonda: Like, object database needs to be updated before refs, but with rsync there's no guarantee about that.13:12
Rhonda two-step rsync could do it?13:12
One with specific exclude patterns, the second with all.13:13
Ilari Rhonda: If you use rsync, better to be only process that updates the target repo.13:13
Rhonda Sure13:13
Ilari Rhonda: As rsync probably won't handle races gracefully.13:13
Rhonda: But objects and refs(+packed-refs) are pretty much all that is needed. Plus13:14
drewr joined13:14
brennen joined13:15
hgb Hi, guys. I'm working with git-svn with a very busy subversion repo. I've been working on my git branch for a while now, and have just commited and 'git svn dcommit'ed, so I'm done with the current (git) branch.13:15
I want to return to master, eventually to create new git branches.13:16
But, if I just do 'git checkout master', thousands of files will be changed, only to be restored when I do 'git svn rebase' (in master)13:16
I'd like to do 'git branch -D master; git branch master; git checkout master' instead.13:16
Are there any problems related to deleting master that way?13:17
Ilari hgb: 'git push -f . HEAD:master' (overwrite master with contents of current branch)?13:17
hgb Ilari: That sounds like an excellent idea!13:17
Ilari hgb: Sightly shorter but equivalent: 'git push . +HEAD:master'.13:18
hgb: That doesn't switch branches (so you need checkout master after that)...13:18
hgb Ilari: right. Sounds like exactly what I need.13:19
Hm13:19
Ilari hgb: That '.' there means "Target is this repo"13:19
ameyp joined13:19
quoin joined13:20
hgb Ilari: Thanks. Worked like a charm.13:22
Jinzhu joined13:22
hgb notes this in his git quickref.13:22
d0k joined13:23
GeertB joined13:23
catalis joined13:24
cmarcelo joined13:24
Tuomas left13:24
Tuomas joined13:24
brennen left13:25
jrmuizel joined13:26
Stravy joined13:26
ameyp left13:26
_Vi left13:27
_Vi joined13:27
LiamH joined13:29
voker57 joined13:30
gwoo joined13:30
mikl left13:32
bnferguson joined13:32
joshsdc joined13:33
bnferguson left13:35
hgb Ilari: If I drop the +, it would only happen if it could use fast forward?13:36
voker57__ left13:36
keystr0k joined13:37
sunoano left13:37
keystr0k I'm going a 'git add .' but nothing is being added... the ignore file isn't ignoring anything but .DS_Store files, and the folders aren't empty. ???13:37
I've used git for quite sometime and never seen this happen.13:37
ceyusa left13:39
wereHamster keystr0k: what does git-status say?13:39
keystr0k wereHamster: it shows a lot of untracked folders.13:39
Bass10 joined13:40
Ilari hgb: Yes.13:40
wereHamster does git-add work if you explicitely mention the files/folders (instead of a simple .)?13:40
keystr0k wereHamster: nope... hmmm13:40
wereHamster: tried this: git add sites/all/themes/* and this: git add sites/all/themes/13:41
Lenary guys13:41
paltman94 left13:41
Lenary i just released Ginatra - a gitweb clone in Sinatra and Grit - http://github.com/lenary/ginatra13:42
i'd be grateful if anyone would take a look13:42
ignas joined13:42
Ilari keystr0k: Are there any regular files not covered by ignore rules in those directories?13:42
keystr0k wereHamster: it isn't imperitive that I get this fixed. In fact, I only have 4 or 5 commits in the history of the repo... I can just start again from scratch. I moved from a Windows VM to a Mac...maybe that is the problem?13:42
Ilari: yes... lots of them.13:42
fanf2 joined13:42
thiago for those interested: the Git repository of Qt is now available on qt.gitorious.org13:45
Ilari keystr0k: Under those untracked directories?13:45
thiago [/shameless plug]13:45
keystr0k Ilari: definitely, yeah... lots of php files. I am only ignoring .ds_store13:45
sunoano joined13:46
Ilari keystr0k: Try finding untracked directory from status output, then what 'git add <regular-file-under-untracked-dir> ; echo $?' prints?13:47
jrmuizel left13:47
rjc left13:48
keystr0k Ilari: I apologize, but I've wiped the repo and started fresh. I only had a few commits, and they were not of any importance to me. I will add what you've suggested to my git notes. :)13:48
bwalk joined13:48
spearce joined13:48
Ilari keystr0k: That sort of brute-force solutions aren't often taken kindly...13:50
keystr0k Ilari: I understand.13:50
Ilari keystr0k: *Especially* in middle of troubleshooting.13:50
abstrusething joined13:51
amoeba joined13:51
keystr0k Ilari: again, I understand and apologize. I do appreciate the help.13:51
ProperNoun joined13:51
psankar left13:52
keystr0k left13:55
knittl left13:55
knittl joined13:56
shruggar left13:56
aspotashev|eeepc joined13:56
ceyusa joined13:58
mobhawk left13:59
shruggar joined13:59
mobhawk joined13:59
bryanray joined14:02
legnaleurc joined14:06
Jinzhu left14:08
girishr left14:08
dfd joined14:08
girishr joined14:08
wmoxam joined14:09
javatexan joined14:10
dfd hello, can anyone give me a suggestion as to how to save a completely different codebase under the same project namespace? That is, how to best wipe all files in a git repo and replace with a completely different set of files?14:10
girishr left14:10
bdimcheff joined14:11
Ilari dfd: Perhaps easiest is to create another repo, make at least one commit there and then fetch that commmit in?14:12
bmalee dfd: why not just create a new repository?14:12
parth-vader joined14:12
abstrusething left14:13
bx2 left14:13
dfd Ilari: thanks, I'll look into that now. bmalee: well, we're basically resurrecting an old project with a new codebase, and want to keep the codebase under the same namespace. So, I'm tagging the last old commit and then starting from there14:13
krh joined14:14
dfd I know it's a bit unorthodox, but makes the most sense for us organizationally14:14
amoeba left14:16
fargiola` joined14:18
jackdempsey joined14:19
bdiego joined14:19
solydzajs left14:20
jrmuizel joined14:20
javatexan left14:20
alezandro joined14:21
aspotashev|eeepc left14:21
Lenary left14:22
paulboone joined14:22
cemerick joined14:23
legnaleurc_ joined14:24
javatexan joined14:24
agile joined14:25
nighthwk| joined14:26
javatexan left14:26
jerojasro joined14:27
bobmcw left14:27
Sho_ joined14:27
bobmcw joined14:28
jerojasro do anyone know how to enable rss feeds on gitweb? I can't find any info about that14:28
nighthwk| left14:28
Ilari jerojasro: Isn't some optional feature like snapshots?14:29
nighthwk| joined14:29
name joined14:29
jerojasro Ilari: not according to the wiki page for it http://git.or.cz/gitwiki/Gitweb14:29
crankharder hwo can I see a list of files change between now and X days ago?14:31
bmalee crankharder: git log @{X.days.ago}..14:33
DavidKlein joined14:34
rjc joined14:34
crankharder that is showing me the entire log up until X days ago14:35
fargiolas left14:35
jackdempsey there's a --name-only flag in git log14:35
ph^ left14:35
paulboone left14:35
netoman joined14:35
jackdempsey look through there a bit and play with the options14:35
bmalee: is there a good place to read up on using @, i haven't found one14:35
hard to google it :-)14:35
RandalSchwartz have you tried the fine documentation?14:36
cilly left14:36
RandalSchwartz it comes with git, you know.14:36
bmalee jackdempsey: man git-rev-parse14:36
Gitbot jackdempsey: the git-rev-parse manpage can be found at http://git.or.cz/man/git-rev-parse14:36
j416 joined14:36
jackdempsey ah nice, thanks!14:36
crankharder and --name-only is adding the list of chagned files, not removing the commit messages/author/date etc14:36
jackdempsey yep, i noticed that as well...there should be a way to take those things away14:37
alezandro hi all, do I have to clone a new git tree when going from kernel 2.6.28.y stable to 2.6.29.y stable ? i'd like to keep just one kernel source tree in /usr/src....14:37
xblaster Hello14:37
I have a little question14:38
Some dirty developers has commit some crap in a branch14:38
fargiola`fargiolas14:38
xblaster like binary of around 200MB14:38
Can I "proper" this branch this just merging old commits with just one commit14:38
Ilari alezandro: 'git remote add -f 2.6.29.y <URL>'.14:39
alezandro: Should be few megs of transfer.14:39
j416 xblaster: as long as there is anything at all referencing that 200MB object, it will remain.14:39
xblaster j416: I know that14:39
and if I remove it, anyway git will keep a trace of it14:40
alezandro Ilari: cool, ok. i'll try it14:40
xblaster it was I ask if I can do a sort of "squash"14:40
Ilari xblaster: git rebase -i?14:40
xblaster Ilari: maybe this could be a good idea :)14:40
j416 xblaster: if you squash in such a way that the reference disappears, sure14:40
bschindler left14:41
Ilari alezandro: You can have multiple remotes in single repository.14:41
wereHamster alezandro: clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-2.6-stable.git and you'll never have to worry about adding the proper remotes anymore ;)14:41
alezandro wereHamster: what about when linux-2.8 comes out?14:42
wereHamster *never have to worry in this lifetime*14:42
alezandro LOL, ok14:42
njero joined14:42
legnaleurc left14:43
alezandro and i'm assuming pub/scm/linux/kernel/git/stable/linux-2.6-stable.git will have all the tags for every minor version, like 2.6.28.6, 2.6.28.9, etc....14:43
right?14:43
wereHamster alezandro: yes, that's correct14:43
alezandro cool, that's exactly what I need...14:44
UUncia left14:44
cilly joined14:44
Sho_ left14:45
nighthwk| left14:45
Sho_ joined14:46
DMG_ joined14:46
quentusrex joined14:47
quentusrex I have a checkout of a remote repo. How do I dump all local changes and update to exactly the remote repo?14:47
For some reason I keep getting told that there are local changes to the git repo, when I have only been using it as a read only reference14:48
DMG_ left14:48
quentusrex I have done a git reset --hard14:48
and did a git pull14:48
Ilari quentusrex: What OS?14:48
quentusrex Ubuntu14:48
Ilari quentusrex: 'git reset --hard origin/master'?14:49
quentusrex error: Untracked working tree file 'src/Node.cpp' would be overwritten by merge14:49
DMG_ joined14:49
DMG_ left14:49
Ilari quentusrex: That is some new file that has gotten created.14:49
rubydiamond joined14:49
quentusrex ok, awesome14:49
that was it14:49
just needed to add the origin/master on there.14:50
nighthwk| joined14:50
quentusrex thanks.14:50
legnaleurc__ joined14:51
nighthwk| left14:51
nighthwk| joined14:51
mobhawk left14:52
schacon joined14:53
mobhawk joined14:53
incorrect joined14:55
neoeinstein left14:57
eevar2 left14:57
drewr left14:57
releod joined15:00
s0ber_ joined15:04
jelly-bean joined15:04
jelly-bean somehow i have an empty directory in my git repo. how do i remove it? git rm says: "fatal: pathspec '.gitk-tmp.27468/' did not match any files"15:05
cilly left15:05
Grum is it tracked? what does git status say?15:06
njero left15:06
jelly-bean nothing to commit (working directory clean)15:06
Grum git cannot track empty dirs, so it will prolly be listed under 'untracked', so just rm -rf if you want to get rid of it (or git clean -d)15:06
if its not under untracked it means that it is in a gitignore somewhere :)15:06
fridim joined15:06
legnaleurc_ left15:07
Grum or it might be considered 'special' and 'always ignored' (like .git folders)15:07
jelly-bean it must be special because it's not in any .gitignore15:07
i think you're right that it's untracked though15:07
parth-vader left15:07
jelly-bean i just rm -rdf'ed it15:07
seems to be gone. thnx :)15:08
paulboone joined15:08
Ademan left15:09
jstein left15:10
nighthwk| left15:11
nighthwk| joined15:11
jsbmsu joined15:13
Stravy left15:13
schacon left15:13
s0ber left15:15
Hendu joined15:16
tobiassjosten I am working in a team against a bare git hub. We want to tag our current HEAD but doing so locally doesn't seem to transfer. Am I misinterpeting the usage of tags in Git?15:16
grahal left15:17
Ilari tobiassjosten: 'git push <repo> <tag>'.15:17
juanjoc joined15:17
jelly-bean left15:18
tobiassjosten Ilari: That seemed to work. Thanks!15:18
knittl left15:20
angerman joined15:22
cilly joined15:25
bnferguson joined15:26
jsbmsu left15:27
Ilari tobiassjosten: Regarding git tags: Git tags are not on any branch (they are in effect special type of branch themselves) and tag creation completes immediately without needing commit.15:28
nighthwk| left15:28
grahal joined15:28
scientes left15:29
neoeinstein joined15:31
tclineks joined15:33
schacon joined15:34
drewr joined15:36
name left15:40
imarcusthis joined15:43
j416 left15:44
pity16_ joined15:44
quoin left15:45
pity16_ left15:45
mw_ joined15:45
RayMorgan joined15:47
souldier joined15:50
jerojasro left15:50
souldier hey15:51
for some reason i keep getting ssh: connect to host port 22: bad file number fatal: the remote end hung up unexpectedly15:51
I can ssh into my server an all15:51
radarek joined15:52
hugoxrosa joined15:53
bentob0x left15:53
Ilari souldier: Clone, fetch, pull or push?15:54
marc_m left15:54
marvil07 joined15:54
souldier push15:55
Ilari souldier: Does 'ssh user@host git-receive-pack foo' print anything from remote?15:56
souldier: That's how git push invokes ssh...15:56
giallu left15:57
elmob joined15:58
bdowning left15:58
_Vi left15:58
souldier ok i did that and instead of foo wrote where mytest.git is and i got something like capabilities^{} report-status delete-refs etc15:59
bdowning joined15:59
Modius left16:00
hyperair joined16:00
tobiassjosten Ilari: One more tag question, if you don't mind. :) If I delete the tag (git tag -d tag), then how do I push that change upwards?16:00
Ilari souldier: That looks sane. Wonder why that 'git push' won't work...16:00
Modius joined16:00
Ilari tobiassjosten: 'git push <repo> :<tag>' (the same kind of stuff as branch delete).16:01
souldier Ilari: how am i supposed to do the push correctly?16:01
StyleWarz joined16:01
StyleWarz heyho16:01
Ilari souldier: Was that SSH error transistent or persistent?16:02
souldier well maybe its that im doing somethign wrong in the process16:02
can you help me do a test?16:03
maybe throuh PM or something16:03
Bogh left16:03
Ilari souldier: Maybe do 'strace -f git push <other args> 2>strace.log' to get strace log of what its doing?16:03
RaceCondition left16:03
Hendu left16:04
kukks joined16:04
StyleWarz can anyone tell me how i can change my git repo to a specific tag?16:05
mw_mw16:05
tango_ left16:05
StyleWarz like i need my repo to be somewhat other than head16:05
knittl joined16:05
souldier Ilari: what should be my syntax for git push16:05
voker57 git checkout mytag16:05
Korren joined16:06
StyleWarz voker57: aaah ty16:06
Ilari souldier: The usual syntaxes are 'git push', 'git push <remote>' or 'git push <remote> <branches>...'.16:06
StyleWarz voker57: do i need to do anything else to update the files in the repo to be the "older" version?16:06
Ilari souldier: And whatever you specify, it shouldn't cause SSH to fail connect() with EBADF.16:06
cilly left16:07
galderz left16:07
souldier i was doing something like git push ssh://[user@]host.com/home/user/mytest.git master16:07
Ilari souldier: If you are pushing often there, you should create a remote for it (git remote add mytest <URL>), then you can refer to that repo just as 'mytest'.16:08
souldier but if that syntax is correct i should have problem should i?16:09
jchris joined16:09
souldier maybe i did something wrong while doing the add and commit shit16:09
SteveC_ joined16:11
Ilari souldier: It seems to be some sort of problem with SSH client.16:11
souldier hm maybe, im using my msisgit in windows16:11
mSysGit or some shit like that16:12
ignas left16:12
Ilari souldier: Ergh... Msysgit doesn't have strace...16:12
souldier yea, i know, any other option?16:12
SteveC_ Hey guys, I am trying to use git svn to keep my local git repository synced with my work's svn repository. I want to compact all of my git commits into 1 svn commit. I read online I can run 'git rebase -i git-svn' but i get the error "needed a single revision, invalid base"16:13
Ilari souldier: If you retry the failed operation, does it fail again?16:13
souldier yea16:14
SteveC_ I am on Mac OS if that makes a difference w/Git 1.6.2.216:14
Ilari souldier: Maybe file a bugreport to msysgit bug tracker?16:14
souldier is there another git client thing for windows?16:14
Ilari souldier: Or if you don't have newest version, try upgrading first.16:14
k0001 left16:15
souldier i have 1.6.316:15
Ilari souldier: Git also runs on top of Cygwin.16:15
Kbyte left16:15
StyleWarz i did git checkout <mytag> but the contents of my actual repository are still the "newest" instead of the ones from the "old tag".. did i forget anything?16:17
Ilari StyleWarz: Did it even succeed?16:17
souldier: Cygwin doesn't fix the slowness of Git on Windows...16:18
StyleWarz Ilari: there was no error16:18
Ilari souldier: In fact, it might be even slower than msysgit.16:18
StyleWarz jruby /data/do # git checkout 0.9.1116:18
HEAD is now at c7fa1c3... Update LICENSE files and change maintainer in Rakefile's16:18
souldier left16:19
Ilari StyleWarz: It checked out version c7a1c3.... Git log should show when the latest commit was made.16:19
StyleWarz Ilari: 19th january.. but the content of all files is still new16:20
tobiassjosten left16:20
Ilari StyleWarz: 'git status' should show which files have uncommitted modifications.16:20
StyleWarz nothing to commit (working directory clean)16:21
ciskje left16:21
gitte left16:22
masak left16:22
Ilari StyleWarz: Then all files should be in states that they where in that tagged commit...16:22
StyleWarz very strange16:22
but thanks16:23
mtkd left16:23
tal67 left16:23
bizhat2 joined16:24
carrus85 joined16:25
sgrimm joined16:25
incorrect left16:29
shruggar left16:30
lorandi joined16:30
bonch joined16:31
bizhat2 left16:31
mitsuhiko joined16:32
mitsuhiko hi everybody16:32
what would be the easiest way to delete all remote branches except master?16:32
bonch left16:32
willb joined16:32
jackdempsey left16:33
neoeinstein left16:34
neoeinstein joined16:35
Ilari mitsuhiko: Delete from remote repo?16:35
mitsuhiko yep16:35
i could of course do "git push origin :branch" for every single branch, but there are liek 1516:36
SteveC_ left16:36
Ilari mitsuhiko: loop over what 'git ls-remote origin' returns?16:37
mitsuhiko oki. i'll do that :)16:38
giallu joined16:39
johan-s left16:40
nighthwk| joined16:42
gberdyshev joined16:42
qhoxie joined16:43
k0001 joined16:44
StyleWarz left16:45
jceb joined16:45
ceej joined16:45
Ademan joined16:46
tango_ joined16:48
graywh joined16:48
altrux joined16:49
graywh is there a special filename that can be used to compose a commit message before doing the commit?16:49
mtkd joined16:52
UUncia joined16:52
UUncia left16:52
UUncia joined16:52
bx2 joined16:52
UUncia Hi16:52
grahal left16:53
graywh i guess -F is good enough16:53
UUncia I'd like to setup a git "server" on a windows machine. I installed the git installer. Do I need to setup a SSH server as well?16:53
un|ogic graywh: or -16:53
Dashkal joined16:53
graywh un|ogic, - is only valid as the filename for -F, isn't it?16:54
un|ogic it should take it from stdin16:55
so you should be aple to cat commitmsgfile | git commit -F -16:55
graywh but that's longer than git commit -F commitmsgfile16:55
un|ogic true :)16:56
handy though if you need to do something to the file before passing it to git commit16:56
kuadrosx joined16:56
khmarbaise left16:57
amoeba joined16:57
khmarbaise joined16:58
jaeckel left16:59
khmarbaise left16:59
kraymer joined17:00
__iron joined17:01
Ademan left17:01
rlorandi joined17:02
Ilari UUncia: ssh push would require ssh server... IIRC, there is Java SSHD that can be used in combination with Jgit, but its not as performant as C Git (but if you cared about performance, you wouldn't be using Windows server).17:02
lorandi left17:03
ilogger2 joined17:04
priidu joined17:07
parth-vader joined17:08
parth-vader left17:09
Ademan joined17:13
Alinermedia joined17:13
jrmuizel joined17:14
malkomalko joined17:15
UukGoblin joined17:15
UukGoblin hi17:16
jackdempsey joined17:17
jtong joined17:18
Ilari UukGoblin: Hi.17:18
UukGoblin is there a place I can read about git's *deep* internals? Like, at the moment, I'm quite interested in why does it know what blobs to diff when doing a repack17:19
does it try to diff a file with every other blob in repository?17:20
xenoterracide joined17:20
UukGoblin it's quite interesting -- if I add a big fat file (45M one) on one branch, and then go to another branch a few commits back and add a very similar yet slightly different big file (45M), after git-gc, the repository will still only take about 45M...17:20
peritus_ joined17:21
killerchicken_ Does anyone have experience with tracking some tex documents including graphics with git, and if yes, does it work well? The graphics are in the range of max 500kb, and I don't want to store the resulting pdf files - only source material.17:22
Fissure look in the Documentation/technical directory17:22
killerchicken_: yeah, i track tex all the time...17:22
UukGoblin Fissure, thanks, will have a look17:23
killerchicken_ Fissure: do you have many graphics?17:23
Ilari killerchicken_: Maybe disable deltification of those graphics files? Should somewhat increase performance.17:24
killerchicken_ Is that something I can do should I start noticing performance issues, or do I need to do it right away?17:25
Ilari killerchicken_: You can do either way.17:25
UukGoblin hahah17:25
OK, where do I find IRC logs from 10 feb 2006? :-D17:25
Ilari killerchicken_: As its storage layer thing, not object layer thing.17:26
killerchicken_ good. I haven't started with that, but since I have quite image-heavy documents, I was afraid git might not be the perfect choice.17:26
UukGoblin ok, some of it seems to be pasted below ;-]17:26
Ilari UukGoblin: It tries to delta against files in window around the target file. The list is sorted by hash value using intentionally bad hash that biases last bytes in file name.17:26
Fissure killerchicken_: you won't notice unless you try a gc --aggressive with your aggressivewindow set really high17:27
malkomalko left17:27
killerchicken_ Fissure: cool17:27
Ilari Don't use 'gc --aggressive'.17:27
rlorandi joined17:27
killerchicken_ Generally not, or not in my use case?17:27
UukGoblin Ilari, interesting :-) is it possible to give it hints?17:27
Ilari Generally not.17:27
Fissure Ilari: oh? why?17:28
Ilari UukGoblin: Well, git-pack-objects can accept hints.17:28
Lenary joined17:28
rylar joined17:28
Ilari Fissure: For those cases where one would want --aggressive, better to use repack.17:28
drizzd joined17:28
UukGoblin cool17:28
Fissure more fine-tuned control?17:29
Ilari Fissure: Yes. And the values --aggressive uses might not be sane.17:29
UukGoblin that's really awesome, /me looks around more ;-)17:29
Ilari UukGoblin: Normally it uses one pathname of file as hint.17:30
UukGoblin: And if you change that, you might break the delta attribute logic.17:31
UukGoblin Ilari, I did my trick-test with totally differently named files17:31
naeu joined17:32
Ilari UukGoblin: There's still window, so it may take differently named files.17:32
UukGoblin Ilari, well, basically, I'm planning on doing something nasty... I (maybe, not sure yet) want to store files with the filenames of a sha-sum of their content in git... pretty randomly, perhaps even just blobs, not commits... so I'm wondering whether there exist ways to tell git where to look for differences between files :-) and apparently there are some.17:32
don't worry if I sound crap, that's probably because I have too many crazy ideas ;-)17:33
Ademan left17:33
Ilari UukGoblin: Why would you want to name them by SHAsum?17:33
UukGoblin Ilari, well... OK, the project I'm thinking of is to create a webproxy that will store all the traffic it proxies17:34
quentusrex Is there a way to setup default git settings?17:34
dwave joined17:34
Ilari UukGoblin: Git is quite unsuitable for that.17:34
UukGoblin Ilari, and then update the store with updates to the actual sites17:34
quentusrex Or is it possible to have a git repo with the 'standardized' default settings file that can easily be 'imported' into a repo?17:35
Ilari quentusrex: 'git config --global' or 'git config --system'?17:35
RandalSchwartz it never ceases to amaze me about how people want to abuse git. :)17:35
cilly joined17:35
quentusrex so that I can have color settings and other stuff standardized?17:35
UukGoblin Ilari, well, it worked quite well when I used it like git init, wget -r, git add ., git commit, wget -r...17:35
sekimura joined17:35
UukGoblin hey, it's cool! ;-) I'm just exploring possibilities here ;-)17:35
Ilari quentusrex: The --global stuff is defaults by user account. --system is default per system. User defaults override system defaults and repo-specific settings override user defaults.17:36
rjc joined17:36
UukGoblin pack-heuristics.txt is actually quite funny, too! :-D17:37
dreiss joined17:39
jackdempsey left17:43
kumbayo joined17:44
RodP2 joined17:46
texel joined17:46
peritus_ left17:50
wsc joined17:51
doener joined17:55
justatheory joined17:55
justatheory Is there a way to make `git pull origin master` completely quiet unless there is an error?17:56
It seems to output status messages to STDERR which is annoying.17:56
j416 joined17:59
ascarter joined17:59
charon justatheory: there's a -q flag18:01
j416 I have three figures that fit on one page. But when I add more text, they will split up so that one is printed on its own page. I want to keep the three figures on one page, how can I do this? I have tried putting the figures in a separate file and using \include to get a page break, but it instead rendered the two on a separate page, and still, the third is on the next page. \newpage, \clearpage, \pagebreak gives the same results. Any ideas?18:02
Ilari j416: EWRONGCHAN?18:02
j416 Ilari: very wrong. sorry about that :)18:03
justatheory charon: Yeah, that doesn't effect the messages sent to STDERR, such as:18:06
"* branch master -> FETCH_HEAD"18:06
Annoying.18:06
nighthwk| joined18:06
kennethlove joined18:06
justatheory Oh, wait18:06
I put it in the wrong place.18:06
Duh18:06
vmiklos joined18:10
bryanray joined18:12
robinr joined18:12
k0001 joined18:13
abstrusething joined18:14
quentusrex ok, I have a git repo, that does svn integration. I have git cloned it to my local machine.18:14
I made a commit on the (middle) repo,18:14
but when I did a git pull on my local machine, I don't get that commit18:14
any ideas?18:14
johan-s joined18:15
gitte joined18:17
Alinermedia left18:18
Alinermedia joined18:18
bizhat2 joined18:18
schmrz joined18:20
cilly left18:20
tbf joined18:21
schmrz Is there any way that git-clone gives more output. Even if the host doesn't exist Git doesn't complain.18:21
gitte schmrz: it complains here...18:22
schmrz: fatal: Unable to look up non-existing.com (port 9418) (Name or service not known)18:22
schmrz schmrz@lappy:~/Projects$ git clone git://12.13.14.15/repo18:23
Initialized empty Git repository in /home/schmrz/Projects/repo/.git/18:23
nighthwk| left18:23
schmrz And it just sits like that.18:23
*stays18:23
gitte schmrz: then it will eventually time out, I guess.18:24
schmrz Is it possible to set the timeout period?18:24
gitte schmrz: dunno.18:24
schmrz Well the manual doesn't say anything about it, so I guess you can't.18:25
patmaddo_ joined18:28
bobesponja joined18:28
wsc left18:29
peritus_ joined18:30
wwwald joined18:33
wsc joined18:34
quentusrex How do I switch to a different branch?18:34
gotgenes joined18:34
benn_d joined18:35
kusma quentusrex: git checkout branchname18:35
quentusrex master?18:35
so "git checkout master" returns a did not match any file(s) known to git. error18:36
benn_d when git-push is to a ssh server, what would the 'initial command' be on the server side?18:36
altrux joined18:36
ameyp joined18:37
kusma quentusrex: then master doesn't exist, I guess.18:37
ameyp is there any way of taking a snapshot of a git repository and then updating it with git-pull?18:37
quentusrex I have checked out a branch from the remote repo that is no longer developed. So Now I need to change to another branch on that remote repo.18:38
the branch I'm on is "testing"18:38
justatheory left18:38
quentusrex and now the branch is "master"18:38
kusma quentusrex: "git branch -r" will list all remote branches.18:38
now, you might want to setup a remote-tracking branch called "master", tracking "origin/master" (or whatever the remote is called)18:39
quentusrex how would I do that?18:39
krh joined18:40
kusma quentusrex: "git branch master origin/master"18:40
schmrz If I want to share Git repository over HTTP do I just copy my repo to /var/www ?18:40
ameyp left18:42
paulboone_ joined18:42
schmrz In other words do I just copy it to my HTTP document root?18:42
and then git clone http://example.com/repo18:42
quentusrex kusma: thanks a ton for the help so far. How do I get "git pull" to pull the right branch now?18:43
kusma quentusrex: "git pull origin master"18:43
quentusrex how do I set that in the config for that to be the default?18:44
tatsuyao joined18:44
jpnurmi joined18:44
kusma something like, I guess: git config origin.fetch "master"18:44
I haven't tried it myself, though ;)18:45
psoo joined18:45
schmrz Anyone?18:45
lovingwoman123 joined18:46
quentusrex kusma that didn't work18:46
kusma oh, sorry then :)18:47
quentusrex same error wanting the repo and refspec18:47
but that seems close :)18:47
ameyp joined18:47
ameyp is there any way of updating a snapshot of a repo using git-pull?18:47
lovingwoman123 left18:48
quentusrex How would I setup a repo to keep an 'unclean' repo updated? and on commit to the repo I have to manage any conflicts?18:48
I have a workstation and the server. The server has the repo, and the server has a checkout of the repo for live configs.18:49
codebrulee joined18:49
quentusrex I'd like to have something that would check to see if there are any uncommitted files that would be overwritten18:50
if there are then don't allow the commit.18:50
yann joined18:50
gilimanjaro joined18:54
gilimanjaro left18:54
quentusrex Ilari: Do you know of a good commit hook that would check a working copy on the server to see if there are conflicts, from both committed and uncommitted files? then if there are then fail the commit.18:55
_graham_ joined18:55
abstrusethingabstrusething|aw18:57
Ilari quentusrex: That mixes up stuff that should be kept seperate real good.18:58
quentusrex well, I just need something to 'alert' that there are uncommitted or committed files that conflict19:00
j416 left19:00
quentusrex and that the uncommitted ones would overwritten or something...19:00
javatexan joined19:01
SamB the latter would be handled locally, the former would cause the checkout to fail ...19:01
quentusrex right,19:01
does it to that already?19:01
SamB unless you pass -f19:01
quentusrex awesome19:02
SamB so just make the script that runs the checkout send an email when it fails19:02
bcardarella joined19:03
quentusrex ! [rejected] master -> master (non-fast forward)19:03
?19:03
SamB quentusrex: did you do a rebase /19:04
quentusrex ?19:04
ameyp left19:04
SamB quentusrex: the new master wasn't descended from the old one19:04
quentusrex hmm19:04
how do I fix that?19:04
I'm feeling very git ignorant right now...19:05
SamB well, I'd be more worried about how that happened19:05
what have you done lately?19:05
quentusrex well, the remote repo branch that I checked out was "testing"19:05
then it changed to master19:05
SamB oh, it's a remote repo?19:05
quentusrex yes19:06
the remote repo is the 'more important' repo19:06
SamB okay, then I guess you didn't cause it ;-)19:06
quentusrex which has a local check out for the working copy19:06
v0lksman if anyone can help me figure out process and merging I'd much appreciate it...been reading all day but can't figure this last bit out... http://dpaste.com/43078/ any tips welcome to the way I'm doing things.19:07
dkr21 joined19:07
dwave left19:07
Ilari v0lksman: Git should have left conflict markers in that file.19:08
quentusrex SamB: how do I delete the whole local check out and start over?19:08
or would that not be needed?19:08
SamB quentusrex: shouldn't be ... but if you want to, you could just move the directory and try again19:09
schmrz Guys, please how do I setup a HTTP repository?19:09
gitte schmrz: you read the documentation ;-)19:09
henon joined19:09
SamB man git-update-server-info19:09
Gitbot SamB: the git-update-server-info manpage can be found at http://git.or.cz/man/git-update-server-info19:09
Ilari schmrz: Hopefully you don't have to set up HTTP push. :-)19:10
gitte schmrz: http://www.kernel.org/pub/software/scm/git/docs/howto/setup-git-server-over-http.txt19:10
Ilari quentusrex: Use git reset if you want to nuke changes?19:10
schmrz (in /var/www) mkdir repo; cd repo; git --bare init; git-update-server-info; Is that all? I have read the documentation but something is wrong...19:10
I don't need push19:10
v0lksman Ilari: yes it does...so I would manually update that chunk of code?19:11
quentusrex Ilari: would that fix : ! [rejected] master -> master (non-fast forward)19:11
SamB schmrz: what symptoms are you seeing?19:11
Ilari quentusrex: Maybe 'git checkout master', 'git pull origin master'?19:11
schmrz "warning: remote HEAD refers to nonexistent ref, unable to checkout." <--- This is what I get when I try to pull from that HTTP server.19:12
Ilari v0lksman: Edit the code to be as you want and then add the file.19:12
schmrz: You need commit there first.19:12
rlorandi left19:12
schmrz Ilari: When I do that I get "fatal, this opetation must be run in a work tree"19:12
*operation19:12
Ilari schmrz: And the update-server-info must be run after ANY modification to that repo. So best to stick it into apporiate hook.19:12
schmrz: Push commit there.19:12
schmrz: IIRC, one of example hooks just needs enabling.19:13
SamB schmrz: bare repositories don't have working trees, no19:13
so don't try to commit into them directly ;-)19:13
quentusrex Ilari: I did the checkout, then tried to push19:13
schmrz SamB: That is what I'm trying to understand :\19:13
quentusrex and it failed with the same error.19:13
Ilari quentusrex: Pull first, then push.19:14
schmrz SamB: Where do I commit then?19:14
Ilari schmrz: Create local repo for it.19:14
SamB schmrz: in your working repository19:14
v0lksman Ilari: hrm...interesting...for some reason I was expecting more for some reason...19:14
sry...brain fried... :)19:14
schmrz Ilari: And then I push from local repo into that in /var/www ?19:14
SamB if you were using SVN, it would be called your "checkout"19:14
quentusrex Ilari: I just did a checkout, made a local change, did a git pull, then a git push, and it failed with the same error.19:15
Ilari schmrz: Yes, although you should create a remote to refer to that repo so you don't have to type long path every time.19:15
jefferai joined19:16
schmrz Ilari: Ok. Thank you. Just one more thing. How do I create a hook for update-server-info every time I push into that repo?19:16
mitsuhiko hmm. say i have a repo which does not merge properly with the upstream one where i want to pull from. can i somehow just "discard" all changes so that i can use the upstream version as the new head?19:16
Ilari quentusrex: Is that some HTTP remote?19:16
SamB it's something of a design flaw that git doesn't support empty repositories ...19:16
quentusrex it is over ssh for a remote repo, yes.19:16
Ilari quentusrex: Does 'git log master..origin/master' yield anything?19:16
mitsuhiko: Reset.19:17
quentusrex Ilari: it does have some lines, but nothing related to the error19:17
Ilari quentusrex: Lines there *ARE* related to the error.19:17
quentusrex ok... Then I don't understand why that is true.19:17
mitsuhiko Ilari: that does not work, i get an error after pulling then (not uptodate, cannot merge)19:18
Ilari quentusrex: master..origin/master is all commits that are in master of origin but not local master. Push would delete those so it complains.19:18
quentusrex ok19:18
Ilari mitsuhiko: It has --hard option, but that is destructive.19:19
quentusrex then why aren't they in the local? I did a git pull19:19
and a git reset --hard19:19
mitsuhiko Ilari: i don't have any local changes19:19
Ilari quentusrex: Reset???19:19
bryanray left19:19
schmrz Ilari: Is it the post-commit hook?19:19
mitsuhiko basically i try to update http://github.com/mitsuhiko/django/tree/master with the latest changes from http://github.com/django/django/tree/master19:20
SjB joined19:20
Ilari schmrz: post-update or somesuch.19:20
mitsuhiko actually i would start over if people wouldn't have pulled from me already19:20
tbf left19:20
Ilari mitsuhiko: 'git reset --hard foo/master', 'git pull bar master'?19:21
quentusrex: Note that if it conflicts, reset --hard will abort the merge.19:21
SjB left19:21
Ilari quentusrex: I asked about HTTP because HTTP sometimes can suffer from false up-to-date conditions, but AFAIK, ssh:// doesn't.19:23
mitsuhiko Ilari: now git segfaults on me19:23
__iron joined19:23
quentusrex Ilari: I'm trying to push to a workstation from my workstation. How do I test what revision the remote repo is at?19:24
amoeba joined19:24
jpnurmi left19:24
Ilari mitsuhiko: What git version?19:24
mitsuhiko 1.6.1.219:25
Ilari quentusrex: 'git ls-remote <remote>'.19:25
mitsuhiko: That's bit old. And regarding old versions, anyone with priviledges to fix /topic.19:25
mitsuhiko Ilari: i have the version that comes with cygwin19:26
quentusrex ok, so it's at a8e6f982618b6f04f2809aab34062e721143494c19:26
nighthwk| joined19:26
Ilari quentusrex: Maybe try 'git merge a8e6f982618b6f04f2809aab34062e7'. What it outputs?19:26
mitsuhiko boots up his mac19:27
quentusrex Ilari: "already up to date"19:27
LotR joined19:28
LotR left19:29
Ilari quentusrex: That was for refs/heads/master?19:29
quentusrex yup19:29
jceb joined19:29
LotR joined19:29
dwave joined19:29
Ilari quentusrex: What's the current branch on local side?19:29
quentusrex how do I check?19:29
Ilari quentusrex: 'git branch'.19:29
quentusrex hmm...19:29
no branch19:29
jhasse joined19:30
Ilari quentusrex: Install git bash completion and configure bash prompt. Would have saved lot of trouble in cases like this.19:30
quentusrex what's the issue?19:31
and I dont' see an ubuntu package for that.19:31
Ilari quentusrex: You where manipulating wrong branch. And thus it wouldn't resolve push problem on master.19:31
jhasse I got a repository A which pulls from B. There is still a file in B newer than in A although I did "git commit -a" in B. How is this possible?19:31
tvakah joined19:31
quentusrex Ilari: so, how do I 'fix' it?19:32
jjuran joined19:32
frsk jhasse: The files are not added? What does git status say about those files?19:32
Ilari quentusrex: Maybe something like 'git branch tmp ; git checkout master ; git merge tmp'...19:33
jhasse frsk, git status does not list these files at all (they are added)19:33
kennethlove left19:33
Ilari quentusrex: That should also bring the commits from remote side with it.19:33
nsxdavid joined19:33
quentusrex ok19:34
that seems to have worked19:34
nsxdavid If I have a file that's unmerged in git status after a pull from upstream (github) and I want to just use what was upstream, do I use: git checkout --theirs <file>19:34
mitsuhiko Ilari: unlucky on my mac as well, the conflicts stay19:35
i just can't see *any* changes i made19:35
ciskje joined19:35
quentusrex ok, now on the remote side how do I update the checkout?19:36
I'm getting: fatal: 'master': unable to chdir or not a git archive19:36
fatal: The remote end hung up unexpectedly19:36
Kissaki joined19:36
Kissaki left19:36
cemerick I had pieced together a command to list the N largest objects in a git repo, but now I've lost it. Anyone have something similar laying around?19:37
quentusrex and "git checkout text.txt" doesn't get the commit I just sent in19:37
gaveen joined19:37
quentusrex I'm now running the commands on the other workstation.19:37
Ilari quentusrex: If you get that sort of errors, you are probably using branch name as remote (often doesn't work).19:37
tbf joined19:37
quentusrex git branch only shows 'master' and 'with-im'19:38
Ilari quentusrex: Is 'git status' a mess now?19:38
quentusrex no19:38
Ilari quentusrex: Like lots of files modified, lots deleted.19:38
quentusrex there are a few, but they were there before hand.19:39
by lots I mean 4 modifies and 2 deleted.19:39
Ilari quentusrex: Maybe stash your changes 'git stash' then run 'git pull'?19:39
quentusrex git pull: fatal: 'origin': unable to chdir or not a git archive19:40
fatal: The remote end hung up unexpectedly19:40
Ilari quentusrex: Did you push to repo with working tree???19:40
quentusrex and how do I unstash?19:40
Ilari: I think it might have a working tree :(19:41
Ilari quentusrex: Maybe do 'git stash apply' to restore the stash. Then 'git reset --soft HEAD@{1}' to undo the push.19:42
quentusrex: Or actually, what branch that repo is on?19:42
mitsuhiko Ilari: any ideas what else i could check before throwing away the repo?19:42
quentusrex how do I undo a git reset --soft?19:43
:(19:43
bryanray joined19:43
Ilari quentusrex: 'git reset --soft HEAD@{1}'. But now you need to find the right commit from reflog next time.19:44
altrux left19:44
k0001 left19:44
k00011 joined19:44
quentusrex ok, so I have everything back to a 'stable' state.19:44
there is a working tree in the other repo19:44
Ilari quentusrex: If you pushed to checked out branch with local changes, you pretty much need to back off the push if you want to preserve your changes.19:44
mitsuhiko i can't see how that is caused. my latest revision (HEAD) exists in the repo i want to pull from as well19:45
and i don't have any changes there. why does git give me merging conflicts?19:45
k00011k000119:45
jsbmsu joined19:45
quentusrex My end goal is to be able to push to a remote repo that has local changes, and if there are any issues at all for my push to fail.19:45
jhasse left19:45
mjf joined19:45
Ilari quentusrex: That pretty much requires push to fail if there are any local changes.19:46
quentusrex what if none of the changes are in the same file?19:46
Ilari quentusrex: You would need to determine that without doing it in order to reject the push in time.19:47
ankit9 joined19:47
quentusrex precommit hook?19:47
Ilari quentusrex: No. pre-receive or update hook on remote side.19:48
webcoder joined19:48
quentusrex ok19:48
Ilari quentusrex: 'git commit' invokes pre-commit.19:49
quentusrex ok19:49
so how would pre-receive be able to tell if any of the committed files are changed and uncommitted on the remote repo?19:49
Ilari quentusrex: Request the names-only diff of update that would be appiled and compare with names-only diffs from HEAD to working tree and HEAD to index.19:51
_Vi joined19:51
cilly joined19:53
aleksei joined19:54
sergiodj joined19:54
struberg joined19:58
peritus_ left19:59
sergiodj left20:00
zuez Is there a compressed way to run a git diff to see how many lines have been modified from staging area to repo?20:00
eg: a diff of lines +/- staging vs what's in the actual repo.. to further clarify20:00
RodP2 left20:01
abstrusething|awabstrusething20:01
aspotashev|eeepc joined20:02
Fissure git diff --stat --cached20:02
or s/stat/summary/ if you want it even shorter20:02
cilly left20:02
zuez Fissure: Excellent, thanks mate.20:03
RodP2 joined20:04
seanius_ is there a way to have a common system-wide or otherwise user-specified hooks dir?20:04
Ilari seanius_: AFAIK, no.20:04
seanius_ :(20:04
Ilari seanius_: Its possible to use custom template or edit the system template, but that's only for new repos.20:05
seanius_ right20:05
sergiodj joined20:05
seanius_ sends a bug to debian's bts and assumes it will trickle its way through the tubes20:07
muszek joined20:09
precision joined20:10
muszek hi... how do I do a "git reset --hard" on a single file?20:10
Ilari muszek: 'git checkout HEAD -- file'?20:10
faithfulgeek joined20:10
muszek Ilari: thank you20:10
smeevil joined20:12
rinogo joined20:12
paulboone joined20:13
rinogo Hi all - I'm using git for my web dev project, and it's getting very mundane having to type a commit message every time I want to check in, deploy my changes, and test. How can I enable empty commit messages for git?20:13
schacon joined20:14
Fissure wouldn't it make more sense to just test locally before you commit?20:14
radarek joined20:15
sergiodj left20:15
seanius_ rinogo: you're digging yourself into a hole if you do that20:15
bleything rinogo: empty commit messages defeat one of the major reasons for version control in the first place.20:15
ciskje_ joined20:16
rinogo @Fissure: I wish I could - my dev environment is on the server and requires the interaction of several components. The configuration of these elements on my local system in an identical manner is unfortunately quite difficult.20:16
jsbmsu left20:16
hobodave joined20:17
Fissure so develop on the server...20:17
rinogo @bleything: Yes, I understand. The problem is that I have to commit to get my changes onto the server, deploy them, and test them. Empty commit messages on 'test' commits, and elaborate commit messages on important commits would be much better than what I'm forced to do now - type garbage chars for the commit message.20:17
ciskje left20:17
abstrusethingabstrusething|aw20:18
jsbmsu joined20:18
UUncia what's a bare repository?20:18
rinogo @Fissure: I *am* developing on the server. However, I'm using a local copy of the repository, along with Textmate and the Git plugin to streamline development.20:18
[intra]lanman joined20:18
seanius_ is glad he doesn't have to work on that project20:18
nsxdavid left20:18
Ilari UUncia: Repository without working tree.20:18
bleything rinogo: well... I'd suggest fixing your workflow rather than hacking your tools. but, have you tried commit -m '' ?20:18
UUncia hmmmmm....20:18
seanius_ rinogo: or set EDITOR=true20:18
UUncia you mean an empty repository?20:19
seanius_ or actually maybe that won't work20:19
rinogo bleything: How would you suggest I fix my workflow given that I can't deploy on my local machine?20:19
Fissure UUncia: no, one without a working tree20:19
Ilari UUncia: Nope. Bare repo can have commits in it.20:19
seanius_ rinogo: use hooks maybe20:19
UUncia so I probably don't know exactly what a working tree means.20:19
Fissure rinogo: don't make changes on your local machine, make them on the one where you can actually test them20:20
bleything rinogo: you could edit files directly on the server, for one. you said it would be difficult to set up a dev environment on your machine, but that's a one-time cost that I would suggest is worth the effort20:20
paulboone_ left20:20
rinogo Fissure: But then I'd have to either 1) edit files directly on the server via vim or something similar, or 2) manually synch my files via sftp (zero fun)20:21
Ilari UUncia: The place you edit the files so you can then add the changes and commit.20:21
Fissure rinogo: i fail to see the problem with (1)20:21
UUncia i c.20:21
thx20:21
seanius_ windows user maybe20:21
bleything rinogo: you could use unison or rsync to sync your tree.20:21
amoeba left20:21
rinogo bleything: Good idea. Might be the best option20:21
bleything rinogo: or you could use sshfs to mount your server locally and edit your files in textmate that way20:22
kirkt joined20:22
kirkt is it possible to ask windows git related questions here?20:22
kirkt ducks20:22
Fissure kirkt: of course20:22
bleything rinogo: don't get me wrong, I'm not trying to be proscriptive here, but in my mind this is one of those things that's worth it to just do right in the first place.20:22
rinogo Fissure: For a project of this scope (it's going to require full-time work for at least four months), I'd hate to be editing all of my files on vim via ssh20:22
kirkt uhm, well it seems that when i'm using msysGit, doing a clone from github often gets stuck randomly20:23
bleything rinogo: out of curiosity, what makes it so difficult to set up a local dev environment?20:23
ankit9 left20:24
kirkt to the point where i left it several hours to clone a 200kb repo and it didnt do anything beyong 86%20:24
rinogo everyone: thanks for all of the input. I understand I don't have the ideal workflow, but your suggestions should help. I think sshfs/rsync might be the best solution20:24
cs_student joined20:25
bleything rinogo: another option might be to use branches for development/pushing/testing, then squash all of those commits down to a reasonable commit message before merging into master20:25
but I'm one of those people who thinks SCM history is sacred so that's not somethign I'd do :)20:25
Fissure kirkt: no idea, never seen that happen20:26
bleything: shouldn't you be using hg instead then? ;)20:26
bleything Fissure: who said I'm not? :D20:26
rinogo bleything: There are a variety of issues, but the most frustrating is that the site is based on Drupal, deployed with custom change management scripts to aid in tracking/merging both code and DB changes across dev/staging/production. (Anyone who has worked with Drupal knows that it can be very frustrating that it stores so much configuration in the DB.. :( ). With the config files of the change management scripts, it's tou20:27
bleything Fissure: I inherited a project that's in git and I haven't had time to experiment with changing yet. thinking about it.20:27
rinogo bleything: Another nice option - thanks.20:27
bleything rinogo: that cut off at "it's tou..." but I get the idea. that does sound like a bummer.20:27
rinogo: it annoys me when deployment policy gets in the way of developer productivity20:27
ereslibre joined20:28
rinogo bleything: Thanks for your commiseration! :)20:28
bleything :D20:28
Radar joined20:29
_wwwald joined20:30
wwwald left20:31
kumbayo left20:32
jceb left20:35
jackdempsey joined20:40
gitte jsbmsu: Hi! how are you?20:41
tag joined20:43
tag Is there an equivalent to cvs up -P for git?20:43
aspotashev joined20:43
tag ohh20:44
struberg left20:46
ivanoats joined20:47
Ilari tag: pull with some parameters might come close.20:48
tag I found that the stragglers were actually left because I didn't clean my working copy with my build tool before switching branches20:49
spearce gitte: please post more without a subject line20:49
gitte: or better yet, change the subject line to "Re: posting without a subject line"20:49
gitte spearce: will do ;-)20:49
matthieu joined20:50
gitte spearce: or: ", was Re:"20:50
krh left20:50
solydzajs joined20:50
jsbmsu gitte: oh, hi there, I'm well, and you?20:50
fbond joined20:50
Ilari ...20:51
fbond Hi. How can I pull and overwrite my local tree (I want to have a mirror of the remote repository, but it has been rebased)?20:51
gitte jsbmsu: heh, I am overworked as always.20:51
Ilari fbond: 'git pull --rebase'? It should handle the nonlinearity.20:52
aspotashev|eeepc left20:52
fbond Ilari: Thanks.20:52
gitte jsbmsu: after reading your response to my clueless response, I managed to see just _how_ clueless it was.20:52
jsbmsu gitte: uhh..which part of which response? :)20:52
gitte jsbmsu: the minimize button.20:53
jsbmsu: did I manage to be clueless somewhere else, too?20:53
mw joined20:53
jsbmsu gitte: no. I'm wondering if "clueless" is the word you're looking for though20:54
jackdempsey left20:54
_wwwald left20:54
gitte jsbmsu: I really mean it ;-)20:54
fbond left20:54
igli joined20:55
jsbmsu gitte: well, I think the problem is we're trying to read each other's minds -- or see each other's mind's eye20:56
gitte jsbmsu: heh.20:57
jsbmsu: I am actually intrigued by the idea to let the object under the mouse cursor enlarge once the cursor hovers there for a fraction of a second.20:58
eventualbuddha joined20:58
gitte jsbmsu: I am just searching for an intuitive way to minimize it again, without the user having to click on some "minimize" button.20:58
jsbmsu gitte: well, I think auto-expanding could get really irritating..user holds mouse for a moment, then says "wtf, get out of the way"20:59
gitte jsbmsu: but you are right, in the meantime everybody -- and her dog, too -- spent so much time learning the ways of Microsoft that we might just as well have that button, too...20:59
aspotashev left20:59
gitte jsbmsu: user wiggles the mouse out of the way, problem solved ;-)20:59
jsbmsu gitte: or more generally, I think there are some expectations you need good reasons for violating21:00
gitte: I guess it depends on how dramatic the expansion is21:00
gitte: but I don't think a single click is much work to open a commit, but experience says anything clickable should do *something* when moused over to tell you it's "alive"21:01
mikearr joined21:01
Ilari When it comes to "intuitive" user interfaces, there is NO substitute for usability testing.21:02
jsbmsu Ilari: can't disagree with you there21:02
ciaranm notepad is intuitive. vim isn't. thus, notepad > vim.21:02
killerchicken_ In many ways, that is very true. In many other ways, that's very wrong...21:03
xenoterracide unless you're already used to vi, then notepad is not intuitive21:03
ciaranm walking is intuitive. flying a plane is not. thus, walking > plane.21:04
killerchicken_ Assuming I want to edit a config file for the first time in my life, and I'm used to a Windows gui, using Notepad for the task makes much sense.21:04
jsbmsu jjjjjjj why am I typing so many j's?21:04
yann left21:04
xenoterracide + you can turn vim into notepad21:04
but notepad can never be vim21:04
gitte jsbmsu: I think that it is intuitive when the user sees something happen and understands why.21:04
jsbmsu: but I am not married to the idea.21:05
jsbmsu gitte: as opposed to? the user knows what is going to happen before she clicks?21:05
xenoterracide ciaranm: crashing a car is intuitive, driving it is not crashing > driving21:05
igli hover is fine, but it's not essential.21:05
gitte jsbmsu: I just positively hate when I have to click a bazillion times in Windows just to do the thing that should be quick and fast. And I want to Kill Bill.21:05
matthieu left21:06
gitte jsbmsu: most users will not know what they should do, because they haven't read the documentation.21:06
jsbmsu gitte: fair enough. don't look now, but you just repeated my argument for the panes ;)21:06
gitte jsbmsu: my best definition of intuitive is: "usable without having read the documentation."21:06
ciaranm the nipple is intuitive. a cup is not. thus, nipple > cup.21:06
jsbmsu gitte: I like it21:06
ciaranm no, wait, that one's true.21:06
gitte jsbmsu: maybe I did.21:06
jsbmsu: hmmm ;-)21:07
jsbmsu gitte: but I also understand your motivation for avoiding it21:07
smashwilson joined21:07
xenoterracide wants to see how intuitive notepad is when I pull your mouse out of your computer21:08
jsbmsu gitte: I think another important thing is to think about what the user wants or expects to be able to do easily, and (if possible), make it so21:09
aspotashev|eeepc joined21:10
jsbmsu gitte: that may sound too vague...an example: my dad uses flickr...it's great for a user who wants to view a slideshow21:10
gitte jsbmsu: yeah.21:11
jsbmsu gitte: but he also says "my photos are backed up"...well, if he wants to re-get all his photos, he has a few clicks per photo, one at a time21:11
gitte jsbmsu: right.21:11
RaceCondition joined21:11
RaceCondition left21:11
jsbmsu gitte: so if users really wanted to grab a photo archive often, the tool is terrible21:11
priidu left21:11
gitte jsbmsu: I think you can actually tell people what they want to do with a good UI.21:11
xenoterracide it's interesting... the mouse is not intuitive, ever seen a first time user try to use one...21:11
rinogo left21:12
gitte jsbmsu: for example, inspecting changes without checking the files out. Once people find out that this is possible, they start using that feature.21:12
igli trackballs, xenoterracide ;)21:12
gitte xenoterracide: yes, they drop it as soon as the mouse bites them.21:12
xenoterracide igli: I don't think a tracball is any easier for most novices... but I could be wrong21:13
but everyone who's literate can use a keyboard21:13
jsbmsu gitte: for ex. we have assumed a user only wants to inspect one commit at a time...is that so accurate?21:13
igli it was for me. never used a mouse for years. still won't.21:13
faithfulgeek left21:14
jsbmsu gitte: there's something to be said for a gitk log view...this tool may suck in that regard21:14
xenoterracide igli could be, I just love seeing people use 2 hands to put a mouse on a spot. move there hands go to click and then have the mouse move before the click signal is issued21:14
igli heh; I love watching people move the mouse, then lift it up and move it back ;)21:15
what a waste of energy ;)21:15
gitte jsbmsu: the thing is, gitk is pretty fixed in its output.21:15
xenoterracide igli: heh21:15
gitte jsbmsu: your tool could be taught to show number of changed files, or lines.21:15
jsbmsu: or lists of changed files.21:16
xenoterracide I want a trackpoint on my desktop keyboard21:16
gitte jsbmsu: or even diffs.21:16
jsbmsu: the important part is that you have a design to work with.21:16
xenoterracide then I never have to use anything but the keyboard21:16
igli meh i hate those. they're so fiddly after a trackball21:16
gitte jsbmsu: this information should be shown either in the same box, or in boxes that can expand just like the commit itself.21:16
jsbmsu gitte: so are you picturing something that's ultimately fairly user-configurable in terms of appearance?21:16
xenoterracide igli: they are better than a touchpad21:17
gitte jsbmsu: you could even have a "+" on the commit, and for users like me a feature that hovering already expands it.21:17
igli heh i hate both, xenoterracide ;) but yeah IBM used to have nice ones.21:17
gitte jsbmsu: I want it to be the revolution of usability in VCS UIs.21:17
jsbmsu: kind of the opposite of PVCS.21:17
xenoterracide http://xenoterracide.blogspot.com/2009/05/git-presentation.html doing a presentation tomorrow if anyone wants to look over my slides see if I forgot anything21:17
jsbmsu gitte: Pvcs?21:18
xenoterracide igli: I'm not buyin a laptop without a trackpoint ever again21:18
I can't stand touchpads21:18
gitte jsbmsu: I don't want to give you eye cancer, otherwise I'd post a link to a screenshot.21:18
jsbmsu: and it is slow like hell. And limited.21:18
jsbmsu: kind of reminds me of eclipse.21:18
kirkt i dont understand, i commit to a git repo, and push to github and the user is written as [unknown] any idea about this?21:19
jsbmsu gitte: by the way, is JGit (same as JavaGit?) a wrapper around part of Git, or a complete recode?21:19
hpoydar joined21:19
gitte jsbmsu: JGit is a complete recode, JavaGit is a set of wrappers.21:20
nighthwk| left21:20
gitte jsbmsu: JavaGit is also half-dead AFAICT.21:20
fridim joined21:20
killerchicken_ xenoterracide: how about explaining concepts instead of commands? For example, someone not used to the idea of an index will not understand much, I'm afraid21:20
jsbmsu gitte: in the same vein: if we do the GUI in Java/Swing, do we have to use JGit or can we still access the official (or msys) Git?21:20
Tommy[D] kirkt: Did you use the same email and you have in your github account?21:21
xenoterracide killerchicken_: speech accompanies the slides ;)21:21
kirkt Tommy[D]: define 'use' ?21:21
killerchicken_ xenoterracide: of course21:21
gitte jsbmsu: if you find it easier to access CGit, that's okay.21:21
Tommy[D] kirkt: you can set a username and an email in your git config21:21
xenoterracide killerchicken_: since I won't be reading the slides the concepts aren't there as much21:21
gitte jsbmsu: in some respects, JGit is not yet there. For example, I am in the middle of implementing jgit diff, as that does not exist yet.21:22
Tommy[D] kirkt: and you can add an email to your git account, if they are both the same, your accout is shown instead21:22
kirkt Tommy[D] git config user.email ?21:22
carrus85 joined21:22
Tommy[D] kirkt: yes21:22
xenoterracide killerchicken_: otherwise good suggestion21:22
jsbmsu gitte: at any rate, I'd like to decide on a language soon so I know if I need to be studying Tcl/Tk or brushing up on Swing21:22
gitte jsbmsu: what's your preference?21:23
killerchicken_ xenoterracide: yeah, it just seems that the concepts will take the most explaining, and that's why I wondered why there's not a single slide about the21:23
m21:23
eventualbuddha left21:23
xenoterracide killerchicken_: depends on which concepts you mean... I'll be explaining most of them as I go along21:24
jsbmsu gitte: I don't know that I can make a well-informed decision... about all I can say is I think I'd prefer to build against official Git21:24
gitte jsbmsu: well, JGit is as official as a non-C Git can be: it is actively developed by the guy who has the second most commits in C Git.21:25
xenoterracide killerchicken_: curious which concepts do you think will take a long time?21:26
ivanoats left21:27
jsbmsu gitte: perhaps I should say the most popular version of Git21:27
Naib joined21:27
__iron left21:27
jsbmsu gitte: do you think JGit will seek to maintain compatibility with CGit?21:27
dereine joined21:28
Naib hi, I had some issues with a repo so I have done a few test commits/pushes. issue is now fix (problem elsewhere). I would like to scrub these ~6 test commit's/pushes21:28
what is the best way?21:28
killerchicken_ xenoterracide: the index, merging branches, reflog21:28
dereine is there a way to transfer a bzr repo to a git repo?21:28
killerchicken_ xenoterracide: sorry, would love to talk more about this, but I gotta run. I hope your presentation goes well, good luck!21:29
xenoterracide killerchicken_: I'm not sure in all cases I fully understand all concepts, but it's going t be dissussed21:29
killerchicken_: later21:29
romao joined21:29
kirkt Tommy[D]: still doesnt work21:29
Tommy[D] kirkt: and you did add that email to your github account?21:30
__iron joined21:30
kirkt yep its the default21:30
radarek left21:31
gitte jsbmsu: JGit thrives to be completely compatible with CGit.21:31
jsbmsu gitte: by compatible, I primarily mean what is stored in .git/ ...able to alternate accesses to a repo with JGit and CGit with no problems21:31
WALoeIII joined21:31
Radar left21:31
gitte jsbmsu: and it is largely feature-compatible. A few notable exceptions are being worked on...21:31
Tommy[D] kirkt: and you did a new commit? This wont change already done commits since they dont have the email set21:31
carrus85 left21:31
gitte jsbmsu: that is one of the most important things: JGit and CGit need to be able to share repositories _without_ problems.21:32
jsbmsu: they also need to be able to talk to each other.21:32
jsbmsu gitte: I guess it could result in much less mess cross-platform, compared with the msysGit situation21:32
codebrulee left21:32
gotgenes left21:33
kirkt Tommy[D] yes, git commit file -m ".."21:34
Tommy[D] kirkt: does "git show" contain your email?21:34
jsbmsu gitte: the other issue that I can't well assess, is which GUI toolkit (Tk or Swing) is going to serve us better21:34
kirkt Tommy[D] show about where?21:36
henon Swing is the superior toolkit compared to Tk IMHO21:37
Tommy[D] kirkt: the header part should show your email21:37
kirkt Tommy[D] sorry for the ignorance, i should put git show in the commandline?21:38
Tommy[D] kirkt: where else? it should show you the last commit21:39
ivanoats joined21:40
xenoterracide grumbles at the tardiness of people who schedule appointments21:40
igli left21:40
jsbmsu henon: any particular (brief) reasons?21:42
eventualbuddha joined21:42
kirkt Tommy[D] yes it shows correct username and email21:43
tbf left21:44
RodP2 left21:44
hachi I've got a repo here, with HEAD set to refs/heads/trunk21:45
refs/heads/trunk exists and has a sha1 in it21:45
gitweb is refusing to show the 'trunk' branch now21:45
do I try to examine that revision with something to try and debug this?21:45
wycats joined21:46
dodo_the_last1 joined21:46
henon jsbmsu, this is not very brief but it ll do:21:46
A big difference between Tk and Java's AWT/Swing is that Java provides not just a set of widgets, but also the entire infrastructure for creating new widgets, drawing graphics (manipulating individual pixels), etc. This means Java is very, very complicated, but allows you to create new widgets without needing to code in C. Tk, on the other hand, will usually require you to code in C to create an entirely novel widget' (but, it is act21:46
ually quite rare that this is needed, and this is possibly why Tk is so much easier to use -- many, many so-called 'new widgets' can be implemented simply as mega-widgets, without any C).21:46
hachi according to `git log $sha` it does exist21:46
wycats Is there a way to tell git *not* to create a merge conflict if the only difference is whitespace?21:46
or rather, to ignore whitespace in the calculation of merges21:47
gitte jsbmsu: yes, JGit will eventually give us a much easier time to support obscure platforms such as Windows or VMS.21:47
jsbmsu: you might even argue that Windows is an evolution of VMS...21:47
wycats one side made whitespace changes and the other side made real changes21:47
we're getting a ton of conflicts21:47
jsbmsu gitte: if you knew what VMS was..21:47
gitte jsbmsu: just Cesar-encode it: WNT.21:48
eventualbuddha when a new branch is pushed to a remote, the post-receive hook gets 000...000 SHA refs/heads/my-new-branch. how do I get a list of all the pushed commits?21:48
hyperair joined21:48
jsbmsu gitte: well now you're just being silly21:48
gitte jsbmsu: of course I am...21:49
jsbmsu: I just spent an evening chasing an msysGit bug.21:49
aspotashev|eeepc left21:49
gitte jsbmsu: after roughly 3 hours, the solution is...21:49
jsbmsu: unset CYGWIN21:49
jsbmsu gitte: ouch21:49
gitte jsbmsu: indeed... so you may forgive me my little nastiness in the vague direction of Redmond.21:50
_Vi left21:50
hachi anyone know why git would be setting permissions on refs/**/* to be 600 instead of 644 ?21:51
jsbmsu gitte: understood...I feel "stuck" to windows more than married21:51
gitte: just for reference, what time do you have?21:51
offbytwo joined21:52
offbytwo left21:53
eventualbuddha wycats: I've noticed that too. seems silly21:53
(I know there are whitespace-sensitive files, but...)21:53
Ilari hachi: Umask?21:53
hachi ugh21:53
good call21:53
I bet someone changed the umask on these machines21:54
_Vi joined21:54
hachi (I will destroy them)21:54
bcardarella left21:54
stuffcorpse joined21:55
dduncan joined21:56
Radar joined21:56
lightcap joined21:56
UUncia Is it possible to deliver/commit only some changes from one branch to another?21:57
Gitzilla joined21:57
shd UUncia: sha1 ids will have to change then.. use format patch in the branch, then the patches to another21:57
kirkt Tommy[D] on some places it recognize it was me, on the main page it writes [unknown]21:58
shd +then apply the patches to another..21:58
UUncia lol... I have no idea what that means... I'm still a beginner.21:58
in git, that is.21:58
Nugget joined21:58
dduncan left21:58
shd UUncia: there are special cases, where it is possible, but not really a beginner feature :)21:58
_graham_ left21:59
shd UUncia: you could do: branch A: git format-patch HEAD~4 (take 4 patches), then branch B: git am patch-files-you-want-to-apply21:59
Naib left21:59
ivanoats left22:00
gitte jsbmsu: sorry... Previously, my IRC client told me when there was a message for _me_ in that channel...22:00
jsbmsu: it is exactly midnight here.22:00
hummingkid joined22:00
UUncia shd - shouldn't something like that be really needed?22:01
jsbmsu gitte: so you're 7 hours ahead of me22:01
shd UUncia: it's very possible, but fixing conflicts will arise22:01
UUncia well, that's only logical.22:02
shd UUncia: it's easy to pick the commits (patches), but applying them might cause conflicts22:02
gitte jsbmsu: are you in Chicago, or at least its tz?22:02
jsbmsu gitte: same tz22:02
cmarcelo joined22:02
smeevil left22:03
bremner_ joined22:03
memphismemosley joined22:04
memphismemosley left22:04
gitte jsbmsu: out of curiosity: which town/state?22:05
jsbmsu gitte: to be more specific, I guess the concern is which GUI toolkit well be helpful in managing the layout of commits and floating a "commit window" above the graph22:06
gitte: the small college town of Starkville, Mississippi...at least until the end of summer22:06
gitte: you're in Dresden?22:07
gitte jsbmsu: I am pretty comfortable with both Tcl/Tk and Java/Swing, but henon is absolutely right, Java gives you much better control over the low-level stuff.22:07
jsbmsu: that's correct!22:07
jsbmsu gitte: and with something like this, do you think there's a good probability we will want that level of control?22:07
henon it also has the better look and feel, but your mileage may vary22:07
merlin1983 joined22:08
jsbmsu henon: vary by...hmm..OS? :)22:08
gitte jsbmsu: well, pulsating rectangles are probably easier using Java/Swing... ;-)22:08
henon =D22:08
sjzzalx joined22:08
sjzzalx Where should I configure push.default? I tried to put it under core in .git/config but thing cried to me22:09
gitte henon: with Tcl/Tk 8.5, I actually have to disagree slightly: the look and feel of Swing on Linux leaves to be desired.22:09
sjzzalx: I think you should put "default" into "[push]"...22:09
jsbmsu I thought Swing (at least by default) had an OS-independent look...is that not the case?22:10
schmrz left22:10
bcarlyon|laptop joined22:11
sjzzalx gitte: OK, thanks. I don't have a push section ... is that supposed to go locally or on the thing I am pushing to?22:12
drewr joined22:12
cs_studentposeidon22:12
gitte sjzzalx: the push setting goes locally IIRC.22:12
sjzzalx gitte: OK, thanks. :)22:12
gitte sjzzalx: and the notation you used ("push.default") suggests to use "git config" to set it, which creates the section by itself.22:13
eventualbuddha given a SHA, is there a way to list all commits not already in the tree of one of the named branches (e.g. master, etc)?22:13
Nugget left22:13
sjzzalx ok22:13
thanks gitte22:13
eventualbuddha I'm trying to figure out how to generate a list of commits that were pushed in a post-receive22:13
obama joined22:13
obamaGuest8330322:14
henon gitte, whow, Tile looks really great22:14
bcarlyon|laptopBarryCarlyon22:14
gitte henon: doesn't it?22:14
bremner_ left22:14
Guest83303 left22:14
bush_78 joined22:15
bush_78 left22:15
snuxoll joined22:15
jsbmsu gitte: something tells me you would prefer Java/Swing, anyway22:16
Nugget joined22:16
obama joined22:17
gitte jsbmsu: actually, I would prefer Tcl/Tk, because the development speed would be faster: it is interpreted, and readily available on all platforms where we run Git.22:17
obamaGuest6831422:17
texel left22:17
gitte jsbmsu: but some people (for example a namesake of yours) have pretty serious concerns regarding Tcl/Tk and the number of developers able to speak this language.22:18
Guest68314 left22:18
jsbmsu gitte: do you disagree? is it a legitimate concern?22:19
henon true, if you want to push the project a popular language helps alot. if you asked on ruby-lang who would join a git-gui project at least 10 would readily join22:19
hawken joined22:19
carrus85 joined22:22
henon tcl/tk is available for all of the popular high level scripting languages ...22:23
carrus85 left22:23
obama joined22:24
obamaGuest1367522:24
henon ruby being the best of all (me thinks :D )22:24
carrus85 joined22:24
gitte jsbmsu: I really haven't made up my mind, but I think that your preference would be important.22:24
Guest13675 left22:24
jsbmsu i wonder how well non-Tcls stay up-to-date with Tk22:25
qrush joined22:26
jsbmsu gitte: my gut votes for Tcl/Tk, but for something as logical and rational as programming, I'm not sure the gut is worth much22:26
bush_53 joined22:26
hyperair left22:26
gitte jsbmsu: well, the thing is, you were very good at learning Tcl/Tk that quickly, I have no doubt that you can switch from Tcl/Tk to Java/Swing if need be.22:27
jsbmsu: and of course, I would help you there.22:27
hawken Hello22:27
all22:27
bush_53 left22:27
sjzzalx Hello22:28
how are things22:28
jsbmsu gitte: if we went with Tk, any opinion on choice of scripting language?22:28
FFighter joined22:28
FFighter hello22:28
sjzzalx hello22:28
FFighter I removed two subdirs and added them as a submodule22:28
not git says that I can't pull because these files would be overwritten by merge22:28
Alinermedia left22:28
FFighter I though on forcing it22:28
but I'd rather do something else22:29
any hints?22:29
gitte jsbmsu: well, I would go for Tcl, as we have that in msysGit already.22:29
jsbmsu gitte: ah, yes22:29
gitte jsbmsu: I cannot compile Python in msysGit, so that would not be my preference, but then, I'd not participate in this project using Windows, but Linux.22:29
KwikkSilva joined22:30
Guest91181 joined22:30
jsbmsu gitte: my guess is most of my peers I will want to use it with will be on Windows :)22:30
gitte jsbmsu: we do not have Tk bindings for our Perl, as Perl is MSys for the time being (nobody stepped forward doing the massive work of making Perl scripts Windows-compatible), and Ruby is not in msysGit at all...22:30
FFighter I really need a hand here :)22:30
we are about to push a new build22:30
gitte jsbmsu: yeah.22:30
jsbmsu: but with a bone-headed Open Sorcerer as me not being in the way, you could just install a binary for Python or Ruby.22:31
Guest91181 left22:31
jsbmsu gitte: there's something to be said for ease of installation...if Tcl/Tk is already there for the msysGit users, that's one less tep22:32
gitte jsbmsu: right.22:32
Dashkal joined22:32
dwave left22:32
gitte jsbmsu: You should experiment a little with drawing on a (potentially large) canvas before reaching a conclusion, though.22:33
jsbmsu i'm trying out git-svn on Ubuntu. I have a local copy of the SVN repo, but I can't figure out how to format the SVN URL in order to clone it22:33
struberg joined22:33
jsbmsu gitte: I think I'll dive into Tcl/Tk this week and play around with it22:33
gitte jsbmsu: great!22:34
cmarcelo left22:34
bremner jsbmsu: file://svnrepopath ?22:34
faithfulgeek joined22:34
jsbmsu bremner: sometimes you have to ask a question to figure out the answer...typing the wrong user name after /home/. thanks though!22:34
henon gitte, please keep me up to date! i am very very interested. is there already a project site?22:36
gitte henon: for the graph-based UI? No, not yet.22:36
henon: but certainly, we'll keep you posted, and definitely come back to you with questions about intuitive design and usability, as that is your major subject.22:37
henon i also know a lot about efficient rendering of large data22:37
ok, so ... it is late for me. gn8 gitte, jsbmsu22:38
gitte henon: cool!22:38
henon: git night!22:38
jsbmsu henon: thanks, take care22:38
gitte henon: my fix for issue 138 seems to work... ;-)22:38
jrmuizel left22:38
henon you make me very happy today!22:38
gitte ;-)22:39
tobydeh joined22:40
tobydeh hi everyone22:40
henon left22:40
tobydeh whats the quickest way to set password protection on a per project basis to repos served over http22:41
thiago_home .htaccess22:41
tobydeh ok, when i use the git client to clone a url with a .htpasswd i get a 40122:43
k0001 left22:43
thiago_home 401 = Authentication Required22:44
sjzzalx left22:44
tobydeh i know that22:44
im asking how to tell the client the user and pass22:44
it doesnt ask for it22:44
thiago_home I don't know if it supports that22:45
solydzajs left22:45
zuez odd, how can my master branch be ahead of origin/master by two commits if I don't touch master branch and only pull to it?22:45
smashwilson left22:45
thiago_home I don't see "401" anywhere in the Git source code, so I doubt it handles password challenges22:46
zuez: you have two commits ahead of origin/master22:46
it could be that you pulled directly into it, bypassing the local origin/master copy22:46
tobydeh thiago_home you just need to create a .netrc with the login details22:46
because git uses curl22:47
thiago_home ah, didn't know that22:47
tobydeh now you do :)22:47
thiago_home has never used the HTTP protocol for Git transfers22:47
thiago_home it's a lot less efficient than the native protocols22:47
tobydeh yes thats true, but if im sharing source with the public (most of which are SVN users) i need the simplest possible method of allowing them to checkout and update22:48
what protocl do you use?22:49
texel joined22:52
josesito joined22:54
jsbmsu left22:54
josesito how can I know what files changed between current branch and a specific commit of another branch?22:54
jsb119 joined22:55
tobydeh left22:55
jsb119 left22:56
faithfulgeek left22:57
jsbmsu joined22:57
bnferguson joined22:57
zuez thiago_home: How does that work, where I bypass the local origin/master copy?22:58
thiago_home: considering I never work on the local master branch, I shouldn't be ahead of the origin/master22:58
thiago_home git pull remotename branchname22:58
that does the pull, but doesn't touch origin/master22:58
zuez What's the best way to fix this22:58
I prefer not to push22:58
kirkt left22:58
psoo left23:00
psoo joined23:00
hachi joined23:01
bobmcw_ joined23:02
[intra]lanman left23:02
agile joined23:04
Blafasel_ joined23:04
joshsdc joined23:05
robinr spearce: anything obviously wrong when I get an NPE at repo = server.getRepositoryCache().get(repoName); com.google.gerrit.server.ProjectAdminServiceImpl$10.run(ProjectAdminServiceImpl.java:405) ?23:07
bizhat2 when i run git remote rm orgin, i get error error: Could not remove config section 'remote.orgin', how do i remove orgin ? I need to add new orgin23:07
,23:07
spearce robinr: no git_base_path in system_config table. or, more accurately, its null. see the installation guide in the documentation23:08
bizhat2 git remote rename also not working -> error: Could not rename config section 'remote.orgin' to 'remote.orgin_old'23:08
bob2 did you remove config section remote.origin from .git/config?23:09
mjf left23:10
psoo left23:10
Run joined23:11
bizhat2 bob2: no, it was working, i want to change my respo url as i moved to a different git hosting, so i run "git remore rm orgin" to delete current orgin, this is correct way to do ?23:11
can i remove [remote "origin"] from .git/config ?23:12
meyering joined23:12
jrmuizel joined23:14
stuffcorpse left23:14
stuffcorpse joined23:14
cemerick joined23:16
struberg spearce where can I pull the fix for the ArrayIndexOutOfBoundsException from, or should I apply the patch from the mail?23:17
spearce struberg: have to apply from mail, i didn't publish it anywhere23:18
robinr spearce: nope, it's set23:19
spearce robinr: did you restart the server since you set it?23:19
arohner joined23:19
muszek left23:19
ciskje_ left23:19
robinr not, sure. trying23:20
spearce robinr: git_base_path is cached on startup and if null, RepositoryCache doesn't get constructed, leading to an NPE here.23:20
gotgenes joined23:20
robinr works :)23:20
spearce robinr: also, make sure your system_config only has 1 row in it; guy here the other day somehow got 2 rows in there and gerrit was reading the one with the NULL in it.23:20
ok23:21
ywarnier joined23:21
bcardarella joined23:22
qrush left23:24
scarabx joined23:24
bizhat2 left23:25
ywarnier left23:25
seangrove joined23:25
neoeinstein joined23:27
seangrove left23:28
seangrove joined23:28
FFighter left23:28
RaceCondition joined23:28
RaceCondition left23:29
seangrove left23:30
jpeeler joined23:31
towski joined23:31
__iron left23:32
seangrove joined23:32
JohnnyL joined23:33
zuez git log origin/master.. is ultimately show me the head of origin/master or?23:33
struberg grml, anyone applied patches from yahoo webmail yet? don't have a mbox on this laptop...23:33
SinJax joined23:34
SinJax hello, im having some conceptual problems with git sparked by some (possibly naughty) behaviour of some friends... basic question first:23:34
how do you diff two branches?23:35
RandalSchwartz git diff thisbranch...thatbranch23:35
SinJax or rather "Is it possible to diff two branches?"23:35
webcoder left23:35
RandalSchwartz no. completely impossible. who would ever want to do that... :)23:35
SinJax RandalSchwartz: heh :P23:35
Lenary left23:36
RandalSchwartz next question?23:36
dereinedereine[OFF]23:36
RandalSchwartz waits23:36
schacon left23:37
SinJax and now the naughty bit :)23:37
it would seem from the diff23:37
wait sorry ill start from the beggining :D23:38
RandalSchwartz "ill"? are you sick?23:38
or did you mean "I'll"?23:38
JohnnyL SinJax maybe you should read the short intro tutorial?23:38
SinJax yes i mean I'll :)23:38
RandalSchwartz are you paying for IRC by the character? :)23:38
lightcap left23:38
josesito left23:38
SinJax two branches, one is the master of one repo, and another branch master of another repo23:38
RandalSchwartz do they have a common ancestor?23:39
SinJax the problem is that the diff of these two branches seems to think the same lines were remove then added again23:39
gitte SinJax: you could have contradicted Merlyn and said "I wanted to say 'will'".23:39
SinJax RandalSchwartz: thats the problem ;)23:39
RandalSchwartz you mean "that's"?23:39
you seem to have a problem with your "'" key23:39
gitte SinJax: I guess the lines are not really identical, but have white-space issues.23:39
RandalSchwartz hey gitte23:40
gitte SinJax: you can test with "git diff -w <branch1>..<branch2>"23:40
hey RandalSchwartz!23:40
RandalSchwartz defers answering questions when Smarter People(tm) are around23:40
gitte RandalSchwartz: how are you?23:40
RandalSchwartz Busy23:40
SinJax oh randal, though its remarkably interesting to discuss the apostrophe and its many meanings, id argue its primarily a cultural throwback...exemplified by the fact that you can correct me perfectly well23:40
ehm23:40
RandalSchwartz finally have a full-time contract23:40
gitte RandalSchwartz: I do the same, so usually I let you do all the talk.23:40
RandalSchwartz: great news!23:40
RandalSchwartz after 8 months of non-employment23:40
gitte RandalSchwartz: was well needed, I know.23:40
RandalSchwartz so yes, I'm about to lose one of my properties23:41
gitte RandalSchwartz: that sux, 8 months of waiting.23:41
RandalSchwartz and take the "been repo'ed" hit23:41
rettub_ joined23:41
gitte RandalSchwartz: could you grace a poor non-native speaker with some insight as to what "been repo'ed" means?23:41
RandalSchwartz reposessed23:42
gone in default for lack of payment23:42
schacon joined23:42
RandalSchwartz foreclosed, in the realm of real estate23:43
gitte RandalSchwartz: oh, that's bad, I am very sorry!23:43
romao left23:43
SinJax gitte: ok good good...now the problem! :D what i want to do is merge these two branches, but as though they were contemporaries... as it stands when a merge occurs one branch is assumed to be newer and just over writes23:43
id like to be asked about every change23:44
RandalSchwartz I look at it this way... for 30 years, from the time I was 16, I've paid every bill on time that was put in front of me23:44
tatsuyao left23:44
SinJax does that make sense?23:44
RandalSchwartz for me to finally have to say "oops, screwed up", not bad.23:44
gitte RandalSchwartz: at least you have a contract now.23:44
RandalSchwartz and only in an era when millions of other americans are saying the same thing23:44
cemerick left23:44
RandalSchwartz including many others with credit ratings like mine23:44
gitte RandalSchwartz: unfortunately, many people knowing your talents could not help you...23:44
RandalSchwartz well - I'm now working at a rate I have not seen since 199523:45
gitte SinJax: define "change".23:45
RandalSchwartz but at least it's coming in :)23:45
gitte SinJax: oh, I just realize, that was asking for puns ;-23:45
SinJax gitte: ...every difference between the files23:45
gitte: merge with every difference treated as a conflict to be resolved23:45
gitte RandalSchwartz: you're still located in Portland?23:45
SinJax is that possible?23:45
gaveen left23:46
gitte SinJax: everything's possible in Git.23:46
SinJax celebrates :D23:46
SinJax what should i read? :D23:47
altrux joined23:47
gitte SinJax: the question is if I can explain it in a comprehensible way before I drop into my bed.23:47
gaveen joined23:47
SinJax im already in my bed ;)...this might have to wait till tomorrow23:47
gitte SinJax: you can create a fake commit with the same tree as one of the both branch tips, then graft that commit as pretended merge base of both, and then merge.23:48
tatsuyao joined23:48
gitte SinJax: if that sounds like gibberish to you, I just proved my point... ;-)23:48
SinJax no no this sounds sane to me23:48
fake commit them both23:48
then fake merge them both23:48
then merge23:48
yes?23:48
gitte SinJax: well, the tricky parts are "graft" and "pretend"... ;-)23:49
SinJax: they are independent, you said, right?23:49
SinJax ... they can be assumed to be yes23:50
im doing this all in branches so i don't mind experimenting :d23:50
RandalSchwartz I'm still in Portland, yes23:51
I'm working remotely for a company in Burbank though23:51
jsbmsu left23:51
hpoydar left23:52
gitte SinJax: the thing is: you'd have to make a _new_ commit (fully independent) to fake a merge base.23:52
jrmuizel left23:52
qrush joined23:52
SinJax gitte: ok...ok that sounds fine, so how do i do that?23:52
i mean doing a git commit on either branch just says im up to date23:53
accurately!23:53
gitte SinJax: something like 'git symbolic-ref HEAD refs/heads/temporary-merge-base && git commit -m "faked merge base"'23:53
SinJax: it cannot be on either branch.23:53
SinJax: otherwise you would get into nasty loop problems, the "DAG" would be a "DCG" now.23:53
SinJax ah ok.... so make a new branch23:54
then23:54
hmm ill man page this symbolic-ref lark23:54
gitte SinJax: after creating that fake merge base, you'd need to add two lines "$COMMIT $FAKE_PARENT" with both branch tips as $COMMIT to .git/info/grafts.23:54
SinJax: after that, you'd have to check out the former branch (which was left with that cute and cunning symbolic-ref call)23:55
SinJax: and then you could "git merge <other-branch>" getting _a lot_ of merge conflicts.23:55
SinJax: you should remove the faked merge base as well as the grafts as soon as possible after resolving the merge conflicts.23:55
gitte is now conking out.23:56
SinJax ill23:56
look at this tomorrow23:56
thank you thought gitte23:56
i think im sleeping too ;)23:56
jrmuizel joined23:56
SinJax good night :)23:56
SinJax left23:56
gitte is not a thought...23:56
tatsuyao left23:57
spearce no, its an irc handle. :)23:57
JohnnyL left23:57
gitte its a GMane bot.23:58
cemerick joined23:58
davi joined23:58

Logs Search ←Prev date Next date→ Channels Documentation