| 2009-04-23 |
|
gitte
| doener: GIGO | 00:00 |
| ← bremner_ left | 00:00 |
|
doener
| :-) | 00:00 |
| → bremner_ joined | 00:00 |
|
gitte
| doener: well, thinking about it, Gigo is an acronym I understand. But Gitbot? What does _that_ mean? | 00:01 |
| ← HG` left | 00:01 |
| ← naeu left | 00:02 |
| ← gwoo left | 00:02 |
| → carldani joined | 00:02 |
|
carldani
| hi | 00:02 |
|
doener
| gitte: hm, in that context, maybe it's just wordssmashedtogether, "git" having its British meaning ;-) | 00:02 |
|
carldani
| is there any way to get the git log for a given repository on disk without having to enter the directory of that repository? | 00:04 |
| → renan_saddam joined | 00:04 |
|
doener
| carldani: git --git-dir=/path/to/.git log | 00:04 |
|
jast
| gitte: "Garbage In, Typical Bot Output: Trash" | 00:04 |
|
renan_saddam
| how do I merge a branch to another? | 00:04 |
|
| git merge | 00:04 |
|
| ? | 00:04 |
| → jerbear joined | 00:04 |
|
gitte
| doener, jast: well, I came up with "Generaly idiotic test, by outputting trash" | 00:04 |
|
Dashkal
| be in the branch you want to merge _into_ then git merge <branch to merge from> | 00:05 |
|
poseidon
| I installed git in Ubuntu, however I can't find git in /usr/bin | 00:05 |
|
mugwump
| you installed the git-core package? | 00:05 |
|
carldani
| doener: thanks! | 00:05 |
|
renan_saddam
| Dashkal: git checkout pt_br; git merge master | 00:06 |
|
poseidon
| mugwump, nope just git. Installing get-core now | 00:06 |
|
renan_saddam
| strange it returns "Already up-to-date" | 00:06 |
| ← FreakGuard left | 00:06 |
|
doener
| poseidon: the "git" package used to be "gnu interactive tools". It's called "gnuit" now. | 00:06 |
|
jast
| I'll just go get sleep now to stop myself from coming up with even more ridiculous backronym expansions. | 00:06 |
|
poseidon
| lol, thanks | 00:06 |
|
doener
| poseidon: git, the dvcs, is in git-core, as mugwump said | 00:06 |
|
Dashkal
| renan_saddam: are you sure there's something to merge? The only time I get that message is when the two branches are pointing at the same commit | 00:07 |
|
renan_saddam
| Dashkal: I was on the wrong branch | 00:08 |
|
Dashkal
| that would do it | 00:08 |
| sdiz-afk → sdiz | 00:08 |
|
renan_saddam
| Dashkal: I do a git branch -a and returns "origin/pt_br". I should do a git checkout pt_br, right? | 00:09 |
|
Dashkal
| Are you trying to merge the changes from pt_br into master or the changes from master into bt_br? | 00:09 |
|
renan_saddam
| Dashkal: master to pt_br | 00:09 |
|
Dashkal
| make sure your pt_br is up to date with origin | 00:10 |
| ← kalle_ left | 00:10 |
| → qrush_ joined | 00:11 |
|
renan_saddam
| Dashkal: that's what I'm trying to do... get the last changes from master and merge to pt_br | 00:11 |
| → [1]intripoon joined | 00:11 |
| ← jrmuizel left | 00:11 |
|
Dashkal
| "Already up to date" means the branch you're merging from points to the same commit as the branch your merging into. Nothing to do. Given that that's unexpected, I suspect that either your master or pt_br branch is out of date with origin | 00:12 |
|
doener
| Dashkal: not necessarily the same commit | 00:12 |
|
Dashkal
| doener: My mistake, yes, already merged would do it too | 00:12 |
|
poseidon
| When trying to connect to the sourceforge git repos I get the following "error: src refspec master does not match any." | 00:13 |
|
doener
| poseidon: did you push anything to that repo yet? | 00:14 |
|
poseidon
| no it's empty | 00:14 |
|
| I'm using the guide at http://apps.sourceforge.net/trac/sourceforge/wiki/Git | 00:14 |
|
| That was the first time I tried to push on the repo. | 00:15 |
| → jrmuizel joined | 00:15 |
| ← carldani left | 00:15 |
|
doener
| poseidon: ah, sorry, the source refspec was "bad" | 00:15 |
|
| poseidon: probably means that your local repo is also empty (or has no branch head called "master") | 00:15 |
| → kalle_ joined | 00:16 |
| ← Bass10 left | 00:16 |
| → mithro joined | 00:16 |
|
poseidon
| O, my my repo is empty. I guess I should fill it with a couple files | 00:16 |
|
| Whats the difference between add and commit? | 00:16 |
| ← bobesponja left | 00:17 |
| → bobesponja joined | 00:17 |
|
poseidon
| nm | 00:17 |
|
zpoley
| i just did a git svn clone and i have master pointing at one of my subversion branches - is there a way to point master back at trunk ? | 00:17 |
| → bambule joined | 00:17 |
|
doener
| zpoley: did you do anything else yet? Or just cloned? | 00:17 |
|
zpoley
| just cloned | 00:18 |
| ← Student left | 00:18 |
| ← geir_ left | 00:18 |
|
doener
| zpoley: then (assuming that you didn't use the --prefix=whatever option) "git reset --hard trunk" should do | 00:18 |
|
zpoley
| doener: nice thank you | 00:19 |
| ← ia left | 00:19 |
| ← marvil07 left | 00:19 |
| → wshimmy1 joined | 00:20 |
|
columbo
| ? | 00:20 |
| → bdimcheff joined | 00:20 |
| ← qrush left | 00:22 |
| → marvil07 joined | 00:23 |
| → gwoo joined | 00:24 |
| → Leemp joined | 00:24 |
| ← gwoo left | 00:24 |
| ← bambule4711 left | 00:25 |
| → javatexan joined | 00:28 |
| ← intripoon left | 00:29 |
| [1]intripoon → intripoon | 00:29 |
| → nis joined | 00:32 |
|
nis
| gitte: hi! What's up? | 00:32 |
| ← Modius left | 00:33 |
|
gitte
| nis: time ;-) | 00:33 |
|
nis
| gitte: still stressed? | 00:33 |
|
gitte
| Yep. | 00:33 |
|
| Still have something to do, but I am dead tired. | 00:33 |
|
nis
| Oh, see you later then. | 00:34 |
|
gitte
| CU! | 00:34 |
| ← gitte left | 00:34 |
|
nis
| "CU"? | 00:34 |
| ← netoman left | 00:34 |
| ← wshimmy left | 00:35 |
| ← qrush_ left | 00:35 |
| ← travisjeffery left | 00:37 |
|
nis
| could anyone tell me what CU means? | 00:37 |
| ← the10nitro left | 00:37 |
| ← tatsuyao_ left | 00:37 |
|
jjuran
| "See you." | 00:37 |
| → Voight-Kampf joined | 00:37 |
|
DrNick
| nis: in this context, "see you" as an abbreviation for "see you later" | 00:38 |
| ← orbii left | 00:38 |
|
nis
| Ah, thanks. (IRC and me...) :-) | 00:38 |
| → coney joined | 00:39 |
| ← Voight-Kampf left | 00:39 |
| amahi → cpg | 00:39 |
|
coney
| so what do i do when i screw up and want to go clean slate | 00:39 |
| ← Predominant left | 00:40 |
| ← loincloth left | 00:40 |
|
nis
| coney: it depends if you already commited. | 00:42 |
|
coney
| no i never comit :D | 00:43 |
| ← dodo_the_last left | 00:43 |
|
coney
| i'm a loser | 00:43 |
|
nis
| coney: seriously? | 00:43 |
|
coney
| XD but i'm tryin to change | 00:43 |
|
| i'm way off the branch | 00:44 |
|
| apple on the ground | 00:44 |
|
nis
| coney: what 'git status' says? | 00:45 |
|
coney
| nobranch | 00:45 |
|
| but its got changes it wants me to save but i dont wanna | 00:45 |
|
| XD | 00:46 |
| ← uberpinguin left | 00:46 |
|
nis
| coney: first, you should commit all your work now | 00:46 |
|
coney
| doesnt that give it upstream? | 00:47 |
|
nis
| coney: no! | 00:47 |
| → davidad joined | 00:47 |
| → ngng joined | 00:47 |
| → scarabx joined | 00:47 |
|
nis
| coney: git commit is a _local_ operation. | 00:47 |
|
| coney: you should commit often on a dedicated branch | 00:49 |
|
coney
| ok | 00:49 |
|
nis
| coney: done? | 00:49 |
|
coney
| whats that do | 00:49 |
|
nis
| coney: it saves your work in the repo. | 00:49 |
|
| coney: if you screw up more you'll be able to come back at this state. | 00:50 |
|
| coney: what 'git branch' says? | 00:51 |
|
coney
| still no branch | 00:53 |
|
| checkout -b? | 00:53 |
|
nis
| try that | 00:53 |
|
| coney: the main problem is to find your last "clean slate" | 00:54 |
|
| coney: do you know why you were not on a branch? | 00:55 |
|
coney
| git reset --hard HEAD looks promising | 00:55 |
| → egoist joined | 00:56 |
|
coney
| if there was a way to screw up git bet your !#$ i will | 00:56 |
|
| nothing to commit (working directory clean) | 00:56 |
|
nis
| coney: ok, what is the branch you were working on (i mean before you left it) | 00:57 |
|
| s/is/was/ | 00:58 |
| ← foutrelis left | 00:58 |
|
coney
| its in git branch -a | 00:58 |
| → MarcWeber joined | 00:58 |
|
coney
| git branch -f origin/branch? | 00:59 |
|
nis
| is it in git branch -r too? | 00:59 |
| ← bdimcheff left | 01:00 |
|
coney
| of course | 01:00 |
|
nis
| but not in 'git branch' | 01:00 |
| ← Dashkal left | 01:00 |
| → hgimenez joined | 01:01 |
| ← solydzajs left | 01:01 |
|
coney
| er wait checkout | 01:01 |
|
| the docs keep flipin cmds on me | 01:01 |
|
nis
| coney: branches listed in 'git branch -r' are remote branches. you have to create new branches from remote branch to work on it. | 01:02 |
| ← Tv left | 01:02 |
| ← qhoxie left | 01:03 |
| ← marvil07 left | 01:05 |
| → deskin joined | 01:05 |
|
nis
| coney: e.g. 'git checkout -b mywork origin/interesting'; <work, work, work>; git commit; <work, work, work>; git commit; etc | 01:05 |
| → Voight-Kampf joined | 01:06 |
| ← bremner_ left | 01:07 |
| → travisjeffery joined | 01:09 |
|
coney
| whoah thats a mouthfull | 01:10 |
| ← abra left | 01:10 |
|
coney
| thats it? | 01:10 |
| ← kalle_ left | 01:10 |
|
coney
| how do i update | 01:10 |
|
| from remote commits | 01:11 |
|
nis
| remote commits are stored in the remote branches. | 01:11 |
| ← porcnick left | 01:11 |
|
nis
| (well, we can see it like that) | 01:12 |
| → loincloth joined | 01:13 |
|
coney
| merge? | 01:13 |
|
nis
| ? | 01:13 |
| → tag joined | 01:14 |
| → sitaram joined | 01:14 |
|
tag
| is there a way I can export just my changesets from the base I cloned? | 01:14 |
| → arohner joined | 01:15 |
|
nis
| tag: man git-format-patch ? | 01:15 |
|
Gitbot
| tag: the git-format-patch manpage can be found at http://git.or.cz/man/git-format-patch | 01:15 |
| ← loincloth left | 01:15 |
| → kalle_ joined | 01:16 |
|
nis
| tag: something like: 'git format-patch initial_branch..mine' | 01:16 |
| → solj joined | 01:16 |
| ← egoist left | 01:16 |
| → bremner_ joined | 01:16 |
| → bremner__ joined | 01:17 |
| → ia joined | 01:18 |
| ← arohner left | 01:19 |
| tedoc2000 → tedo_afk | 01:20 |
| tedo_afk → tedoc2000_afk | 01:20 |
|
tag
| then how do I import those patches? (or do I just apply, commit, apply commit...) | 01:21 |
|
nis
| tag: git am | 01:21 |
|
| man git-am | 01:22 |
|
Gitbot
| nis: the git-am manpage can be found at http://git.or.cz/man/git-am | 01:22 |
|
nis
| tag: you may also know man git-apply | 01:23 |
|
Gitbot
| tag: the git-apply manpage can be found at http://git.or.cz/man/git-apply | 01:23 |
| → camwest joined | 01:23 |
| → bremner___ joined | 01:25 |
| ← botanicus left | 01:26 |
|
solj
| hi, i'm getting a segfault when running git svn | 01:27 |
|
| http://gist.github.com/100214 <== backtrace | 01:27 |
| ← javatexan left | 01:27 |
| → bremner____ joined | 01:28 |
| → porcnick joined | 01:28 |
| ← sgrimm left | 01:29 |
|
nis
| solj: is the repo public? | 01:29 |
|
solj
| nis: yes | 01:30 |
|
nis
| solj: could you give the address and the command you type? | 01:30 |
|
solj
| git svn fetch | 01:31 |
|
deskin
| solj: you'll get farther with a perl debugger; also, the crash looks like it's in the svn bindings (apache portable runtime which they use) | 01:31 |
|
nis
| ah, you already have a clone. | 01:31 |
|
solj
| reposRoot = https://svn.mcs.anl.gov/repos/bcfg | 01:31 |
|
nis
| solj: what your git --version? | 01:32 |
|
solj
| deskin: yeah, i'm pretty sure it's somewhere in the subversion code, but i'm not familiar with debugging perl | 01:32 |
|
| this is 1.6.0.6 in gentoo | 01:32 |
| → kaichen joined | 01:33 |
|
coney
| w00t i'm ahead by one commit | 01:33 |
|
| this is kinda fun | 01:33 |
|
nis
| coney: good. :-) | 01:33 |
|
deskin
| I'm not very either :) what I did was hack the source to dump perl backtraces when crashing, which worked ok; don't have access to the specific method right now | 01:33 |
|
nis
| solj: does gentoo provide a newer version? | 01:34 |
|
deskin
| ...actually I think I can find it, if you're interested | 01:34 |
|
solj
| nis: that's the latest unmasked version | 01:34 |
|
| i can try unmasking a more recent version | 01:34 |
| ← WALoeIII left | 01:34 |
|
nis
| solj: or compile from an official repo. | 01:34 |
|
deskin
| I'd try upgrading the svn bindings first, if you can | 01:34 |
| → Tv joined | 01:35 |
|
solj
| alright, i'll try that | 01:35 |
|
| thanks | 01:35 |
| ← kukks left | 01:35 |
| → bremner_____ joined | 01:36 |
| ← renan_saddam left | 01:36 |
| → joevandyk joined | 01:37 |
|
joevandyk
| git svn dcommit hangs on me. what should i do?? | 01:37 |
|
| says "commiting to <url> ..." | 01:37 |
| ← bremner_ left | 01:37 |
|
joevandyk
| and then nothing | 01:37 |
| ← btanaka left | 01:38 |
|
nis
| joevandyk: is the remote repo up? | 01:38 |
|
joevandyk
| yeah | 01:38 |
|
| i can commit via regular svn | 01:38 |
|
nis
| joevandyk: what's you git --version? | 01:38 |
|
joevandyk
| nis: git version 1.6.2.rc1.13.g25487f | 01:38 |
| ← bremner__ left | 01:39 |
|
nis
| joevandyk: did you tried on a newer version? | 01:39 |
|
joevandyk
| first time i've used git-svn and first time i'm trying to dcommit | 01:39 |
| → dgs__ joined | 01:39 |
|
joevandyk
| nis: thought this one was pretty new | 01:39 |
|
| but i i will try | 01:40 |
|
nis
| joevandyk: yeah but it's a "rc" release candidate. | 01:40 |
| ← dgs_ left | 01:40 |
|
joevandyk
| nis: compiling now | 01:40 |
|
nis
| joevandyk: feel free to feedback. :-) | 01:41 |
| → javatexan joined | 01:41 |
|
joevandyk
| go go compile | 01:41 |
|
nis
| i'm going nowhere. ,-p | 01:42 |
| ← markelikalderon left | 01:42 |
|
joevandyk
| ok, trying to dcommit again | 01:42 |
|
| same behavior so far. would it normally take a long time the first time to dcommit? | 01:43 |
| → km2 joined | 01:43 |
|
solj
| nis: fwiw, upgrading to 1.6.2.3 in portage and remerging subeversion with USE=-dso (to disable the runtime module search) fixed it | 01:44 |
|
| thanks for the help | 01:44 |
|
nis
| solj: np | 01:44 |
|
joevandyk
| yeah, git svn dcommit still hangs | 01:44 |
|
| there a way to see debugging output? -v does nothing | 01:44 |
|
solj
| joevandyk: strace? | 01:45 |
|
joevandyk
| aha, lots of 4504s | 01:45 |
|
| 404s | 01:45 |
| ← bremner____ left | 01:46 |
| → eno__ joined | 01:46 |
|
joevandyk
| why would i get a 404? | 01:46 |
| → celling joined | 01:47 |
|
joevandyk
| strace: http://gist.github.com/raw/100227/082932a35d8d3e4ee3ab9bbc162591c2035c3ab6/gistfile1.txt | 01:47 |
|
nis
| joevandyk: are you sure your URL is good? | 01:47 |
|
joevandyk
| nis: i cloned from it | 01:47 |
|
| same repository url as i'm using for regular svn | 01:48 |
|
nis
| weird | 01:48 |
| → Zathrus joined | 01:48 |
|
deskin
| joevandyk: you could try looking at the network traffic with wireshark, it dissects webdav pretty well | 01:48 |
|
joevandyk
| there any reason that it would take a long time? | 01:49 |
| ← bremner___ left | 01:49 |
|
joevandyk
| this is a fairly large commit | 01:49 |
| ← Voight-Kampf left | 01:50 |
| ← jpld left | 01:50 |
| ← damainman856 left | 01:50 |
| → Predominant joined | 01:50 |
| → Student joined | 01:51 |
| ← solj left | 01:51 |
|
nis
| joevandyk: not much more than with svn, i guess | 01:51 |
|
| joevandyk: what's time consuming should mainly be the network traffic | 01:52 |
|
Zathrus
| from work I have a branch called "sita". I did a "git push home". It claims everything up to date. From home, however, git show home/sita doesn't show the latest commit that it shows me at work. | 01:52 |
|
sitaram
| sita? my name's diminutive? wow...! | 01:52 |
|
| (people call me sita) | 01:52 |
|
nis
| sitaram: :-) | 01:53 |
|
Zathrus
| sitaram: heh. www.sita.aero | 01:53 |
|
joevandyk
| could authentication be a problem? | 01:53 |
|
nis
| Zathrus: is the remote repo a bare repo? | 01:53 |
|
Zathrus
| nis: no, it was what I branched sita off of. | 01:53 |
|
sitaram
| Zathrus: if the branch sita did not exist at home, the push would not have sent it | 01:54 |
|
Zathrus
| ah. | 01:54 |
|
sitaram
| without an explicit refspec, push only sends matching branches | 01:54 |
|
nis
| joevandyk: possibly, don't know. isn't authentication information given in the URL? | 01:54 |
|
joevandyk
| hm, it's not | 01:54 |
|
| this is a http:// repo | 01:54 |
|
sitaram
| so you need (first time) "git push home sita:sita" or perhaps just "git push home sita" | 01:54 |
| → bremner_ joined | 01:54 |
| ← kaichen left | 01:56 |
| ← eno left | 01:57 |
|
nis
| joevandyk: did you ever succes with dcommit? | 01:57 |
|
Zathrus
| sitaram: yeah... I managed to break it. Sigh. I'd recently done a "git push home sita", thought that was wrong, and nuked the branch at home. | 01:58 |
|
joevandyk
| nis no | 01:58 |
|
sitaram
| Zathrus: break? | 01:58 |
|
joevandyk
| tried to update the svn repo url to http://user:pass@url, no luck | 01:58 |
|
deskin
| you don't want user and pass in the url | 01:58 |
| ← camwest left | 01:58 |
|
sitaram
| you can push again... unless you mean "yeah but that can only be tomorrow when I get to work", in which case I sympathise! | 01:58 |
|
nis
| joevandyk: does the strace still report 404 this way? | 01:58 |
| ← schacon left | 01:59 |
|
joevandyk
| nis: yes | 01:59 |
|
deskin
| git svn will use cached credentials from ~/.subversion/some-file-named-auth-or-something if you have them | 01:59 |
|
| or I think you can specify --user and get a password prompt; but I'd hope it doesn't hang if you don't | 01:59 |
|
Zathrus
| sitaram: yeah, I already fixed it. I'm VPN'd in (and then ssh'd back, ironically) | 02:00 |
|
deskin
| joevandyk: I definitely recommend using a network sniffer, you'll at least know if it's hanging or still working, even if you don't dig in to the packets | 02:01 |
| → faithfulgeek joined | 02:01 |
|
Zathrus
| sitaram: ok... so now from work git show home/sita shows the latest checkin. From home git show home/sita shows a stale one. | 02:01 |
| ← bremner_____ left | 02:01 |
|
Zathrus
| hrm... nvm | 02:01 |
|
| nope, thought I fixed it, but it's still showing stale info | 02:02 |
|
nis
| Zathrus: did you checkout? | 02:03 |
| → xenoterracide joined | 02:03 |
| → schacon joined | 02:04 |
|
nis
| (at home) | 02:04 |
| ← bremner_ left | 02:04 |
|
Zathrus
| nis: I have the master tree at home, as well as a sita tree. I did a git pull home from the sita branch; it updated. git show home/sita from the master branch shows the stale data. | 02:05 |
| → ke_ joined | 02:05 |
| eno__ → eno | 02:06 |
| ← poseidon left | 02:06 |
|
sitaram
| Zathrus: at home, there should not be a branch called home/sita | 02:06 |
|
| Zathrus: should be just sita | 02:07 |
|
Zathrus
| there's both | 02:07 |
|
sitaram
| because you pushed it | 02:07 |
|
Zathrus
| let me pastebin... | 02:07 |
|
sitaram
| Zathrus: also git branch -a -v if you don't mind | 02:07 |
|
Zathrus
| sure | 02:07 |
| ← spearce left | 02:09 |
|
sitaram
| Zathrus: also, I have to leave and go to work; will stay logged in and reconnect from there but that will be about 30-35 min later :( | 02:09 |
|
| 30-45* | 02:09 |
| → loincloth joined | 02:09 |
| → hax0r1337 joined | 02:10 |
|
Zathrus
| http://pastebin.centos.org/25826 | 02:11 |
| ← kalle_ left | 02:11 |
|
joevandyk
| hm, so i'm using wireshark and capturing traffic, but don't quite know what to do about what i'm seeing | 02:11 |
|
Zathrus
| sitaram: np | 02:11 |
| → qrush joined | 02:11 |
| ← loincloth left | 02:11 |
| → kalle_ joined | 02:11 |
|
deskin
| joevandyk: it depends how much webdav you know or want to learn. But the most important thing is that packets are continuing to be sent; if that's the case, git svn isn't hanging; infinite-looping, maybe, but not hanging | 02:12 |
|
joevandyk
| it's trying to find files on the remote server that don't exist yet (because I'm adding those files) | 02:12 |
| ← schacon left | 02:12 |
|
nis
| joevandyk: is one repo inside the other one? | 02:13 |
|
joevandyk
| what? | 02:13 |
|
nis
| Oops, nvr | 02:13 |
|
deskin
| then wait patiently for it | 02:13 |
| ← hax0r1337 left | 02:13 |
|
Zathrus
| nis: if that was to me -- no. | 02:14 |
|
nis
| Zathrus: yep, ok. | 02:14 |
| → javatexan1 joined | 02:14 |
|
nis
| Zathrus: which one is at home? | 02:14 |
| ← ke_ left | 02:15 |
| ← javatexan left | 02:15 |
|
Zathrus
| nis: those are actually both at home. But the "gittmp" directory is not part of the repo. | 02:16 |
|
joevandyk
| so it's usual behavior for it to check for the existance of every new file, one by one? | 02:16 |
| ← octagon left | 02:16 |
| → orbii joined | 02:17 |
|
joevandyk
| (there's a couple thousand new files) | 02:17 |
|
nis
| Zathrus: you're pushing from gittmp? | 02:17 |
|
deskin
| ask #svn, I dunno | 02:17 |
|
| but until it's git-svn hanging, we can't help you much | 02:18 |
| ← orbii left | 02:18 |
|
deskin
| remember, someone else could've ninja-updated all those files between your last commit from svn and your dcommit | 02:18 |
| → orbii joined | 02:18 |
|
Zathrus
| nis: no, it was pushed from work. Yes, I know, I'm doing wonky things. | 02:19 |
|
nis
| Zathrus: so, gittmp is up-to-date? | 02:20 |
|
joevandyk
| woohoo,it's creating new stuff now! | 02:20 |
|
| jesus | 02:20 |
|
deskin
| yay! | 02:20 |
|
joevandyk
| was not expecting it to take that long | 02:20 |
|
Zathrus
| nis: yes; I did a git pull home thinking that it would update the home/sita tracking branch | 02:20 |
|
| nis: and I needed it updated anyway | 02:21 |
|
nis
| Zathrus: i'm lost with your repo | 02:21 |
|
| Zathrus: why did you do a gittmp? | 02:21 |
| → [1]intripoon joined | 02:21 |
|
Zathrus
| heh | 02:21 |
| → harv_ joined | 02:23 |
|
nis
| Zathrus: is 0754b58 the good last wanted commit? | 02:23 |
|
| Zathrus: or 8912209? | 02:23 |
|
Zathrus
| 0754b58 | 02:24 |
|
nis
| hm, it's in both repos. | 02:24 |
|
Zathrus
| I'm just going to nuke the gittmp dir and re-pull entirely. It was initially created as a testing ground anyway, and I don't actually need it. | 02:24 |
| → cytrinox joined | 02:25 |
|
nis
| Zathrus: at least, it will clear my mind! :-) | 02:25 |
|
Zathrus
| the important ones (master, sita, origin/*) are sane. Speaking of which, how can I rename origin, since I named it that stupidly while being overly pedantic following the github guides | 02:26 |
|
joevandyk
| man, git is so much faster than csv. i'm still trying to dcommit my first patch | 02:26 |
|
Zathrus
| you mean cvs? | 02:26 |
|
nis
| Zathrus: in the .gitconfig file | 02:26 |
|
Zathrus
| nis: that's easy | 02:27 |
|
joevandyk
| oops, subversion, not csv or cvs | 02:27 |
|
Zathrus
| that's one heck of a typo :) | 02:27 |
|
joevandyk
| Zathrus: long day | 02:27 |
|
| but i'm glad i'm finally commiting my git work into the svn repo | 02:27 |
|
| so thanks all for your help | 02:27 |
|
Zathrus
| it's not in the .gitconfig file | 02:28 |
|
nis
| Oops, typo: .git/config | 02:28 |
| → Voight-Kampf joined | 02:29 |
|
Zathrus
| just the [remotes "origin"] line or the fetch = line as well? | 02:29 |
|
nis
| Zathrus: wait, | 02:29 |
| → Ramonski_ joined | 02:29 |
| ← Ramonski_ left | 02:30 |
|
nis
| Zathrus: just do git remote rename old new | 02:30 |
| ← parasti left | 02:30 |
|
Zathrus
| yeah, not in my version... must've been added after 1.5.5 | 02:31 |
|
nis
| Zathrus: ah. | 02:31 |
| → schacon joined | 02:31 |
|
nis
| Zathrus: can't you upgrade? | 02:33 |
|
Zathrus
| nis: not easily. | 02:33 |
|
nis
| well, save your repo and try that: | 02:34 |
|
| Zathrus: rename origin refs in the .git/config file (both refs) | 02:35 |
|
deskin
| joevandyk: git-svn is a lifesaver. Glad it's working for you now | 02:36 |
| ← schacon left | 02:36 |
|
nis
| Zathrus: and cd .git/refs/remotes ; mkdir origin newname | 02:36 |
|
| Zathrus: sorry | 02:37 |
|
Zathrus
| mv origin newname | 02:37 |
|
| I figured I'd need to do something like that | 02:37 |
|
nis
| Zathrus: yeah, I would do cp -a insted | 02:37 |
|
| instead* | 02:37 |
| ← cytrinox_ left | 02:37 |
| ← intripoon left | 02:39 |
| [1]intripoon → intripoon | 02:39 |
| → damainman856 joined | 02:39 |
| ← dreiss left | 02:40 |
| → neunon joined | 02:41 |
|
nis
| Zathrus: then you should do 'git remote show' ; 'git remote show newname' | 02:41 |
| → wsc joined | 02:42 |
| → reprore joined | 02:42 |
|
nis
| Zathrus: i'm still on your pastebin, it seems that the push just worked | 02:42 |
|
| Zathrus: the branch sita is up-to-date, right? | 02:43 |
|
Zathrus
| yes | 02:43 |
| ← yec left | 02:43 |
|
nis
| Zathrus: the push problem is resolved? | 02:44 |
| → yec joined | 02:44 |
|
Zathrus
| ok, I have no idea how I managed to do THIS. from /home/tom: git remote show home -- URL: /home/tom | 02:46 |
| → Tricon joined | 02:47 |
|
nis
| git remote show? | 02:47 |
| → hax0r1337 joined | 02:47 |
| ← ceej left | 02:47 |
|
nis
| is "home" in the list? | 02:48 |
|
| (i guess) | 02:48 |
| ← airtonix left | 02:48 |
|
nis
| Zathrus: could you check your .git/config? | 02:49 |
| → baetis-fly joined | 02:49 |
|
Zathrus
| http://pastebin.centos.org/25829 | 02:50 |
|
baetis-fly
| Question: I have a fork of a project on github. I branched, implemented a feature. In the mean time, my master got out of sync. Best way to get everything in sync? git checkout master - git pull upstream master - git checkout topic - git pull master? | 02:50 |
|
nis
| Zathrus: could you pastebin your .git/config? | 02:50 |
|
| baetis-fly: not exactly. | 02:51 |
|
| baetis-fly: what you probably want is | 02:51 |
| → tjafk1 joined | 02:51 |
|
nis
| baetis-fly: git chcekout master ; git pull upstream master ; git checkout topic ; git rebase master | 02:52 |
|
Zathrus
| nis: http://pastebin.centos.org/25832 -- fixing the origin idiocy right now | 02:52 |
|
baetis-fly
| nis: was thinking that, but I expect conflicts, still ok to rebase? | 02:52 |
|
nis
| baetis-fly: yes. you'll have to resolve the confilcts, btw. | 02:53 |
|
baetis-fly
| ok, but the rebase is still ok. got it. | 02:53 |
|
| many thanks. | 02:53 |
|
nis
| baetis-fly: if you just want to know how far you diverged from upstream, | 02:53 |
|
| baetis-fly: you could also do: | 02:54 |
|
sitaram
| Zathrus: I just finished looking at the backlog and I must say I'm a little confused too :) Are you putting your entire $HOME under git control by any chance? | 02:54 |
|
nis
| baetis-fly: git checkout topic ; git merge master ; (see if conflicts are hard) ; git reset --hard HEAD^ | 02:55 |
|
baetis-fly
| nis: thanks. going to backup and try the rebase. | 02:56 |
|
nis
| baetis-fly: np; have fun | 02:56 |
| → ben_h joined | 02:56 |
|
Zathrus
| sitaram: I'm putting my dotfiles under git control | 02:57 |
|
| e.g. -- .bashrc, .vimrc, etc | 02:57 |
|
nis
| Zathrus: are you using linux? | 02:57 |
|
Zathrus
| but .gitignore has /* | 02:57 |
|
| nis: yes | 02:57 |
|
sitaram
| I quickly found that got too confusing and irritating; it seems to be better to make a proper repo and symlink everything that needs to be revision control to $HOME | 02:57 |
|
| and make that symlink also automatic with a couple of lines in .bashrc | 02:58 |
|
nis
| Zathrus: the way i do that is by mount --bind into a dedicated repo. | 02:58 |
| ← Leemp left | 02:58 |
|
Zathrus
| nis: yeah, that's not an option. My work home dir is a NIS (NFS) and SMB mount | 02:58 |
|
| I can go down the symlink path if needed, but since one of my target platforms _is_ Windows (for vim) I'd rather not since NTFS symlinks are so hosed | 02:59 |
|
nis
| Zathrus: i don't think it's a problem for bind, really. | 02:59 |
| ← niki left | 03:00 |
|
Zathrus
| nis: btw, renaming origin worked fine | 03:00 |
|
nis
| Zathrus: Ah, windows may be a problem. :-) | 03:00 |
|
Zathrus
| isn't it always? :) | 03:00 |
|
nis
| Zathrus: don't you use cygwin? | 03:01 |
| → niki joined | 03:01 |
|
Zathrus
| yes, but I use Win32 native vim/gvim. msysgit is synching the .vimrc/.vim dir just fine | 03:01 |
|
sitaram
| Zathrus: yeah my method is not so good with windows; I agree | 03:01 |
|
Zathrus
| the gittmp dirs were created initially to get down the process for pulling a git repo into the home dir -- git init; git add remote foo; git fetch foo; git checkout -b bar foo/bar | 03:03 |
|
| in any case, it looks like the home/* branches are bogus and could be removed | 03:04 |
| ← KwikkSilva left | 03:04 |
|
Zathrus
| (from the master) | 03:04 |
| ← antoranz left | 03:04 |
|
nis
| can't say. :-/ | 03:05 |
| ← javatexan1 left | 03:06 |
| ← damainman856 left | 03:07 |
| ← orbii left | 03:07 |
|
Zathrus
| well, I had the backup already, so I did a git remote rm home and it seems ok | 03:07 |
| ← tjafk2 left | 03:07 |
|
Zathrus
| nis, sitaram: thanks for the help | 03:07 |
| ← mithro left | 03:07 |
|
nis
| Zathrus: np; good luck | 03:08 |
|
sitaram
| good luck! | 03:08 |
| → girishr joined | 03:09 |
| → sgrimm joined | 03:11 |
| ← Student left | 03:14 |
| → kaichen joined | 03:14 |
| → amahi joined | 03:20 |
|
baetis-fly
| nis: that worked like a charm. is it safe to do a commit --amend at this point if I haven't pushed to public yet? | 03:21 |
| ← qrush left | 03:21 |
|
nis
| baetis-fly: yes | 03:21 |
|
baetis-fly
| nis: what a strange time for whitespace warnings... | 03:21 |
| ← kaichen left | 03:21 |
| → dreiss joined | 03:22 |
| → ceej joined | 03:24 |
| → schacon joined | 03:24 |
| ← tag left | 03:25 |
| → tag_ joined | 03:25 |
|
nis
| baetis-fly: you can configure whitespace issues | 03:25 |
|
| baetis-fly: see man git-rebase ; man git-apply and man git-config | 03:25 |
|
Gitbot
| baetis-fly: the git-rebase manpage can be found at http://git.or.cz/man/git-rebase | 03:25 |
| ← schacon left | 03:26 |
| → spearce joined | 03:26 |
| ← hax0r1337 left | 03:26 |
| ← cpg left | 03:26 |
|
baetis-fly
| nis: you've been very helpful. many thanks. | 03:27 |
| amahi → cpg | 03:27 |
|
nis
| baetis-fly: Oh, np! | 03:27 |
| ← ceej left | 03:27 |
| → Alien_Freak joined | 03:30 |
| ← kuadrosx left | 03:30 |
|
Alien_Freak
| can a git repo contain a .git directory... will it cause confusion? | 03:30 |
|
max_ep
| Alien: You want a submodule | 03:31 |
|
Alien_Freak
| here's my setup right now..... | 03:31 |
| ← jerbear left | 03:31 |
|
Alien_Freak
| I have a ~/workspace and different directories under each one... each .git was made using a git svn clone of a particular directory.... now rather then keeping in sync with workspace/data workspace/foobar etc.. I'd like to have a .git in ~/workspace then I can just clone from a remote box | 03:32 |
|
| is submodule what I want? ... | 03:32 |
| → kuadrosx joined | 03:33 |
|
Ilari
| Alien_Freak: Every directory with .git is usually either ignored or submodule boundary point. | 03:33 |
|
max_ep
| Ok, a submodule will let you make a 'master' you can clone... | 03:34 |
| → Alinermedia joined | 03:34 |
|
max_ep
| However, they will still be separate repos | 03:34 |
|
| the 'master' will only contain a reference to them | 03:34 |
| → damainman856 joined | 03:35 |
|
max_ep
| The other option is to lose your history and create a new repo | 03:36 |
| ← spearce left | 03:36 |
| ← faithfulgeek left | 03:37 |
| → snowman856 joined | 03:38 |
| ← orafu left | 03:38 |
| → orafu joined | 03:38 |
| ← lois[pac] left | 03:39 |
|
Alien_Freak
| ooh.. that's I think exactly what I want | 03:39 |
|
| no.. I don't want to lose the history.. submodule sounds much better | 03:39 |
| → tag joined | 03:42 |
|
tag
| git svn clone can take forever on a large repository holy crap | 03:42 |
|
| it'd be sweet if it didn't download everything. | 03:42 |
| → tstellar joined | 03:42 |
|
tag
| or atleast, if I could ask it to explicitly | 03:43 |
|
deskin
| tag: then it wouldn't be git | 03:43 |
|
Ilari
| tag: Or if actually used pipelining... Pipelining with SVN is just bit too insane... | 03:43 |
|
deskin
| you can use -rm:n where m and n are integers to get a range of revisions, or omit one and the colon for just that revision | 03:43 |
|
| it's not a bad way to get up and running, and fetch the full history later and format-patch | am to move your work | 03:44 |
|
tag
| hey that's great | 03:46 |
| → schacon joined | 03:46 |
|
tstellar
| I have a patch file in my git repo, but when I make changes to it and generate a diff, git apply can't apply the changes, becuase it gets confused by the file's contents(since the file itself is a patch) any suggestions? | 03:47 |
| ← scarabx left | 03:48 |
|
nis
| tstellar: are you diff'ing a patch file with a regular file? | 03:49 |
|
Alien_Freak
| I think you can tell it to just pull head | 03:49 |
| ← zpoley left | 03:52 |
| → h0nk1 joined | 03:52 |
|
tstellar
| nis: I am creating a diff of a diff file (if that makes sense). | 03:52 |
| → amahi joined | 03:53 |
| → KwikkSilva joined | 03:53 |
|
h0nk1
| hi, is there any porcelain to rebase a tree of branches onto another branch? | 03:53 |
| → arohner joined | 03:53 |
|
deskin
| tstellar: patches are just files and git should be able to parse diffs of diffs fine; what's git apply complaining about? | 03:54 |
| → repror___ joined | 03:54 |
| ← reprore left | 03:54 |
| → mediogre joined | 03:54 |
| → nis_ joined | 03:55 |
| ← damainman856 left | 03:55 |
| → alanhaggai joined | 03:57 |
|
nis_
| (i've been disconnected, sorry) | 03:57 |
|
| tstellar: no, it doesn't make sense. | 03:58 |
|
tstellar
| Hold on, I think generated the patch backwards. | 03:58 |
| → ajonat joined | 03:58 |
|
deskin
| that'll do it | 03:58 |
|
h0nk1
| this is basically a stgit functionality, but I tend to do this quite often with interdependent topic branches I still work on | 03:58 |
|
deskin
| h0nk1: never used it myself, but topgit may have what you want | 03:59 |
|
| this sounds like its use case | 03:59 |
|
kold
| Hi all, I'd like to find the first instance that a line of code in a file first appeared in git....can anyone offer suggestions on how I'd do that other than a 'git log -p | grep 'code I am seeking' | 03:59 |
| ← ned left | 03:59 |
|
tstellar
| Yeah, I generated the patch in reverse, problem solved thanks. | 04:00 |
|
deskin
| kold: git blame | 04:00 |
|
| er man git-blame | 04:00 |
|
Gitbot
| deskin: the git-blame manpage can be found at http://git.or.cz/man/git-blame | 04:00 |
|
kold
| deskin: thanks | 04:00 |
|
h0nk1
| deskin: looks good, thanks | 04:00 |
|
kold
| wasn't aware that is what blame was for, but it makes sense now | 04:01 |
| → ashleyw joined | 04:02 |
| ← halfmouse left | 04:02 |
| ← repror___ left | 04:03 |
| → Zenopus_ joined | 04:03 |
| ← jrmuizel left | 04:04 |
|
deskin
| :) you can also spell 'blame' as 'annotate' but that's just more to type | 04:04 |
|
noclue
| is it possible to tell git to store work files in a different directory than the repo files are stored in? | 04:05 |
|
nis_
| noclue: no. what do you want to do? | 04:06 |
|
| deskin: how do you tell git-blame to find the first instance? | 04:06 |
|
noclue
| nis_: say i have a repo at /foo/.git and i want the work files stored in the foo directory instead of .git | 04:07 |
| → solar_ant joined | 04:07 |
| ← nis left | 04:07 |
| → jrmuizel joined | 04:07 |
| ← intripoon left | 04:07 |
|
nis_
| noclue: you may use a symlink | 04:07 |
|
deskin
| nis_: I'm not sure what you mean; the commit it shows is by definition the first instance; unless, you have the same 'line' in multiple places, that I'm not sure about | 04:07 |
|
| noclue: you can use a different working tree, man git IIRC tells you the environment variables to set | 04:08 |
| ← cpg left | 04:08 |
| → alester joined | 04:08 |
|
nis_
| deskin: what i understood from kold is that he wants to find the first instance of a content in the history range. | 04:09 |
|
noclue
| nis_,deskin: thanks. | 04:09 |
|
nis_
| noclue: np! | 04:09 |
| → highandwild joined | 04:09 |
|
highandwild
| hi all | 04:09 |
|
| I think I screwed up :) | 04:09 |
|
nis_
| deskin: which is not possible AFAIK. | 04:09 |
|
highandwild
| I have a refactor branch. I did: git-rebase -s ours master thinking ours referred to refactor, but it has refactored it to master !! how do I undo this ! | 04:10 |
|
sitaram
| kold: (sorry; just looked at the backlog) git gui blame is even nicer -- reasonably interactive :) | 04:10 |
| coney → allagator | 04:10 |
|
sitaram
| highandwild: did you start from a clean tree? | 04:10 |
|
kold
| ok, so I have blame telling me who authored the current line. the --since flag won't work since it will always show the latest....I need to know when a line first entered the file | 04:10 |
| ← kalle_ left | 04:10 |
|
highandwild
| sitaram: yes | 04:10 |
|
kold
| sitaram: thanks, looking at git gui now | 04:10 |
|
nis_
| highandwild: check your git reflog | 04:11 |
|
sitaram
| highandwild: then 'git reflog show HEAD@{now}' will show you the commit you want to reset to | 04:11 |
|
Fissure
| kold: git log -S | 04:11 |
|
| might be helpful as well | 04:11 |
| → kalle_ joined | 04:11 |
|
kold
| Fissure: thanks | 04:11 |
|
highandwild
| I see a long git reflog | 04:12 |
|
| 71 lines | 04:12 |
| → Evanlec joined | 04:12 |
|
deskin
| nis_: you mean, first instance of a line in some unspecified file? That I don't know; the range can be done like git blame from..to file | 04:13 |
|
Evanlec
| How can i merge in 1 file from another branch into my current branch? | 04:13 |
|
Fissure
| Evanlec: not easily; git deals with whole trees | 04:13 |
|
Evanlec
| Fissure: ah | 04:13 |
|
offby1
| Evanlec: just copy the file | 04:13 |
|
Evanlec
| Fissure: alright, #mercurial didnt have an answer for me either, i thot it could be done in git tho | 04:14 |
|
nis_
| deskin: but how do you find the first instance of the line? | 04:14 |
|
Fissure
| you can use git show to get the other version and use rcs merge... | 04:14 |
|
offby1
| betcha bzr won't have an answer either | 04:14 |
|
highandwild
| sitaram: the refactor was ahead of the master, and I think one or two commits are missing from it now | 04:14 |
|
Evanlec
| offby1: makes sense | 04:14 |
|
sitaram
| highandwild: page it, look from the top until you see something useful or pastebin it and I will helpyou interpret it | 04:14 |
|
Evanlec
| Fissure: simple is better ;) | 04:14 |
|
deskin
| nis_: git blame; that's the same question you asked before, what do you mean more specifically? | 04:15 |
|
highandwild
| sitaram: ok, suppose I want to reset to the last line which says: "3 months ago". Will I get my current branch back to the state it was ? | 04:15 |
| → ned joined | 04:15 |
|
nis_
| deskin: let's say you added a function new() at a point. | 04:16 |
| ← Zenopus left | 04:16 |
|
sitaram
| highandwild: if the line *above* that gives you a time that roughly corresponds to your incorrect rebase, yes | 04:16 |
| Zenopus_ → Zenopus | 04:16 |
|
nis_
| deskin: since you did a lot of commit. | 04:16 |
|
| deskin: how can git blame help you to find the commit where new() was added? | 04:17 |
|
highandwild
| sitaram: but then, that would be the first line which says "8 minutes ago" | 04:17 |
| ← KwikkSilva left | 04:17 |
|
Fissure
| nis_: well, git works on lines and has no knowledge of functions | 04:18 |
|
sitaram
| highandwild: if you have nothing between 8 minutes ago and 3 months ago, and it was 8 minutes ago that you did this, then yes -- you need to reset to that 3 months ago SHA | 04:18 |
|
Fissure
| blame will tell you when the line containing the function header was created, though | 04:18 |
|
nis_
| Fissure: thank you. I'm on an example. :-) | 04:18 |
|
sitaram
| though I assume you should sanity check the idea that nothing happened on this repo for the past 3 months :) | 04:18 |
|
deskin
| nis_: that's not the same as the first instance of a line :/ I'd probably use git log -u | grep | 04:18 |
|
highandwild
| sitaram: http://pastie.org/private/42velhfxlkk6i7flogvka | 04:19 |
|
sitaram
| looking | 04:19 |
|
deskin
| if new()'s prototype never changed, you can just look at the commit for that line in git blame | 04:19 |
|
nis_
| Fissure: and if you don't have header? | 04:19 |
|
| Fissure: deskin: you're both assuming it is C content, which may not be the case. | 04:20 |
|
sitaram
| highandwild: last sane point before most recent activity for master seems to be line 4 (SHA 579520) and for refactor, line 3 (a57bdf5) | 04:21 |
|
nis_
| Fissure: deskin: what i understood from kold is that he wants to find when "new()" was added the first time. | 04:21 |
|
highandwild
| sitaram: so I just do a git reset [ref] ? | 04:22 |
| ← jchris left | 04:22 |
| ← Alinermedia left | 04:22 |
| ← Kimmie left | 04:22 |
|
Fissure
| highandwild: you probably want --hard | 04:22 |
|
deskin
| no, I'm not; same applies to java, python, javascript; I guess perl is exempt | 04:22 |
|
nis_
| Fissure: deskin: AFAIK, there is no way to do that easily with git | 04:23 |
|
sitaram
| highandwild: I'd suggest adding '--hard' | 04:23 |
|
highandwild
| success ! | 04:23 |
|
| sitaram, Fissure: thanks | 04:23 |
|
deskin
| you are correct, for some definition of 'easily' | 04:23 |
|
sitaram
| you're welcome ,,, | 04:23 |
| ← noclue left | 04:23 |
| → damainman856 joined | 04:23 |
|
nis_
| deskin: since when python has headers? | 04:23 |
|
highandwild
| a related quesiton. How do I merge a single file from master into refactor ? | 04:23 |
|
deskin
| there is no well-defined way, certainly; you'll have to look at diffs or iterate on git blame somehow | 04:23 |
|
Fissure
| nis_: well, do you expect git to have intimate knowledge of all the intricacies of all programming languages? | 04:23 |
|
sitaram
| highandwild: let's not use the word merge -- that has a specific meaning in any VCS | 04:24 |
|
deskin
| prototype != header | 04:24 |
|
highandwild
| sitaram: ok ... should I just export the diff as a patch and apply it ? | 04:24 |
|
deskin
| when you define the function, you have to tell its arguments | 04:24 |
|
nis_
| Fissure: no, certainly not. | 04:24 |
|
sitaram
| highandwild: what do you actually want to do? take the version from master and put it on refactor? | 04:24 |
|
highandwild
| sitaram: actually, I really do want to rebase refactor upon master, and I want the resulting HEAD to be the HEAD of refactor | 04:24 |
|
Fissure
| nis_: then how could it give you a complete answer on whether a function was added? | 04:25 |
|
| it only knows about _lines_ | 04:25 |
|
highandwild
| sitaram: or even a merge, with the resulting head = refactor's HEAD | 04:25 |
|
sitaram
| highandwild: git checkout refactor ; git rebase master | 04:25 |
|
nis_
| Fissure: that's partially what i would answer to kold. :-) | 04:26 |
| → gwoo joined | 04:26 |
| → bentob0x joined | 04:26 |
|
Fissure
| nis_: claiming to be a proxy arguer doesn't excuse you from being wrong | 04:27 |
|
nis_
| Fissure: where? | 04:28 |
| ← Tricon left | 04:28 |
|
highandwild
| sitaram: sheesh :) | 04:29 |
| → moh joined | 04:30 |
| → intripoon joined | 04:30 |
| → bob2 joined | 04:31 |
|
nis_
| so, does git blame tell you who/when a line was _created_? | 04:31 |
| bob2 → Guest37195 | 04:32 |
|
deskin
| yes; it's the first commit where the line existed | 04:32 |
|
nis_
| deskin: find that commit is the goal. | 04:33 |
| ← solar_ant left | 04:34 |
| → hax0r1337 joined | 04:34 |
|
sitaram
| nis_: the gui version will let you follow the history of that line and surrounding lines | 04:35 |
|
Arrowmaster
| in which gui? | 04:35 |
|
sitaram
| git gui blame | 04:35 |
|
nis_
| sitaram: yeah, that's the best way i know | 04:35 |
| → aspotashev|eeepc joined | 04:36 |
| → reprore joined | 04:36 |
|
nis_
| sitaram: but if you have dozen or hundreds commits to forward, it's not pretty | 04:36 |
|
sitaram
| forward? | 04:37 |
|
| sitaram didn't understand... :( | 04:37 |
|
nis_
| (to follow) | 04:37 |
| → faithfulgeek joined | 04:38 |
|
| offby1 bets that "forward" is a common term with some other system | 04:38 |
|
offby1
| and we git-heads simply don't know what it means | 04:38 |
|
| probably something like "cherry-pick" | 04:38 |
| ← snowman856 left | 04:38 |
|
nis_
| offby1: no, it's my english knowledge | 04:39 |
|
sitaram
| as in "step through" perhaps...? | 04:39 |
|
nis_
| yeah | 04:39 |
| ← highandwild left | 04:39 |
|
sitaram
| yeah in that case I agree, but then you need "gitk --all -- filename" | 04:40 |
|
nis_
| it could help. | 04:40 |
| → solar_ant joined | 04:41 |
|
nis_
| but i'm still not convinced as the file history could go trough hundreds of commits | 04:41 |
|
| s/trough/through/ | 04:41 |
|
| parsing git log -p could be easier | 04:42 |
| ← neunon left | 04:42 |
|
deskin
| nis_: I'm not sure why you need to look through commits given git-blame; doing it iteratively is a fine approach if you want the non-trivial first appearance of a function | 04:44 |
|
nis_
| iteratively with git blame? | 04:45 |
|
| or git gui? | 04:45 |
|
sitaram
| nis_: if I have 100s of commits I'd use 'git log -S' | 04:46 |
|
deskin
| sure: run git blame. decide that the version of the function isn't what you want; so, pick the commit next to it, and do git blame <commit>~1 ... | 04:46 |
|
| rinse & repeat | 04:46 |
|
sitaram
| then -- if needed -- zero in on that hash using gitk, or "git gui blame SHA file" to start the gui blame at that hash | 04:46 |
|
deskin
| I don't use git gui so can't help you there | 04:46 |
|
sitaram
| deskin: you don't need to restart -- just click the links in git gui blame | 04:47 |
|
| deskin: don't == won't or can't ? (no offense; just curious) | 04:47 |
| ← Voight-Kampf left | 04:47 |
|
sitaram
| that rinse and repeat is what guis are made for :) | 04:48 |
|
deskin
| haven't found a need, and am comfortable with the command line, so more of the former; though won't is a little too strong | 04:48 |
|
| true that | 04:48 |
| ← arohner left | 04:49 |
|
sitaram
| deskin: try it once. Git's guis converted me from an exclusive command line jock to understanding that a GUI has a place (outside firefox and mplayer and gimp!) | 04:49 |
|
Fissure
| i'm unsure why you're including mplayer in that list... | 04:50 |
|
deskin
| I use gitk a reasonable bit | 04:50 |
|
| I guess I worry I'll end up needing a gui to do basic stuff, and then being sshed to a machine but unable to get any work done | 04:50 |
| → mithro joined | 04:51 |
| ← Guest37195 left | 04:52 |
|
sitaram
| Fissure: gmplayer? | 04:52 |
|
| sitaram nods to what deskin said about ssh | 04:52 |
|
sitaram
| Fissure: I see what you mean; I never use the mouse for gmplayer anyway :) | 04:53 |
| → jpld joined | 04:53 |
| ← wsc left | 04:56 |
| → reprore__ joined | 04:56 |
| ← solar_ant left | 04:58 |
| → xtc joined | 04:58 |
| → solar_ant joined | 04:58 |
| → jceb joined | 04:59 |
| → girishr_ joined | 04:59 |
| ← girishr left | 05:00 |
| ← reprore left | 05:02 |
|
Fissure
| what's wrong with ssh -X? | 05:03 |
|
nis_
| it's not very fast | 05:03 |
| → Pewpewarrows joined | 05:03 |
|
deskin
| not always an option; bandwidth, or maybe the remote lacks the gui/ x client code; or maybe I'm using cygwin o_O | 05:04 |
| ← petercoulton left | 05:04 |
| → naeu joined | 05:04 |
|
deskin
| ...or my handheld | 05:04 |
|
Fissure
| i opened gitk up over wireless earlier today :) | 05:05 |
| ← curvature left | 05:05 |
| ← solar_ant left | 05:05 |
| → curvature joined | 05:05 |
| harv_ → harv | 05:05 |
| ← naeu left | 05:05 |
|
deskin
| sure, but I'm not going to do it on my iPAQ; doesn't even have a proper x server | 05:05 |
| ← schacon left | 05:06 |
| ← nis_ left | 05:07 |
| ← jrmuizel left | 05:07 |
| ← xtc left | 05:09 |
| → reithi joined | 05:09 |
| ← gberdyshev left | 05:09 |
|
sitaram
| ssh -C -X works sort of ok but it isn't snappy enough -- and that "snappy" makes all the difference to usable GUI :( | 05:09 |
| → jrmuizel joined | 05:10 |
|
sitaram
| however, my stand is that stuff that is used rarely, and for which I know the CLI eqvt (if any) I don't mind using the GUI | 05:10 |
| → disappearedng joined | 05:10 |
| ← kalle_ left | 05:10 |
| → kalle_ joined | 05:10 |
|
disappearedng
| Hey how does git clone automatically check out the new patches | 05:11 |
|
RandalSchwartz
| git clone doesn't check anything new out | 05:11 |
|
| it just clones | 05:11 |
|
disappearedng
| like I have the original code, and someone made a commit, if I do a checkout will the diff be downloaded | 05:11 |
|
| hm | 05:11 |
|
RandalSchwartz
| you want git fetch once you ahve a repo | 05:11 |
|
sitaram
| you need a pull or a fetch | 05:11 |
|
RandalSchwartz
| don't mention the "p" word to newbies | 05:12 |
|
disappearedng
| I am n00b btw, how do I create a repo? | 05:12 |
|
RandalSchwartz
| they treat it as a shiny object | 05:12 |
|
| create a repo of your own? | 05:12 |
|
| or clone an existing repo? | 05:12 |
|
sitaram
| RandalSchwartz: :) | 05:12 |
|
disappearedng
| like hm.. http://eclim.sourceforge.net/guides/development.html\ | 05:12 |
|
RandalSchwartz
| git init, or git clone | 05:12 |
|
| those are your choices | 05:12 |
|
| are you the originator of the first tree? | 05:12 |
| → wezyde joined | 05:12 |
|
disappearedng
| I just want to download the new patches from the external repo | 05:13 |
|
| no | 05:13 |
| → xtc joined | 05:13 |
|
RandalSchwartz
| or are you coming into the middle of existing project? | 05:13 |
|
disappearedng
| yeah | 05:13 |
|
RandalSchwartz
| ahh. you want to clone the repo | 05:13 |
|
| not "new" patches | 05:13 |
|
| but all patches | 05:13 |
|
disappearedng
| I have cloned it yesterday | 05:13 |
|
RandalSchwartz
| clone builts a local .git that is a copy of the remote .git | 05:13 |
|
| AUgh | 05:13 |
|
| so you already have a repo | 05:13 |
|
| you want fetch then | 05:13 |
|
| not clone | 05:13 |
|
| RandalSchwartz sighs | 05:13 |
|
disappearedng
| ok | 05:13 |
|
| disappearedng apologises | 05:13 |
|
disappearedng
| i thought repo meant like SVN repository | 05:13 |
| ← mediogre left | 05:15 |
|
disappearedng
| git fetch git://eclim.git.sourceforge.net/gitroot/eclim that complains that it's not a git repository | 05:15 |
|
RandalSchwartz
| No you already cloned | 05:15 |
|
| the clone contains pointers to where it came from | 05:15 |
|
disappearedng
| ok | 05:15 |
|
| so | 05:16 |
|
| i actually have no idea what you are talking about btw | 05:16 |
| → priidu joined | 05:16 |
| ← travisjeffery left | 05:16 |
| ← jrmuizel left | 05:18 |
|
sitaram
| disappearedng: when you clone, you get a copy of the repository | 05:18 |
|
disappearedng
| ok | 05:18 |
|
sitaram
| within your copy, the parent from which you cloned is referenced as a "remote" called "origin" | 05:18 |
| ← wezyde left | 05:18 |
|
sitaram
| so you now do "git fetch origin" to get the latest changes from there | 05:19 |
|
disappearedng
| ok | 05:19 |
|
| I am getting a fatal: Not a git repository | 05:19 |
|
sitaram
| disappearedng: then you did not clone yet? or you're in the wrong directory | 05:20 |
|
deskin
| or the remote disappeared | 05:20 |
|
disappearedng
| ok I was in the parent directory | 05:20 |
|
sitaram
| that wont get "not a git repo..." | 05:20 |
|
deskin
| er, my bad | 05:20 |
|
disappearedng
| when I go into the source directory everything worked thx | 05:20 |
| ← xenoterracide left | 05:20 |
|
disappearedng
| so why git over SVN? | 05:20 |
|
sitaram
| you're welcome | 05:20 |
| xtc → xenoterracide | 05:20 |
|
| sitaram gracefully bows out and lets other take the stage; the magic S word came up | 05:21 |
|
disappearedng
| lol | 05:21 |
|
Ilari
| disappearedng: And after fetching changes, you presumably want to rebase your changes on top of upstream or merge your changes with upstream... | 05:22 |
| → alanhaggai_ joined | 05:22 |
|
disappearedng
| Ilari: and how do I do that/ | 05:22 |
|
RandalSchwartz
| I try not to run git over svn. :) | 05:22 |
| ← alanhaggai left | 05:22 |
| alanhaggai_ → alanhaggai | 05:23 |
|
disappearedng
| cause I realize that after I did a git fetch origin the code remained the same | 05:23 |
|
Ilari
| disappearedng: 'git rebase origin/master' (assuming its master of remote you are following) or 'git merge origin/master'. | 05:23 |
|
| disappearedng: Really depends on nature of changes you have and kind of access to upstream... | 05:24 |
| ← student0x77 left | 05:24 |
| ← baetis-fly left | 05:24 |
| → offbytwo joined | 05:24 |
| ← offbytwo left | 05:24 |
| ← ben_h left | 05:25 |
| ← giallu left | 05:27 |
| → Paf joined | 05:27 |
| → schacon joined | 05:28 |
| ← aziz left | 05:28 |
| → sea-gul1 joined | 05:31 |
| ← reithi left | 05:32 |
|
Ilari
| disappearedng: Basically, rebasing gives nicer history and is compatible with submitting changes as patches. But merging doesn't change commits on either side... | 05:33 |
| ← fujin left | 05:34 |
| → aisbaa joined | 05:36 |
| ← bambule left | 05:37 |
| → ReAn` joined | 05:37 |
| → Tuomas joined | 05:38 |
| → tim_jenssen joined | 05:38 |
| ← xenoterracide left | 05:39 |
| → xenoterracide joined | 05:41 |
| ← dedmajor left | 05:42 |
| → dedmajor joined | 05:42 |
| ← reprore__ left | 05:43 |
| AkumaStreak → AkumaStreak|zzz | 05:46 |
| ← schacon left | 05:47 |
| ← jpld left | 05:47 |
| ← AkumaStreak|zzz left | 05:47 |
| ← km2 left | 05:51 |
| ← cydork left | 05:55 |
| → reprore joined | 05:56 |
| ReAn` → ReAn | 05:56 |
| → mndoci joined | 05:58 |
| ← hax0r1337 left | 05:59 |
| → solar_ant joined | 06:01 |
| ← jceb left | 06:02 |
| ← reprore left | 06:02 |
| → johan-s joined | 06:06 |
| → cpg joined | 06:07 |
| ← amahi left | 06:08 |
| ← kalle_ left | 06:10 |
| → kalle_ joined | 06:11 |
| ← bcardarella left | 06:12 |
| ← robinr left | 06:13 |
| → alanhaggai_ joined | 06:13 |
| → ph^ joined | 06:15 |
| → fujin joined | 06:15 |
| ← aspotashev|eeepc left | 06:16 |
| ← altrux left | 06:16 |
| → aspotashev|eeepc joined | 06:17 |
| ← alanhaggai left | 06:17 |
| alanhaggai_ → alanhaggai | 06:17 |
| ← solar_ant left | 06:18 |
| → xtc joined | 06:19 |
| ← xenoterracide left | 06:19 |
| ← Paf left | 06:21 |
| ← xtc left | 06:21 |
| → xenoterracide joined | 06:22 |
| → solar_ant joined | 06:26 |
| ← solar_ant left | 06:27 |
| → srid` joined | 06:29 |
| → rittyan joined | 06:30 |
| ← deskin left | 06:30 |
| → deskin joined | 06:32 |
| → ben_h joined | 06:35 |
| ← mndoci left | 06:35 |
| → amahi joined | 06:36 |
| ← amahi left | 06:36 |
| → cilly joined | 06:36 |
| → amahi joined | 06:36 |
| → marc_kdab joined | 06:37 |
| → Grahack joined | 06:37 |
| → solar_ant joined | 06:37 |
| ← aisbaa left | 06:38 |
| ← stuffcorpse left | 06:38 |
| ← greyface left | 06:38 |
| ← ngng left | 06:38 |
| → ngng joined | 06:38 |
| ← xenoterracide left | 06:39 |
| → giallu joined | 06:40 |
| → xenoterracide joined | 06:40 |
| → stuffcorpse joined | 06:41 |
| → bobmcw_ joined | 06:43 |
| ← bobmcw left | 06:43 |
| → tal67 joined | 06:43 |
|
astrocub
| how do you keep track of submitted changes in git? | 06:44 |
| → Weaselweb joined | 06:44 |
|
voker57
| git log? | 06:45 |
|
tclineks
| astrocub: log? | 06:45 |
|
drizzd_
| astrocub: do you mean what got merged upstream and what didn't? | 06:45 |
|
astrocub
| yeah, everything | 06:46 |
| → WALoeIII joined | 06:47 |
| ← xenoterracide left | 06:47 |
| ← krawek_ left | 06:48 |
| → fridim_ joined | 06:48 |
| ← tstellar left | 06:49 |
| → xenoterracide joined | 06:49 |
| ← cpg left | 06:51 |
| amahi → cpg | 06:51 |
| → octagon joined | 06:51 |
| → khmarbaise joined | 07:00 |
| → aspotashev_ joined | 07:02 |
| ← johan-s left | 07:04 |
| ← fujin left | 07:09 |
| ← kalle_ left | 07:10 |
| ← tal67 left | 07:11 |
| → fujin joined | 07:12 |
| ← aspotashev|eeepc left | 07:13 |
| → Bennid joined | 07:13 |
| ← cilly left | 07:14 |
| ← GyrosGeier left | 07:15 |
| → kalle_ joined | 07:16 |
| ← deskin left | 07:16 |
| → meyering joined | 07:17 |
| → tal67 joined | 07:17 |
|
madduck
| in trying to import one remote namespace from one repo to another, e.g. copy refs/remotes/one/* to refs/remotes/two/*, I have hit the point where the refs do not point to valid objects | 07:21 |
|
| e.g. | 07:21 |
|
| error: refs/remotes/upstream/tags/release-0.9 does not point to a valid object! | 07:21 |
| jayallen → jayallen-afk | 07:22 |
|
madduck
| is there a good way for me to import all the objects from the first remote that I need into the current repo? | 07:22 |
|
| (this is a revived git-svn repo, thus the remote refs don't really exist, but I need them) | 07:22 |
| → tatsuyao joined | 07:23 |
| ← jkp left | 07:27 |
| → jkp joined | 07:27 |
| → drizzd joined | 07:29 |
| ← dedmajor left | 07:30 |
| → thumper joined | 07:32 |
| ← fujin left | 07:32 |
| ← srid` left | 07:33 |
| ← bentob0x left | 07:34 |
| → galderz joined | 07:36 |
| → aspotashev joined | 07:36 |
| → johan-s joined | 07:37 |
|
xenoterracide
| is there a way to say use auto-commit message | 07:38 |
| ← ToxicFrog left | 07:38 |
|
xenoterracide
| for example merges have a default message | 07:38 |
| → bentob0x joined | 07:38 |
|
xenoterracide
| and instead of actually viewing it is there a way to just commit | 07:38 |
|
| kind like I can do with -m but without it | 07:38 |
|
madduck
| you could use --no-commit and then commit with -m yourself | 07:39 |
| ← hgimenez left | 07:39 |
|
xenoterracide
| erm that makes no sense for what I want | 07:39 |
|
| I want it to just commit | 07:39 |
| → harinath joined | 07:39 |
|
xenoterracide
| I want to run commit without specifying a -m | 07:39 |
|
| on a merge | 07:39 |
|
| and just have it commit no editor | 07:40 |
| ← harinath left | 07:40 |
|
madduck
| sed editor to cat? | 07:40 |
|
| or somesuch | 07:40 |
|
xenoterracide
| nope | 07:41 |
|
| bad idea | 07:41 |
| → ashleyw_ joined | 07:41 |
|
xenoterracide
| since it's only 1 merge that I have to do all the time that I want this to do | 07:41 |
| → mbuf joined | 07:41 |
| ← ashleyw left | 07:43 |
| ← damainman856 left | 07:45 |
| → tatsuyao_ joined | 07:47 |
| → zpoley joined | 07:47 |
| ← Predominant left | 07:50 |
| ← tatsuyao_ left | 07:51 |
|
Grahack
| hi all, suppose I'd like to contribute to a project. There is the SourceForge git repo, my local git repo where I work, and a hosted git repo from where I want the maintainer (or anyone) to track my changes. So I clone the SF repo to my laptop to create my local repo but how should I create the hosted one ? cloning from SF or my laptop ? | 07:52 |
| → jmesnil joined | 07:53 |
| → chalky joined | 07:53 |
|
xenoterracide
| since when did SF get git? | 07:53 |
|
| I must have missed that | 07:53 |
|
sitaram
| both should be the same, assuming your work is in a named branch that is unique to you. You can clone from SF and push just your branch too | 07:53 |
|
| xenoterracide: about 3 weeks ago :) | 07:53 |
|
| maybe a tad more | 07:53 |
|
xenoterracide
| sitaram: huh | 07:53 |
|
| I missed that news | 07:53 |
|
Grahack
| thanks sitaram | 07:53 |
|
sitaram
| didn't make waves; I can understand the reluctance of people who own SVN not to publicise it too much that they now support git :) | 07:54 |
|
xenoterracide
| now google needs to get it ;) | 07:54 |
| → harinath joined | 07:54 |
| ← harinath left | 07:54 |
|
sitaram
| I would have thought that would happen first (a) they dont have a vested interest in a competing legacy product and (b) they'd want to unseat SF | 07:55 |
|
| butit didn't | 07:55 |
| ← porcnick left | 07:55 |
|
voker57
| they support hg and bzr too now afaik | 07:55 |
| ← kuadrosx left | 07:56 |
|
xenoterracide
| nice | 07:56 |
|
| anyone know what the max upload (outside of repos) is for SF? | 07:57 |
| ← drizzd_ left | 07:59 |
| → fujin joined | 07:59 |
|
Grahack
| anyone familiar with gitosis here ? | 08:00 |
| ← tatsuyao left | 08:00 |
| → jfkw joined | 08:01 |
|
Grahack
| I was wondering about the purpose to create a fake user: security ? | 08:01 |
| ← darrob left | 08:01 |
| → Predominant joined | 08:01 |
| → shruggar joined | 08:02 |
| → Paf joined | 08:04 |
| ← thraxil left | 08:05 |
| ← stuffcorpse left | 08:05 |
| → thraxil joined | 08:05 |
| → AlexB joined | 08:05 |
| → Leonidas joined | 08:05 |
| → Helios joined | 08:05 |
| → Dreamer3 joined | 08:05 |
| → nick_h[litage] joined | 08:05 |
| → ArjenL joined | 08:05 |
| → osfameron joined | 08:05 |
| → BooK joined | 08:05 |
| → orospakr joined | 08:05 |
| → stuffcorpse joined | 08:05 |
| → HG` joined | 08:05 |
| → darrob joined | 08:06 |
|
sitaram
| what fake user? | 08:07 |
|
| oh the "git" one? | 08:08 |
|
| well it removes the need to create actual users on the system for all devs, which is a good thing, so yes: security | 08:08 |
| ← kalle_ left | 08:10 |
| → kalle_ joined | 08:11 |
| → iws joined | 08:11 |
| → Fullmoon joined | 08:13 |
| ← ned left | 08:13 |
| ← orafu left | 08:13 |
| → orafu joined | 08:13 |
| → mikl joined | 08:16 |
| ← tag left | 08:17 |
| ← jkp left | 08:20 |
| → jkp joined | 08:20 |
| → GyrosGeier joined | 08:20 |
| → naeu joined | 08:22 |
|
Grahack
| sitaram: because make gitosis use our user would work too I guess ? | 08:23 |
| → lucsky joined | 08:23 |
| → Chaser joined | 08:27 |
| → egoist joined | 08:27 |
|
Ilari
| Grahack: Making gitosis share account with something else isn't recommended. | 08:29 |
|
martins
| touch vendor/gems/see_me; git status # see_me and the entire gems directory is invisible. How can I make git keep track of changes in this directory? git add vendor # returns nothing. | 08:29 |
| → ned joined | 08:29 |
| → plasticine joined | 08:34 |
| → R_Dday joined | 08:35 |
| ← R_Dday left | 08:35 |
| → ceyusa joined | 08:35 |
| → R_Dday joined | 08:35 |
| ← R_Dday left | 08:35 |
| → samjam joined | 08:37 |
| → jkp_ joined | 08:39 |
| ← jkp left | 08:39 |
| ← mithro left | 08:40 |
| → Tricon joined | 08:43 |
| ← egoist left | 08:44 |
| → tono joined | 08:45 |
| → sejo joined | 08:45 |
| → dedmajor joined | 08:47 |
| ← agenteo left | 08:48 |
| ← Grahack left | 08:49 |
|
sitaram
| is vendor or vendor/gems in .gitignore or similar? otherwise git status should point to one of those things as "new, untracked" | 08:51 |
|
martins
| sitaram: no, I´ve checked! :) | 08:51 |
|
| what´s similar, btw? | 08:51 |
|
sitaram
| .git/info/exclude | 08:51 |
| → ceyusa_ joined | 08:52 |
| → botanicus joined | 08:52 |
|
sitaram
| also rememebr .gitignore can be in any subdrectory also -- you have to check each directory in the chain | 08:52 |
| → nis joined | 08:54 |
| ← ashleyw_ left | 08:54 |
| ← ceyusa left | 08:55 |
| ← octagon left | 08:57 |
| ← ajonat left | 08:58 |
| → simmel1 joined | 08:58 |
|
simmel1
| hi, i got the following error from git, do i need to worry? | 08:59 |
|
| error: Object 4b5127df968616dee2f4775d795198878ef1638b is a commit, not a tag | 08:59 |
|
| fatal: Invalid symmetric difference expression 3fa8749e584b55f1180411ab1b51117190bac1e5...4b5127df968616dee2f4775d795198878ef1638b | 08:59 |
|
martins
| find . -name .gitignore -exec rm {} \; # And vendor/gems still won´t show up | 09:00 |
|
sitaram
| simmel1: what were you doing to trigger it? (Not that I know what this is, I don't...) | 09:01 |
| → MisterN joined | 09:02 |
|
sitaram
| martins: make sure you're in the right directory and not in some subdirectory elsewhere :) (can happen!) | 09:02 |
| sdiz → sdiz-afk | 09:03 |
| → solar_ant_ joined | 09:04 |
| ← solar_ant left | 09:04 |
|
martins
| sitaram: hehe, I´ll try a few more things before I do an rm -rf vendors && mkdir -p !$/{gems,vendor} # and hopes I can rebuild it. :) | 09:04 |
|
simmel1
| sitaram: i just recognized i setup a tracking branch on a tag ... story goes like this: | 09:05 |
|
martins
| mkdir -p !$/{gems,plugins} | 09:05 |
|
simmel1
| git branch --track foo-2.6.27-patchesx v2.6.27 | 09:05 |
|
| git checkout foo-2.6.27-patchesx | 09:05 |
|
| maybe thats the problem | 09:06 |
| → aser joined | 09:07 |
|
aser
| hi, is there a way to see a diff between a commit and current working directory *including* untracked files? | 09:07 |
| → SRabbelier joined | 09:08 |
|
wereHamster
| aser: git-add the untracked files :) | 09:08 |
|
nis
| aser: untracked files are not known by the git repo | 09:09 |
| ← bobesponja left | 09:09 |
|
aser
| wereHamster: well, I didn't really want to add them | 09:10 |
|
| for example I wanted to sync my working dir with a commit, but see what will happen if I do a reset | 09:10 |
| ← kalle_ left | 09:10 |
|
wereHamster
| aser: why would you want to see the diff then? | 09:10 |
| → kalle_ joined | 09:10 |
|
aser
| I guess it would show the conflicts anyway, but... | 09:11 |
| ← Bennid left | 09:11 |
| ← solar_ant_ left | 09:11 |
| → solar_ant joined | 09:11 |
|
aser
| would be nice to have git-reset --dry-run | 09:12 |
| ← mikl left | 09:12 |
|
wereHamster
| you can always reset and then use the reflog to go back.. | 09:12 |
|
aser
| and another thing... reset wouldn't really delete anything, would it? | 09:13 |
|
wereHamster
| I believe it would refuse to overwrite untracked files, but I'm not sure | 09:13 |
|
| and tracked files you can always recover | 09:13 |
|
sitaram
| aser: git reset does nothing to untracked files -- that is git clean | 09:15 |
|
| and a diff for untracked files does not make sense because there is "before" image (or is it /dev/null) | 09:15 |
|
aser
| sitaram: "before" image? | 09:16 |
|
sitaram
| yeah, a diff is .. well.. a difference between "before" and "after" isn't it? | 09:17 |
|
aser
| sitaram: how about a diff between a path and a tree? would it not be possible? | 09:17 |
|
| a tree object to be precise | 09:17 |
|
sitaram
| sure... | 09:17 |
|
| I think so (lemme check) | 09:17 |
|
| yeah works fine | 09:19 |
|
aser
| sitaram: touch file; echo "x" > file; git diff HEAD..<what_here>? | 09:22 |
|
sitaram
| aser: oh that... I thought you meant a tracked directory/files | 09:22 |
|
| that won't show, I think | 09:23 |
|
aser
| hm, what if I extracted a tree object from a commit object and tried that... | 09:23 |
|
sitaram
| aser: as long as the actual file you want to see in the diff is *untracked*, nothing will work | 09:24 |
|
aser
| sitaram: ah ok... oh well, I'll have to live with that. thank you! | 09:24 |
|
| and thank you wereHamster and nis | 09:24 |
|
sitaram
| because the left side of the diff is... nothing. Zilch. Nada. Zip. Shunyam. Sunna (I snuck in a couple of Indian words there ;-) | 09:24 |
| → gilimanjaro joined | 09:24 |
|
aser
| hehe | 09:24 |
| → dwt joined | 09:27 |
| ← Octalot left | 09:27 |
|
dwt
| Hey there, I've fuddled my local history a bit, and am now wondering how to get out of that situation. Specifically I have a local commit that I want to get rid of, but I also have remote changes that I accidentally pulled. So now I'm in a bad merge and git won't let me do a git revert HEAD^ - which should be the right command from what I understand from the manual. | 09:28 |
|
| So... what to do? | 09:28 |
| → mnemo joined | 09:28 |
|
mnemo
| I would like to make git always use the --color parameter for "git diff".... my first attempt was to define a bash alias as alias 'git diff'='git diff --color' but apparently aliases cant contain spaces... any other way to do this? | 09:29 |
|
aser
| dwt: git revert would create a merge... since you are in the middle of one... | 09:30 |
|
| mnemo: ~/.gitconfig | 09:30 |
|
| mnemo: and use [color] options | 09:30 |
|
dwt
| damn. Is there something like "git undo the last two steps" I'd like that | 09:30 |
|
mnemo
| aser: ah.. thanks | 09:30 |
|
aser
| mnemo: man git-config will give you the details | 09:31 |
|
Gitbot
| mnemo: the git-config manpage can be found at http://git.or.cz/man/git-config | 09:31 |
|
mnemo
| right found it | 09:32 |
|
sitaram
| mnemo: man git-config and look for color.ui | 09:32 |
|
Gitbot
| mnemo: the git-config manpage can be found at http://git.or.cz/man/git-config | 09:32 |
|
sitaram
| there's a whole bunch of color options, but color.ui is like a catchall, I think | 09:32 |
|
simmel1
| so i think i got it so far | 09:32 |
|
| git allows to create tracking branches on lightweight and annotated branches | 09:33 |
|
| arrr tags i meant | 09:33 |
|
| git allows to create tracking branches on lightweight and annotated tags | 09:33 |
|
| but when you checkout such a branch on an annotated tag, you get something like | 09:34 |
|
| fatal: Invalid symmetric difference expression efc968d450e013049a662d22727cf132618dcb2f...e73a9936a2c2bd8f8f408417ac7af7c94043857b | 09:35 |
| → FreakGuard joined | 09:35 |
| ← deavid left | 09:35 |
| ← alanhaggai left | 09:36 |
|
simmel1
| efc... is the commit, e73... is the tag | 09:36 |
| → alanhaggai joined | 09:36 |
|
simmel1
| you also get error: Object e73a9936a2c2bd8f8f408417ac7af7c94043857b is a commit, not a tag | 09:37 |
|
| but | 09:37 |
|
| git-cat-file -t e73a9936a2c2bd8f8f408417ac7af7c94043857b | 09:37 |
| → botanicus_ joined | 09:38 |
|
Grum
| dwt: just as a quick sidenote, you know git revert doesnt 'undo' a commit but simply creates a new one with the 'negative patch applied' ? | 09:38 |
|
aser
| dwt: may you want to git-reset? | 09:38 |
|
simmel1
| any ideas? not that it was a good idea anyways to track a tag, just the error messages are confusing | 09:38 |
| ← NoirSoldats left | 09:38 |
|
dwt
| aser: possibly | 09:38 |
|
| I think I managed to get out of the merge with a git reset --hard HEAD | 09:39 |
| ← cedricv left | 09:39 |
|
dwt
| so I probably need to go back with git reset --hard HEAD^^ (because I've now created the undo commit) | 09:39 |
|
aser
| dwt: yes, as long as you don't care about the current state of your working dir, reset is your friend | 09:39 |
|
dwt
| well, I do | 09:39 |
|
| but there's nothing in there that can't be readded with two minutes of work | 09:39 |
|
| I think I've got it | 09:40 |
|
| thanks | 09:40 |
| ← botanicus left | 09:42 |
| → cedricv joined | 09:42 |
| → yawn joined | 09:43 |
|
aser
| dwt: if I were you, I'd create a backup of the directory, do a reset and recopy manually... :) | 09:43 |
| ← cedricv left | 09:43 |
|
dwt
| Well, too late for that now | 09:44 |
| → cedricv joined | 09:44 |
|
dwt
| :) | 09:44 |
| ← Paf left | 09:44 |
|
dwt
| Well, still learning to cope with git. It's got quite a twisted sense of humor sometimes. :/ | 09:44 |
|
yawn
| i merged a big piece of development (A) into an unrelated repository (B). now i have a couple of conflicts and would like to resolve them in favor of (A). do i need to do this manually with mergetool? | 09:45 |
|
sitaram
| simmel1: this looks like something serious enough to warrant a mail to the list; it's not even clear to me whether tracking a tag is reasonable (going by the usual meaning of a tag as being a fixed point) | 09:45 |
| → naeu_ joined | 09:46 |
| ← naeu left | 09:47 |
| sejo → masterhumper | 09:48 |
| masterhumper → OO11 | 09:49 |
| ← ben_h left | 09:50 |
| → solydzajs joined | 09:52 |
| → ntoll joined | 09:56 |
| ← orafu left | 09:57 |
|
simmel1
| sitaram, i have written a mail to the list | 10:00 |
|
sitaram
| cool! | 10:01 |
| → orafu joined | 10:02 |
| ← MisterN left | 10:02 |
| ← orafu left | 10:03 |
| → Silvurial[Ag] joined | 10:06 |
| ← celling left | 10:06 |
| ← aspotashev left | 10:06 |
| ← simmel1 left | 10:09 |
| jmesnil → jmesnil_away | 10:10 |
|
yawn
| in other words - i would like the opposite of "ours" | 10:10 |
|
| as pull strategy | 10:10 |
| ← kalle_ left | 10:10 |
| → kalle_ joined | 10:11 |
| → bratsche_ joined | 10:13 |
|
sitaram
| yawn: you can do something like 'git checkout --theirs -- filename' for each such file | 10:14 |
|
Ilari
| yawn: There isn't one. You need to create temp branch, merge your branch with -s ours and then merge the temp branch with default merge strategy | 10:15 |
|
yawn
| sitaram: thanks! right now i'm trying to use "ours" on the other end and manually update the config on that | 10:15 |
| → majeru joined | 10:16 |
|
yawn
| which is not so nice ... bad order of commits :-) | 10:16 |
|
| i'll try your suggestions | 10:16 |
|
majeru
| hello, is there a way to join two svn repos in a single git repo, and be able to keep in sync with them? | 10:16 |
|
| and also track local changes to them | 10:17 |
|
gebi
| yes | 10:18 |
|
| majeru: man git-svn (--prefix) | 10:19 |
|
Gitbot
| majeru: the git-svn manpage can be found at http://git.or.cz/man/git-svn | 10:19 |
|
majeru
| thanks | 10:19 |
|
| i have read the manual page, but it's not that explicitly suited for my use case, or maybe I'm not understanding it good enough | 10:21 |
|
yawn
| llari: can you elaborate? i need to create a temp branch where? | 10:21 |
| ← nis left | 10:23 |
| aser → g3d | 10:24 |
| ← mnemo left | 10:28 |
|
majeru
| gebi: the repos are different, and have nothing in common | 10:30 |
|
yawn
| basically i am just interested in attaching the old history to the new repository w/o checking out anything | 10:31 |
|
majeru
| as i can see it, --prefix seems to be for similar repos | 10:31 |
|
hgb
| Hi. I have a git repo using git-svn. It's in ~/src/dev/git, as a full clone thingy, with repo and working copy. I use several branches in there, routinely doing 'git svn rebase' to pick up changes from svn. | 10:31 |
|
| However, when I work for a while in a branch, the other branches, including 'master' gets hopelessly out of date (we have a very active svn repo). | 10:32 |
|
| What I normally do is 'git checkout master; git svn rebase; git checkout <my current branch>' | 10:32 |
|
| The problem with this is that thousands of files are written to, although nothing is really changed (after the second checkout). | 10:33 |
|
| So I'd like to have a working copy of master, where I can do git svn rebase and no one notices. | 10:33 |
|
| And then next time I do git checkout master in ~/src/dev/git, it'll be fairly up-to-date. | 10:33 |
|
| Is that a simple matter? | 10:33 |
| → Grahack joined | 10:33 |
| → j416 joined | 10:34 |
| → diadema joined | 10:34 |
| sdiz-afk → sdiz | 10:39 |
| → ProperNoun joined | 10:43 |
| → KwikkSilva joined | 10:43 |
| ← Silvurial[Ag] left | 10:44 |
| → aspotashev joined | 10:45 |
| ← HG` left | 10:48 |
| ← aspotashev left | 10:51 |
| → hobodave joined | 10:51 |
|
hobodave
| hey guys | 10:51 |
| ← mtl left | 10:52 |
| → aspotashev joined | 10:52 |
| → jschoolcraft joined | 10:53 |
| ← seangrove_ left | 10:53 |
| → dwave joined | 10:53 |
| → tp1 joined | 10:54 |
|
jschoolcraft
| Not sure if this is the appropriate channel, if not please point me in the right direction. Has anyone set up atom/rss feeds for commit messages from gitosis hosted repos? | 10:54 |
| → Amenthes joined | 10:56 |
| → girishr joined | 10:56 |
|
Amenthes
| Hi, I have a git repository which gives me a "fatal: Out of memory, malloc failed" when gc-ing. What solutions do I have for this problem? I'm on Windows with the latest msysgit version. | 10:57 |
| ← CardinalNumber left | 10:59 |
| → grahal joined | 10:59 |
| → cemerick joined | 11:02 |
|
Ilari
| Amenthes: Large files in repo? | 11:03 |
| → knitt1 joined | 11:03 |
| ← tal67 left | 11:04 |
|
Amenthes
| Ilari, nope. The largest seems to be a git file which has 529 MB. Does it matter that I seldom do gc? | 11:07 |
|
Ilari
| Amenthes: .pack file? | 11:07 |
|
Amenthes
| Ilari, no. It has no extension. The second one, which is indeed a pack file has 75 MB. | 11:08 |
| → simmelpp joined | 11:09 |
|
Ilari
| Amenthes: What's the name of the 529MB file? | 11:09 |
|
Amenthes
| Ilari, it's a hash. Aparently from a previous commit. It's in the objects directory | 11:10 |
|
gebi
| majeru: doesn't matter, to add a second svn repo to a current one eg.: git svn -s --prefix foo/ -Rfoo http://svn.foo.org; git svn fetch foo | 11:10 |
| ← girishr_ left | 11:10 |
| ← kalle_ left | 11:10 |
| → kalle_ joined | 11:11 |
| ← solar_ant left | 11:11 |
| ← voker57 left | 11:12 |
| ← KwikkSilva left | 11:15 |
| ← jschoolcraft left | 11:15 |
| ← cpg left | 11:18 |
| → solar_ant joined | 11:19 |
| → egoist joined | 11:20 |
| ← dreiss left | 11:20 |
|
Ilari
| Amenthes: 38 hex digit named file inside objects/<2 hex digits>'? | 11:20 |
| → CardinalNumber joined | 11:20 |
|
Amenthes
| Ilari, exactly | 11:20 |
| → KwikkSilva joined | 11:21 |
| ← davidad left | 11:22 |
|
sitaram
| that's an actual object; 529MB zlib compressed! wow... | 11:23 |
|
Ilari
| Amenthes: Sounds like you added some large file... | 11:23 |
|
sitaram
| ISTR that git requires approx 2.5x the largest file in RAM to pack...? | 11:23 |
| ← Gitzilla left | 11:24 |
|
Amenthes
| How do I see the commit message for that hash? | 11:24 |
|
wereHamster
| Amenthes: that hash doesn't have to be a commit. See with: git cat-file -t $hash | 11:25 |
| → Gitzilla joined | 11:25 |
|
sitaram
| wereHamster: it won't be a commit! it'll be a file | 11:26 |
|
| (that big, a commit? naah!) | 11:26 |
|
wereHamster
| sitaram: pipe /dev/random into git-commit and voila, a 500MB commit message :) | 11:26 |
| ← egoist left | 11:27 |
|
Amenthes
| What if git cat-file -t $hash gives me "fatal: Not a valid object name 51e2cf335373ebc0a2629a8cc8d17fb3705d0a" ? | 11:28 |
| ← giallu left | 11:28 |
|
wereHamster
| Amenthes: prepend the <2 hex digits> in front of the filename | 11:28 |
|
majeru
| gebi: i want to have them in different subdirectories, if possible | 11:30 |
|
Amenthes
| wereHamster, thanks. It says blob. Now I should see what large file I commited... | 11:30 |
|
sitaram
| Amenthes: git rev-list --all | while read r; do git ls-tree -r -t $r | grep d74c && echo $r; done | 11:31 |
|
| where d74c is the hash I am looking for -- change it to the first 4 characters or so of yours | 11:31 |
|
gebi
| majeru: then why not just make 2 repositories? | 11:31 |
|
sitaram
| then gitk <the result SHA> (or one of them) | 11:31 |
|
majeru
| gebi: well, i'd like to unify them as sub-modules | 11:32 |
|
| nad to be able to commit stuff to both of them, while keeping track of their each upstream | 11:32 |
|
| and* | 11:32 |
|
gebi
| then make them git submodules | 11:32 |
| ← ProperNoun left | 11:33 |
| → Octalot joined | 11:33 |
| → aziz joined | 11:33 |
| → ben_h joined | 11:34 |
|
fdv
| hgb: or, if possible, you could rebase the master branch without checking it out? but I guess that's not really possible | 11:35 |
|
hgb
| fdv: That would be ideal, but I don't think it's possible. | 11:36 |
|
sitaram
| wereHamster: just saw your comment... hehe :) | 11:36 |
|
fdv
| does anybody know it that's possible (to rebase a non-checked-out branch)? | 11:37 |
|
wereHamster
| nope, not really possible | 11:38 |
|
hgb
| wereHamster: Do you know about my proposed scenario (above)? Can I make a working copy of a certain branch from a repo, rebase in it, and then next time I checkout in the other wc (which is located with the repo), the branch is uptodate? | 11:39 |
|
wereHamster
| don't know, sorry | 11:41 |
| jmesnil_away → jmesnil | 11:41 |
|
sitaram
| Amenthes: did you run the command I gave you? | 11:42 |
|
Amenthes
| sitara, yes. No ouput | 11:44 |
|
| I meant output | 11:44 |
|
sitaram
| did you remember to substitute some 4 consecutive characters of the 40-digit filename in place of my d74c? | 11:45 |
|
| if so, I would (a) take a backup of the whole thing and then (b) remove that file and try "git fsck --full" | 11:46 |
|
Amenthes
| sitaram, :) Of course. I used the hash exactly as in the git cat-file command from above. | 11:46 |
|
sitaram
| :) no offense -- we all get tired sometimes that's all | 11:46 |
|
Amenthes
| sitaram, it's ok :) | 11:47 |
|
| sitaram, is there a (b) plan? | 11:47 |
| → cannonball joined | 11:47 |
|
bentob0x
| question: repository1 => merged from repository2:branch_1, then repository2 => merge self:branch_1 into self:master, then delete branch_1 => can I safely pull repository2:master into repository1? | 11:47 |
|
Amenthes
| sorry, now I was tired :P | 11:47 |
| → tal67 joined | 11:47 |
|
sitaram
| the (b) plan would be similar. Backup the *rest* of the repo, just *move* this file out of the way (some other name, in the higher level directory -- a "move" on the same "drive" should be instantaneous) and then try the fsck | 11:48 |
|
Amenthes
| sitaram, thanks. I'll try these and tell you what happened. | 11:50 |
| ← alester left | 11:52 |
|
sitaram
| the other thing you can do, is something like this: git show large-40digit-hash | head > junk; then take the junk file to a Unix machine and run "file" on it to see what it is (or just open it in wordpad or something). Might give you an idea what it is... | 11:52 |
|
bremner
| Is there an easy way to configure git web to show "clone this" url's for http:// and git:// for each project | 11:53 |
|
gebi
| bremner: for git:// it's @git_base_url_list = "git://foo.org" in gitweb.conf | 11:55 |
| → MisterN joined | 11:55 |
| → d0k joined | 11:57 |
| → qrush joined | 11:58 |
|
bremner
| hmm. ancient gitweb here, I wonder if that is a problem | 12:00 |
| ← esparkman left | 12:00 |
| → qrush_ joined | 12:01 |
| → la_mer joined | 12:01 |
|
bremner
| added git_base_url_list=("git://pivot.cs.unb.ca/git"); but no url shows up. I don't need to restart anything, right, its just CGI? | 12:01 |
| ← qrush left | 12:02 |
|
| bremner decides to upgrade gitweb, just for the hell of it | 12:03 |
| → fluxusps joined | 12:04 |
|
sitaram
| bremner: the README says something about cloen urls; sorry I'm not in a position to test etc or say anything more useful | 12:05 |
| → Pe3k joined | 12:06 |
| ← fluxusps left | 12:07 |
| → bcardarella joined | 12:07 |
|
Pe3k
| how to show single file history dialog window in gitextensions? dialog is described in User Manual, but can't find where to start it... | 12:09 |
| ← ben_h left | 12:09 |
| → ben_h joined | 12:09 |
| ← hummingkid left | 12:10 |
| → ben_h_ joined | 12:10 |
| ← kalle_ left | 12:11 |
|
Grum
| bremner: did you put that exactly on that line? because you need to write perl, so at least it is missing a '@' :) | 12:11 |
| → kalle_ joined | 12:11 |
| → gitte joined | 12:11 |
|
bremner
| ahh, it shows up now. Not sure if I was blind before or the upgrade fixed it. | 12:11 |
| ← solar_ant left | 12:12 |
|
Grum
| blind i bet =D | 12:12 |
|
bremner
| Grum: thanks for the vote of confidence :-) | 12:13 |
|
gitte
| Grum: just because you have one eye. Hah! | 12:13 |
|
Grum
| i had three last time i checked | 12:13 |
| ← cemerick left | 12:14 |
|
gitte
| Grum: oh, no! Give me back my two eyes! | 12:15 |
|
| Grum stabs wildly | 12:15 |
|
Grum
| no! | 12:15 |
| ← alanhaggai left | 12:16 |
| → solar_ant joined | 12:16 |
| ← tim_jenssen left | 12:21 |
| ← solar_ant left | 12:22 |
| → mib_454get joined | 12:25 |
| → hulo joined | 12:26 |
| → leanucci joined | 12:26 |
|
hulo
| holu. i'm fairly new at revision control. I basically want to clone a git repo of the app i like (ncmpcpp), and be able work on it without sending anything upstream | 12:26 |
| ← Amenthes left | 12:27 |
|
hulo
| upon the next upstream sync, i want to be able to patch my work dir appropriately with the changes i made | 12:27 |
|
| again, not sending anything upstream | 12:27 |
|
| is this possible? | 12:27 |
|
j416
| hulo: git pull | 12:28 |
| → aspotashev|eeepc joined | 12:28 |
|
hulo
| so initially, i'd git clone the upstream | 12:28 |
|
j416
| hulo: git is distributed. Nothing will be sent upstream unless you say so. | 12:28 |
|
hulo
| what's the next step to setup my own verson | 12:28 |
| ← Pe3k left | 12:28 |
|
j416
| hulo: the clone is your version. | 12:29 |
|
| you can branch if you like. | 12:29 |
| ← ben_h left | 12:29 |
|
| gitte mumbles something about rebase possibly being a better option than pull... | 12:29 |
|
j416
| gitte: of course.. | 12:30 |
|
hulo
| all suggestions welcome :) | 12:30 |
|
j416
| i was thinking of pulling in master then rebasing on that | 12:30 |
|
| (in a separate branch) | 12:30 |
|
doener
| if master is just a "copy" of origin/master, you don't need master | 12:30 |
|
j416
| I mostly work locally so I have no good workflow when it comes to clones of remote repos. | 12:31 |
|
gitte
| j416: that's my gripe with it: why pull if you rebase anyway? (pull = fetch + merge) | 12:31 |
| → ben_h joined | 12:31 |
| ← ben_h_ left | 12:32 |
|
j416
| gitte: ah, rebase onto origin/master ? | 12:32 |
|
| makes sense, thanks | 12:32 |
|
doener
| maybe we can agree on "git pull --rebase"? ;-) | 12:32 |
|
hulo
| so after the initial clone, i can work on it as i please, then simply $git rebase? | 12:32 |
| → ben_h_ joined | 12:32 |
|
j416
| :) | 12:32 |
|
hulo
| I found http://jbowes.wordpress.com/2007/01/26/git-rebase-keeping-your-branches-current | 12:32 |
|
| it helped me understand rebase somewhat | 12:32 |
|
j416
| hulo: you should read the git book | 12:32 |
| → aspotashev__ joined | 12:35 |
|
j416
| it should answer most or all of your questions | 12:35 |
|
gitte
| doener: ah, thanks for reminding me... I always wanted to write a patch to support git pull --rebase=i | 12:35 |
| ← fujin left | 12:35 |
|
hulo
| j416: i'm a dive-head-first kind of guy :) | 12:35 |
|
j416
| hulo: then dive right into the book :) | 12:35 |
|
hulo
| and i think for such a small experiment, all i'd need would be snippets from the book | 12:35 |
|
| not planning on overseeing corporate projects any time soon :D | 12:35 |
|
j416
| you should get familiar with the basic concepts of git | 12:35 |
| → |chalky| joined | 12:35 |
| ← aspotashev|eeepc left | 12:36 |
| → jackdempsey joined | 12:36 |
| → lorandi joined | 12:36 |
| → ajonat joined | 12:36 |
| ← chalky left | 12:37 |
| → mfilipe joined | 12:38 |
| → yawn_ joined | 12:38 |
| ← aspotashev left | 12:38 |
|
gitte
| j416: it cannot hurt to get a basic understanding what a merge is (it is a commit), what a fast-forward and a direct ancestor is, and how the commit graph is represented. | 12:39 |
|
| Ah, sorry. | 12:39 |
|
| hulo: this was for you. | 12:39 |
|
j416
| hehe | 12:39 |
|
hulo
| gitte: he doesn't mind the reinforcement :D | 12:39 |
|
gitte
| hulo: because you will not really understand the difference between a rebase and a merge otherwise. | 12:39 |
|
| hulo: how do you know? | 12:39 |
|
| gitte is always open to learn some mind-reader tricks | 12:39 |
|
hulo
| you just missed your first lesson | 12:40 |
| → aspotashev joined | 12:40 |
| ← aspotashev_ left | 12:40 |
|
hulo
| 2nd | 12:40 |
| → gwoo_ joined | 12:40 |
|
hulo
| ;) | 12:40 |
| → brtzsnr joined | 12:41 |
| → deavid joined | 12:41 |
|
brtzsnr
| hi. how do I revert a locally modified file? | 12:41 |
|
j416
| brtzsnr: check it out from your repo | 12:42 |
|
brtzsnr
| never mind.. git checkout -- file | 12:42 |
|
j416
| yep | 12:42 |
|
gitte
| brtzsnr: if you already staged changes, you might want to insert a "HEAD" before the "--". | 12:42 |
| → cmarcelo joined | 12:42 |
|
doener
| brtzsnr: note that that gets the file out of the index. So e.g. a file deleted by "git rm" won't be restored, you need to use HEAD then (as gitte said) | 12:43 |
|
| brtzsnr: OTOH, without HEAD is the right way if you want the version back that you already "git add"ed | 12:43 |
| ← qrush_ left | 12:43 |
| → tim_jenssen joined | 12:45 |
| ← j416 left | 12:47 |
| ← hobodave left | 12:47 |
| → j416 joined | 12:48 |
| → berndj joined | 12:48 |
| ← faithfulgeek left | 12:49 |
|
brtzsnr
| 10x for the info... none of my modifications were staged so... first version was enough | 12:49 |
| ← [intra]lanman left | 12:50 |
| ← ben_h left | 12:50 |
| → parasti joined | 12:52 |
| → qrush joined | 12:52 |
| → alester joined | 12:53 |
| ← alester left | 12:53 |
| la_mer → cemerick | 12:54 |
| ← yawn left | 12:55 |
| → km2 joined | 12:55 |
| ← knitt1 left | 12:55 |
| → RaySl joined | 12:55 |
| → hummingkid joined | 12:56 |
| → trmanco joined | 12:57 |
| → gwoo__ joined | 12:57 |
| ← km2 left | 12:58 |
| → jaeckel joined | 12:59 |
| ← gwoo left | 12:59 |
| → hcl2 joined | 13:02 |
|
hcl2
| i have this file "config.git-hash", what does it do? do I need to save it? | 13:02 |
|
gitte
| hcl2: never heard of that file name. | 13:02 |
| ← priidu left | 13:03 |
|
hcl2
| oh... nm, my bad | 13:04 |
|
| git-ref-list HEAD | sort > config.git-hash <-- from a mailing list...trying to duplicate svn rev numbers | 13:05 |
|
| :/ | 13:05 |
| ← h0nk1 left | 13:05 |
|
Ilari
| hcl2: ref-list? | 13:05 |
|
hcl2
| rev | 13:05 |
|
| maybe | 13:05 |
|
| i still can't get over how easy it is to organize/use branches in git vs svn | 13:06 |
| → catalis joined | 13:07 |
| → ThaDon joined | 13:07 |
| ← stuffcorpse left | 13:08 |
| → stuffcorpse joined | 13:08 |
|
doener
| I'm constantly amazed how the same parts/concepts of git manage to get "wow this is great/easy/simple/intuitive" and "OMFG this is hard/confusing/bullsh*t" opinions at the same time from different people | 13:08 |
|
hcl2
| and i've been using it for about 3 months | 13:08 |
| → kukks joined | 13:09 |
|
hcl2
| i just started doing the git-svn to hook into old svn projects because I have too many "idea" changes lying around un-committed | 13:09 |
| → ajonat_ joined | 13:09 |
|
hcl2
| so, basically i make a new co of trunk on the same machine | 13:09 |
|
doener
| it happened to me more than just once that someone complained how hard X is, and while I've been still thinking about how to explain that better, someone else came and told how great and easy X is... | 13:09 |
| ← ajonat left | 13:10 |
|
hcl2
| it's pretty hard to get used to, the syntax still doesn't make sense, but it still makes stuff easier | 13:10 |
|
| if you just forget about trying to grok the syntax | 13:10 |
|
doener
| which syntax? | 13:11 |
| → khmarbaise_ joined | 13:11 |
| → esparkman joined | 13:11 |
|
hcl2
| hypothetical syntax | 13:11 |
| → Sho_ joined | 13:11 |
| ← ntoll left | 13:11 |
|
hcl2
| of git commands which don't use normal words, like git checkout somebranch vs git checkout dir/somefile.txt | 13:11 |
| ← khmarbaise left | 13:11 |
|
hcl2
| luckily i don't have any dirs called "master" | 13:11 |
|
doener
| you'd use "--" to disambiguate the argument then | 13:12 |
|
| git checkout -- master ==> get the file "master" out of the index | 13:12 |
|
hcl2
| ^ that syntax | 13:12 |
|
doener
| git chechout master -- ==> checkout the branch head master | 13:12 |
|
j416
| doener: maybe those who are very used to another system have a hard time re-learning, and people (as myself) who never really got to grips with any other system find it easier, because they don't really have any other references | 13:12 |
|
hcl2
| well, i used both cvs and svn at work everyday for a number of years each | 13:13 |
|
j416
| hcl2: then maybe you're just a quick learner hehe | 13:13 |
|
hcl2
| it's not that I don't "get" the syntax, it's that I can't put all that effort into memorizing esoteric thigns that I never need to do | 13:13 |
| ← gwoo_ left | 13:13 |
| ← aspotashev left | 13:14 |
|
doener
| hcl2: that "--" separator is quite a common thing... e.g. "grep -- -- <somefile>" to have grep searching for "--" | 13:14 |
| → mndoci joined | 13:14 |
|
hcl2
| but, i'm not doing squashing, or rewriting (although I did fix a spelling mistake in a commit message yesterday) | 13:14 |
|
| i woudl just do grep "\-\-" or whatever | 13:14 |
| → Pieter joined | 13:14 |
|
hcl2
| only time I use -- is when passing :1 or :0 to xinit | 13:15 |
|
j416
| hcl2: I have found it easiest to learn 'from the inside out', starting by learning how git works, to understand what _can_ be done, and then learn the command that actually does that. Instead of just learning a command and then what it does. | 13:16 |
|
| this way I can be sure there is a way to do something, I just have to find the syntax | 13:17 |
|
hcl2
| j416: it took a while, but there was an "ahah" moment where i did learn the inside from the out (at least i like to think so) | 13:17 |
| → krh joined | 13:17 |
|
hcl2
| there's no way to describe branches though, to someone who has used cvs/svn | 13:17 |
| → halfline joined | 13:17 |
|
hcl2
| the only thing to say is "you will actually *use* branches" | 13:18 |
|
j416
| haha | 13:18 |
|
hcl2
| if you already do, you will use them the actual way you wanted to | 13:18 |
|
doener
| hcl2: heh, interesting that you mention that, gitte raised that topic on the mailing list a few days ago. Maybe you have some input? | 13:18 |
|
hcl2
| explaining? | 13:18 |
|
doener
| hcl2: yeah, what's hard about that? Any idea how the docs could be improved or so? | 13:19 |
| ← bcardarella left | 13:19 |
|
hcl2
| well, i didn't really read the docs, i watched the linus video, got it, played, googled | 13:20 |
|
doener
| ok | 13:20 |
|
hcl2
| it depends on what you're coming from... the mindset change cannot be underestimated though | 13:20 |
|
| coming from cvs/svn | 13:20 |
|
| there's just no good way to write it out other than, it's 100% different, but 99% the same | 13:21 |
| ← Grahack left | 13:21 |
|
doener
| I came from svn (I used cvs, but never really much more than update/commit), but git just happened to work how I expected it to work | 13:21 |
| → djpig joined | 13:22 |
|
doener
| and branching is totally natural, you clone, you commit ==> you have a new branch, automatically, by the virtues of having a DVCS | 13:22 |
| → jasmin joined | 13:22 |
| ← ben_h_ left | 13:23 |
| → ben_h joined | 13:23 |
|
doener
| hm, I think "virtues" is not the word I meant to use there... | 13:23 |
| → ben_h_ joined | 13:23 |
| → coopsh joined | 13:23 |
|
osfameron
| "by virtue of" is fine I think | 13:23 |
| ← ben_h_ left | 13:24 |
|
j416
| looks fine | 13:24 |
| ← mbuf left | 13:24 |
|
j416
| http://81.233.1.70/1h/virtue.txt | 13:25 |
|
| erm. | 13:25 |
|
doener
| j416: ah, thanks, so s/the virtues/virtue/ and I'm fine :-) | 13:26 |
| ← aspotashev__ left | 13:26 |
|
| doener has a bad habit of using phrases he picked up somewhere without knowing their exact meaning (and realizing that only after using them) | 13:26 |
|
j416
| hehe | 13:27 |
|
| I think that is a good thing in a way. It helps you learn. | 13:27 |
|
| I do that too sometimes. | 13:27 |
| → aspotashev joined | 13:27 |
| → aspotashev|eeepc joined | 13:27 |
| → petercoulton joined | 13:27 |
|
osfameron
| my mum used to say "miffed" to mean confused (it means "annoyed" in UK slang) | 13:28 |
|
j416
| crazy | 13:28 |
|
| it would certainly miff me if you used it | 13:29 |
|
doener
| j416: yeah, it's not bad per se, but I should change the order from "hear, use, lookup in dictionary" to "hear, lookup, use" ;-) | 13:29 |
|
j416
| hehe | 13:29 |
|
| yeah | 13:29 |
|
| "hear, use, get corrected" might be faster though :) | 13:29 |
|
drizzd
| doener: That's the most important improvement of DVCS IMO | 13:29 |
|
doener
| j416: then I'd be in line with folks that need to get told to RTFM though ;-) | 13:30 |
|
j416
| haha, true | 13:30 |
|
drizzd
| You can make branches with most conventional CVSs, but you have to _think_ about it. | 13:30 |
| → alanhaggai joined | 13:30 |
| ← simmelpp left | 13:30 |
|
drizzd
| *VCSs | 13:30 |
|
doener
| drizzd: CVSs is fine, it's Crippled Versioning Systems ;-) | 13:31 |
| ← ben_h left | 13:31 |
|
drizzd
| hehe, I'll remember that | 13:31 |
| → Grahack joined | 13:31 |
|
ciaranm
| all you people abusing cvs clearly never had to use any of its predecessors | 13:32 |
|
Zathrus
| what's wrong with branching in CVS? Now pardon me while I spend the rest of the day merging our latest branch back to HEAD. | 13:32 |
| → PeakerWork joined | 13:32 |
|
Zathrus
| ciaranm: I did. And still do, to a limited extent. | 13:32 |
|
Rhonda
| ciaranm: I love RCS big time, and still use it on regular basis. | 13:32 |
| ← jackdempsey left | 13:33 |
|
Zathrus
| since the previous team didn't move from RCS until 2006. | 13:33 |
|
PeakerWork
| does anyone know a C comparison thing that knows to ignore meaningless changes? "git diff -w" helps, but still plenty of changes that don't affect anything are shown | 13:33 |
| → Bass10 joined | 13:34 |
|
drizzd
| PeakerWork: you could diff the generated assembler code | 13:34 |
|
dedmajor
| guys, could you help me a bit? i have a clone of remote git repo with two local checkouts - branch master and branch v1.0 (for example). let say i'm in branch master now. i make changes and commit some code. now, what is the optimal way to cherry-pick this commit to branch v1.0? i do checkout v1.0, then git pull (to avoid non-fast forward push), then git cherry-pick, then git push (to push both commits), then git checkout master, and continue | 13:35 |
|
| developement. So, i thinks it's to obscure and i need some help to figure out what i'm doing wrong ) | 13:35 |
| → scarabx joined | 13:35 |
|
drizzd
| If you just want to ignore all whitespace changes (including new lines and removed line breaks), I suppose you could simply compare an auto-formatted version. | 13:35 |
| ← plasticine left | 13:35 |
|
PeakerWork
| drizzd: that's even more difficult :) | 13:35 |
|
| drizzd: Nicer to compare a canonized AST or such, perhaps even one that canonizes name | 13:35 |
|
ciaranm
| dedmajor: there was a cherry-pick --onto proposal at one point, but the powers that be didn't like it | 13:36 |
|
hcl2
| doener: I used git/svn with only commit update and nothing fancy only because I realized that branching/merging was just not worth the problems. I never did anything fancy | 13:36 |
|
drizzd
| well, the names part only works for static variables | 13:36 |
|
| or local variables | 13:36 |
|
hcl2
| doener: and git did not work anything like I expected, in fact Ithought I did some commands wrong because they were too quick | 13:36 |
| → swombat joined | 13:37 |
|
swombat
| hello... | 13:37 |
|
hcl2
| like git co -b newbranch .... too quick | 13:37 |
|
| did not think it worked | 13:37 |
|
swombat
| "Your branch is ahead of 'origin/master' by 1 commit." << I want to get rid of that commit (I made it on a clone which doesn't have remote access) | 13:37 |
|
| how do i do that? | 13:37 |
|
dedmajor
| ciaranm: so, anyone is cherrypicking commits now in the same way as me? | 13:37 |
|
cannonball
| hcl2: You should add some sleep commands so that it feels more like other products... | 13:37 |
|
ciaranm
| swombat: git reset --hard | 13:37 |
| → loincloth joined | 13:37 |
|
hcl2
| cannonball: yeah, that's what I do with some of my php code ;) | 13:37 |
|
swombat
| ciaranm: still the same | 13:37 |
|
dedmajor
| ciaranm: err/everyone | 13:37 |
|
ciaranm
| dedmajor: i do more or less what you said, except i don't pull | 13:38 |
|
| snuxoll: what command did you run exactly? | 13:38 |
| ← Fullmoon left | 13:38 |
|
doener
| dedmajor: the cherry-pick vs. pull order doesn't matter much, it might in some cases allow a fast-forward _locally_ instead of a merge, but for the push part, cherry-picking first and then merging is just fine | 13:38 |
|
j416
| hcl2: the only thing that happens when you create a new branch is really git writing a SHA1 to file, so it should be quick :) | 13:38 |
|
hcl2
| alias "git co -b"="sleep 2; git co -b" | 13:38 |
|
cannonball
| hcl2: We're still using git 1.5.x. I can't wait to get it up to 1.6.x, it has some tunings that is supposed to make it much faster over nfs which is what our central home directories are. | 13:38 |
|
swombat
| ciaranm: i've already committed the stuff, I but couldn't push it (since it's on a read-only clone), and so now i want to uncommit it | 13:38 |
|
ciaranm
| swombat: uh huh. git reset --hard. | 13:39 |
|
doener
| dedmajor: what you should consider is doing things the other way around. Put bugfixes into 1.0 first, and then merge that to master (I assume that 1.0 is the maintenance branch, and master is for the next version) | 13:39 |
|
hcl2
| but... when you first playing with git, and you come from svn+https over at SF... you honestly think something might be wrong | 13:39 |
|
j416
| hehe | 13:39 |
|
swombat
| ciaranm: http://pastie.org/private/bb5kklhp5jkucu01i3chmq | 13:39 |
| → Fullmoon joined | 13:39 |
|
doener
| dedmajor: that way, you get all accumulated bugfixes from 1.0 to master in one swoop, and don't have "duplicated" commits, like you do with cherry-picking | 13:39 |
| wshimmy1 → wshimmy | 13:39 |
|
hcl2
| you think that you screwed up the command..... or that it's just getting ready to do stuff and that it will take 4 seconds *later* | 13:39 |
|
ciaranm
| swombat: you need to read man git-reset | 13:39 |
|
| swombat: you need to tell it what to reset to | 13:40 |
|
swombat
| ah | 13:40 |
|
doener
| dedmajor: also makes it a lot harder to forget some commits. The merge always gets all the stuff from 1.0 to master | 13:40 |
| → jschoolcraft joined | 13:40 |
| → markelikalderon joined | 13:40 |
|
hcl2
| also, the fact that all branches can get access to the history of all other branches is a little wierd | 13:40 |
|
swombat
| ciaranm: great, that worked | 13:40 |
|
doener
| dedmajor: while the cherry-picking means that you need to remember to pick each interesting commit | 13:40 |
|
swombat
| (specifying which commit) | 13:40 |
|
dedmajor
| doener: i thought master is a developement unstable branch, which should be tested before changes goes into stable branches (like 1.0) | 13:40 |
|
swombat
| thanks for the tip! | 13:40 |
|
hcl2
| that is not like svn where branches are just copies | 13:40 |
|
| i still don't understand git tags, haven't used them yet | 13:41 |
| → gberdyshev joined | 13:42 |
| → ckm joined | 13:42 |
|
doener
| dedmajor: that's your choice. For example git.git has 4 branches. "maint" which gets bugfixes and is merged to "master". "master" in turn is meant to be pretty much stable and becomes the next release. And "next" and "pu" are the "unstable" branches | 13:42 |
|
j416
| hcl2: a tag is just something that points to a commit, often as its own object with a message etc. | 13:42 |
|
| used for giving things a name | 13:42 |
| ← gberdyshev left | 13:43 |
|
doener
| dedmajor: of course things that go to "maint" should be fine and tested, before you let them get out, but that doesn't mean that you must cherry-pick them from master | 13:43 |
|
hcl2
| i just haven't figured out the syntax for doing them. again, i know what they are in svn, they are copies | 13:43 |
|
dedmajor
| doener: oh, thanx ) i'm very appreciating your explanations ) | 13:43 |
| → gberdyshev joined | 13:43 |
|
j416
| in git they are just references | 13:43 |
|
| or, contain references that is | 13:43 |
|
doener
| dedmajor: that could even be "bad" in some way. "master" might have changed even to make the bugfix work on it, but the cherry-picked version in 1.0/maint fails in a subtle way | 13:43 |
|
| s/even/enough/ | 13:43 |
| → faithfulgeek joined | 13:44 |
|
doener
| dedmajor: but going the other way around, that would mean that it works on 1.0 (for which it was written) and then subtly fails on master (which isn't _that_ bad, as master isn't as "critical") | 13:44 |
|
dedmajor
| doener: i'm still very new to git, so i need a bit of time to perceive all that you are saying now ) wait 0 | 13:45 |
| → Ryback_ joined | 13:45 |
| → alanhaggai_ joined | 13:47 |
| ← Ryback_ left | 13:47 |
|
doener
| j416: tags don't have to reference commits, they can reference any object. For example there's the junio-gpg-pub tag in git.git that tags a blob containing Junio's GPG key | 13:47 |
| → Ryback_ joined | 13:47 |
|
j416
| doener: wow, I didn't know that. | 13:47 |
|
| (I did think though: doener will say something about what I said) | 13:48 |
|
| :P | 13:48 |
| → priidu joined | 13:49 |
|
doener
| hm, is that good or bad? :-| | 13:49 |
|
hcl2
| haha | 13:50 |
| ← petercoulton left | 13:51 |
|
sitaram
| the only bad thing is for me: I can't even *read* as fast as doener can type :( | 13:52 |
| → petercoulton joined | 13:52 |
| → giallu joined | 13:52 |
|
| sitaram thanks God for backlogs | 13:52 |
| ← gilimanjaro left | 13:53 |
| → spearce joined | 13:54 |
| → loinclot_ joined | 13:55 |
| → [intra]lanman joined | 13:55 |
| ← loincloth left | 13:56 |
|
dedmajor
| doener: well, the way you have explained seems to be very smart, you helped me very much ) | 13:57 |
| ← alanhaggai left | 13:57 |
| alanhaggai_ → alanhaggai | 13:58 |
| ← Grahack left | 13:58 |
|
doener
| dedmajor: you're welcome | 13:59 |
| ← markelikalderon left | 14:00 |
| → bcardarella joined | 14:00 |
| → hpoydar joined | 14:01 |
| → gnublade joined | 14:01 |
|
j416
| doener: always a good thing :) Keep on correcting hehe | 14:02 |
| → petercoulton_ joined | 14:02 |
| ← petercoulton left | 14:03 |
| ← petercoulton_ left | 14:03 |
| → spearce` joined | 14:03 |
|
drizzd
| j416: doener is like a safety net. I don't even think about what I'm saying any more. | 14:03 |
|
j416
| drizzd: :D | 14:03 |
| → boto joined | 14:03 |
| → petercoulton joined | 14:04 |
| ← dwt left | 14:07 |
| → bdiego joined | 14:07 |
| → solar_ant joined | 14:07 |
| → bcardarella_ joined | 14:07 |
| → markelikalderon joined | 14:08 |
| → kraymer joined | 14:08 |
| ← solar_ant left | 14:08 |
| → alester joined | 14:09 |
| → km2 joined | 14:10 |
| → jackdempsey joined | 14:11 |
| → ToxicFrog joined | 14:12 |
| → bcardarella__ joined | 14:12 |
| ← j416 left | 14:13 |
| → DavidKlein joined | 14:13 |
| ← bcardarella left | 14:14 |
| → andres joined | 14:14 |
| ← yawn_ left | 14:16 |
| → troyt joined | 14:17 |
| ← bcardarella__ left | 14:17 |
| ← spearce left | 14:18 |
| ← priidu left | 14:18 |
| ← mndoci left | 14:20 |
| ← gnublade left | 14:20 |
| ← scarabx left | 14:21 |
| ← aspotashev left | 14:23 |
| → eletuchy_ joined | 14:24 |
| → bryanl joined | 14:24 |
| ← ia left | 14:24 |
| → ia joined | 14:25 |
| → petercoulton_ joined | 14:26 |
| ← petercoulton left | 14:26 |
| ← petercoulton_ left | 14:26 |
| → petercoulton joined | 14:26 |
| → jchris joined | 14:26 |
| ← ahf left | 14:27 |
| ← Pewpewarrows left | 14:27 |
| → bcardarella joined | 14:27 |
| ← girishr left | 14:28 |
| ← bcardarella_ left | 14:30 |
| ← markelikalderon left | 14:30 |
| → ahf joined | 14:33 |
| ← mib_454get left | 14:33 |
| → bewst joined | 14:37 |
| → bdimcheff joined | 14:37 |
|
bewst
| can someone explain to me what remotes/origin/master and remotes/public/master mean? In particular, what's the significance of that middle element (origin or public)? | 14:38 |
| ← swombat left | 14:38 |
|
Grum
| it is the name you gave for the remote | 14:38 |
|
hcl2
| the name of the remote location, i think | 14:38 |
|
Grum
| the default name is 'origin' | 14:38 |
|
doener
| bewst: if you use "git remote add foo git://host/repo" that sets a default fetch refspec for that remote | 14:38 |
|
| bewst: in that case, the config would have remote.foo.fetch set to "refs/heads/*:refs/remotes/foo/*" | 14:39 |
|
| bewst: so "git fetch foo" becomes equal to "git fetch foo refs/heads/*:refs/remotes/foo/*" | 14:39 |
|
hcl2
| ^ all that stuff is still confusing to me | 14:39 |
|
doener
| bewst: and that fetches all branch heads from the "foo" remote, and stores them in the refs/remotes/foo/ namespace | 14:39 |
| → Zenopus_ joined | 14:39 |
|
bewst
| doener: ...yeah... but... how does public/master and origin/master line up with the examples you just gave? | 14:40 |
|
doener
| bewst: so if it fetches "refs/heads/master" (the "master" branch head) it's stored in refs/remotes/foo/master | 14:40 |
|
| bewst: those are shortnames | 14:40 |
|
bewst
| I am seeing both public and origin in this repo, and I only ever cloned or pulled from one place. | 14:40 |
|
| doener: shortnames for what? | 14:41 |
|
doener
| bewst: when you use e.g. "master", git tries things like refs/heads/master, refs/remotes/master etc. | 14:41 |
|
bewst
| doener: according to your examples, they would be servers. | 14:41 |
| → broonie joined | 14:41 |
| → priidu joined | 14:41 |
|
bewst
| doener: yes, I know what master is. | 14:41 |
|
| doener: I'm asking about the element before master. | 14:41 |
| ← jschoolcraft left | 14:41 |
|
doener
| bewst: that's just one element in the refname, and it's just a default, chosen so that it's the same as the name of the remote | 14:42 |
|
| bewst: there's no "implicit" meaning to it, it's all just defaults | 14:42 |
| ← bewst left | 14:43 |
|
Grum
| doener: if you are merging multiple branches what is the 'sane' thing to do? just merge from origin/xxxx or make a local branch for each and then merge? | 14:43 |
|
| seems all of our merge commits will contain origin/ :) | 14:43 |
| → Pewpewarrows joined | 14:43 |
| → bewst joined | 14:43 |
| → dodo_the_last joined | 14:43 |
|
bewst
| doener: sorry, ERC just locked up emacs on me | 14:44 |
|
| doener: so I missed anything you may have typed recently | 14:44 |
|
Grum
| o.O use a real ircclient =D | 14:44 |
|
doener
| bewst: what's the last thing you saw/remember? | 14:44 |
|
Grum
| he just missed: | 14:44 |
|
bewst
| doener: you were telling me what "master" means or so I thought | 14:44 |
|
Grum
| 16:42:20 < doener> bewst: that's just one element in the refname, and it's just a default, chosen so that it's the same as the name of the remote | 14:44 |
|
| 16:42:35 < doener> bewst: there's no "implicit" meaning to it, it's all just defaults | 14:45 |
| → justatheory joined | 14:45 |
|
bewst
| doener: and I was saying that I don't know where those names came from... thx, Grum | 14:45 |
| ← gwoo__ left | 14:45 |
|
doener
| bewst: no, I meant to explain that "master" is just a shortname, the full refname is refs/heads/master (if were talking about a local branch head) | 14:45 |
|
bewst
| doener: OK, let me try my question this way | 14:45 |
|
doener
| bewst: and similarly, that "origin/master" is a shortname, usually for refs/remotes/origin/master | 14:45 |
|
| and those names are generated by the means of that config setting from "git remote add" | 14:46 |
|
Grum
| but you can have a branch called origin/master as well -- in which case it would refer to: refs/heads/origin/master | 14:46 |
|
doener
| so it all boils down to the fact that "git remote add" sets a default refspec that puts the fetched branch heads into the refs/remotes/<remote-name>/ namespace | 14:46 |
|
bewst
| doener, Grum: I'm looking at a gitk window and trying to find out what these things mean that I'm seeing there. Is there a place I could post a screenshot? | 14:47 |
|
Ilari
| bewst: IIRC, the expansion rules are (not in order of percedence, X is the entered shorthand: X, refs/X, refs/heads/X, refs/tags/X, refs/remotes/X, refs/remotes/X/HEAD . | 14:47 |
|
doener
| so the "origin" and "public" parts "normally" mean that the stuff comes from the "origin" or "public" remote respectively | 14:47 |
|
| "normally" because it's all just defaults, you can do "git fetch origin refs/heads/foo:refs/remotes/public/foo" and "inject" origin's foo into the refs/remotes/public namespace | 14:48 |
|
bewst
| doener: I'm trying to tell you that there's only one repo that could possibly ever have been used as a remote | 14:48 |
|
| doener: so I don't understand where these distinctions are coming from | 14:48 |
| → schacon joined | 14:49 |
|
Grum
| bewst: you added the 'public' remote manually | 14:49 |
| → hdl2 joined | 14:49 |
|
Grum
| and if you didn't the you copied the complete git directory from did | 14:49 |
|
| err +person | 14:49 |
| → wmoxam joined | 14:49 |
|
bewst
| Grum: from did err +person? | 14:49 |
|
doener
| bewst: in gitk, do these names read as just "origin/master", "public/master" or "remotes/origin/master" and "remotes/public/master"? | 14:50 |
|
bewst
| The latter | 14:50 |
|
doener
| ok | 14:50 |
|
| bewst: could you pastebin your config? | 14:50 |
|
bewst
| doener: and they point to different commits. | 14:50 |
| loinclot_ → loincloth | 14:50 |
|
bewst
| doener: sure... | 14:50 |
| loincloth → cloth_of_loin_va | 14:50 |
| hdl2 → hdl | 14:50 |
|
bewst
| doener: do you mean my .git/config ? | 14:50 |
|
doener
| yep | 14:50 |
| cloth_of_loin_va → cloth_of_loins | 14:51 |
| ← Sho_ left | 14:51 |
| → antoranz joined | 14:51 |
| ← ahf left | 14:51 |
|
Grum
| doener: that is default behaviour afaik, the [remotes/origin] is in 'light orange' and the [master] part is green | 14:52 |
| → juanjoc joined | 14:52 |
| → ahf joined | 14:52 |
|
bewst
| doener: OK, I see it in http://gist.github.com/100525 | 14:52 |
|
Grum
| i'm trying to understand where the confusion comes from | 14:52 |
|
doener
| bewst: yeah, two remotes, but they reference the same repo | 14:52 |
|
bewst
| doener: yeah, but different commits, somehow? | 14:53 |
|
Grum
| ofc! | 14:53 |
|
doener
| bewst: "remotes" are a configurable entity, they're _not_ the same as the repo | 14:53 |
|
| bewst: probably because one of them didn't get fetched from recently | 14:53 |
|
Grum
| if you don't update one where you do update the other | 14:53 |
|
doener
| bewst: if you do "git fetch public" that will update the remote tracking branches for "public", i.e. refs/remotes/public/* | 14:53 |
|
| bewst: but "git fetch origin" will update the refs/remotes/origin/* stuff | 14:54 |
|
bewst
| doener: I think I get it. Hang on... | 14:54 |
|
doener
| bewst: if you fetch only one of them, the other will "lag behind" | 14:54 |
| → Sho_ joined | 14:54 |
|
bewst
| doener: thanks, now all is clear | 14:55 |
|
| doener: just one other question. How do I delete one of these remotes? as they both point to the same repo it just adds confusion | 14:55 |
|
doener
| git remote rm <name> | 14:55 |
|
Ilari
| bewst: And btw, why there are two remotes, one for git:// and one for ssh://? Those should be in sync. | 14:55 |
|
doener
| though your config is a bit interesting | 14:55 |
| ← Sho_ left | 14:56 |
|
bewst
| Ilari: oh, I think I can explain that... brb | 14:56 |
|
doener
| bewst: "master" is setup with remote "public", but that's apparently the one that "git clone" created | 14:56 |
| → Sho_ joined | 14:56 |
| ← DavidKlein left | 14:56 |
| bobmcw_ → bobmcw | 14:57 |
| ← schacon left | 14:57 |
| ← Sho_ left | 14:57 |
|
doener
| dropping the "public" remote seems like it's less "work" (as you don't need to adjust the config for "master") | 14:57 |
| → Sho_ joined | 14:57 |
| tedoc2000_afk → tedoc2000 | 14:57 |
|
alester
| Ilari: Why is it back to have one git: and one ssh: ? | 14:58 |
|
bewst
| Ilari, doener: what happened was that on /this/ machine, I mistakenly cloned from github's "public" (I think meaning read-only) URL and then later switched to the ssh one so I could commit | 14:58 |
|
doener
| but I wonder why "public" is there in the first place... submodule stuff? Or just "misuse" or "clone -o <name>" | 14:58 |
| ← Zenopus left | 14:58 |
|
doener
| alester: it's pointless (if it's the same repo), and leads to confusion, as we've just seen, cause things get out of sync | 14:58 |
| Zenopus_ → Zenopus | 14:58 |
|
bewst
| doener: I'm using submodules, but I don't think it has anything to do with that | 14:58 |
| → knitt1 joined | 14:58 |
| → ferdy_ joined | 14:59 |
|
doener
| bewst: me neither, but I'm totally clueless about submodules, so I'm just throwing around my thoughts ;-) | 14:59 |
|
jast
| if it's the same repo, why not just remove one remote and prune away its remote tracking branches? | 14:59 |
|
bewst
| doener: I think it's just because I muddled my way through pushing to the ssh:// URI without really knowing what I was doing. | 14:59 |
|
jast
| submodules don't touch refs/remotes | 14:59 |
| → antoranz_ joined | 14:59 |
|
bewst
| doener: wow, submodules are one thing I (sort of) understand. | 15:00 |
| → neoeinstein joined | 15:00 |
|
doener
| jast: I just recalled some old discussion on the mailing list where someone had a need for $something_related_to_remotes for submodules | 15:00 |
|
bewst
| jast: I planned to remove that remote. How do I prune away the remote tracking branches? | 15:00 |
|
jast
| bewst: look at git remote prune | 15:00 |
|
doener
| bewst: well, I get the "how to use them" part, but have no clue about the implementation | 15:00 |
|
jast
| the implementation is a bit weird to wrap your head around but it actually makes a lot of sense | 15:01 |
| → schacon joined | 15:01 |
|
doener
| jast: "remote rm" deletes the remote tracking branches IIRC | 15:01 |
|
jast
| the only thing git stores about the submodules in the supermodule is the commit ID in the gitlink | 15:01 |
|
bewst
| Do I want to prune then remove, vice versa, or doesn't it matter? | 15:01 |
|
jast
| oh, that's possible | 15:01 |
| → octagon joined | 15:01 |
|
jast
| just remove the remote and see if the extra tracking branches are gone | 15:02 |
|
doener
| yep, it does, just tried :-) | 15:02 |
| → altrux joined | 15:02 |
| → DavidKlein joined | 15:02 |
|
bewst
| thanks, all! | 15:03 |
|
jast
| so if you update a submodule "foo" at ./foo, new objects are fetched into ./foo/.git | 15:03 |
| ← schacon left | 15:03 |
| → schacon joined | 15:04 |
|
jast
| I guess prune would have been the wrong thing anyway, because it enumerates over remotes that still exists and removes remote tracking branches that are no longer needed in those | 15:04 |
| ← schacon left | 15:04 |
|
jast
| I'm not actually sure that it removes branches that have no corresponding remote | 15:04 |
| ← knitt1 left | 15:04 |
|
bewst
| is there any easy way to "repoint" all my submodules to a different URL? They are referencing the URL of the remote I want to remove. | 15:05 |
|
jast
| I suggest a search&replace in .gitmodules and .git/config | 15:06 |
| → straszheim joined | 15:06 |
|
jast
| well, actually you may want to leave them as they are in .gitmodules | 15:06 |
|
bewst
| yo, troy | 15:06 |
| → knittl joined | 15:06 |
|
straszheim
| hey hey | 15:06 |
|
bewst
| jast; OK, it doesn't matter that much | 15:06 |
|
straszheim
| who's that? | 15:07 |
| → ben_h joined | 15:07 |
|
bewst
| dave | 15:07 |
|
straszheim
| hey! | 15:07 |
|
bewst
| ahoy | 15:08 |
|
straszheim
| http://sodium.resophonic.com/git/boost/ | 15:08 |
|
| trying to get a git mirror up | 15:08 |
|
bewst
| nice! What's the problem? | 15:09 |
|
straszheim
| have a zillion tags/branches imported into the repo | 15:09 |
|
| they dont' appear here | 15:09 |
|
| trying to see if there is a way for people to browse, say, git-svn cloned release branch | 15:09 |
| → aspotashev joined | 15:10 |
|
straszheim
| locally, git branch -a shows them, and i can switch to them locally | 15:10 |
|
jast
| git-svn branches are typically kept in the remotes/ namespace | 15:10 |
|
bewst
| Looks like they may have become non-public remotes, but you should get help from someone who knows what he's talking about ;-) | 15:10 |
|
jast
| typically, clone only clones refs/heads and refs/tags | 15:10 |
|
| so you'd have to change the refspecs used by fetch | 15:10 |
| ← kalle_ left | 15:11 |
| → kuadrosx joined | 15:11 |
| → Modius joined | 15:11 |
| → kalle_ joined | 15:12 |
| ← mfilipe left | 15:12 |
|
jast
| ah, actually I don't even think refs/tags is cloned | 15:12 |
|
straszheim
| i appear to have got everything... this ran for two days ;) | 15:12 |
|
bewst
| straszheim: we should start using mirrors and personal git repos for development. Eventually Boost will just fall over and switch :-) | 15:13 |
| ← antoranz left | 15:13 |
|
straszheim
| bewst: that's the diea | 15:13 |
|
| idea | 15:13 |
|
bewst
| either spelling works | 15:13 |
|
straszheim
| git svn clone http://svn.boost.org/svn/boost -Ttrunk -ttags/release -bbranches | 15:13 |
|
| there was my clone | 15:13 |
|
jast
| straszheim: oh, so that repository you linked to is a direct git-svn clone? | 15:13 |
|
doener
| straszheim: I guess you see the missing stuff with "git branch -r" but not "git branch", right? | 15:13 |
|
straszheim
| jast: yeah, i git-svn cloned and then put it up under cgit | 15:13 |
|
jast
| okay | 15:14 |
|
straszheim
| doener: exactly | 15:14 |
|
jast
| most tools don't show remote branches | 15:14 |
|
| so there's two things you can do | 15:14 |
|
| either you move all the branches into the local namespace yourself | 15:14 |
|
| or you create a clone of the original repo with a special fetch command | 15:14 |
|
| uhm, in this case, by original I mean the git-svn repo you created | 15:15 |
|
| straszheim is following | 15:15 |
|
doener
| there's a patch on the mailing list that would allow git-svn to operate on bare repos, that'd be helpful here | 15:15 |
| ← rittyan left | 15:15 |
| ← lottadot left | 15:15 |
|
straszheim
| doener: I just pulled the .git directory out of the nonbare git-svn clone | 15:15 |
|
jast
| so I guess I'd recommend keeping the git-svn repo elsewhere and mirroring the branches/tags into that public repository | 15:16 |
|
straszheim
| ah, but i cant' fecth | 15:16 |
|
jast
| how about push? | 15:16 |
|
straszheim
| eh, can't fetch to the .git/ that i just pulled out of the git-svn clone | 15:16 |
|
jast
| but can you push to it? | 15:16 |
|
straszheim
| with the full repo I can | 15:16 |
|
| let's see | 15:17 |
|
doener
| straszheim: basically, "git push <remote> 'refs/remotes/*:refs/heads/*'" should do for most purposes | 15:17 |
|
jast
| oh, you may want to edit the config file of that .git dir you pulled out... make it say bare = true in the [core] section | 15:17 |
|
doener
| straszheim: as all the "pushable"/"fetchable" stuff from git-svn lives in the refs/remotes namespace | 15:17 |
|
jast
| otherwise most everything will fail | 15:17 |
|
doener
| jast: hm, unless the directory is still called .git, the autodetection _should_ work, I think | 15:18 |
|
jast
| unless it explicitly says bare = false | 15:18 |
|
doener
| true | 15:18 |
|
jast
| which it does in my clones | 15:18 |
|
doener
| oh, and that's the default it seems... d'oh | 15:18 |
|
straszheim
| ok, rename .git -> something, set bare=true, can svn fetch | 15:19 |
| → netoman joined | 15:19 |
| → aspotashev_ joined | 15:19 |
| ← aspotashev|eeepc left | 15:19 |
|
jast
| svn fetch only works if the working tree exists | 15:19 |
|
| unless you apply the git-svn patch doener talked about | 15:19 |
| → dotsintacks joined | 15:19 |
|
doener
| jast: hm, really? I don't see any "bare" checks in the current git-svn | 15:19 |
|
dotsintacks
| anyone ever run into "Not a git repository" for all your repos when setting up cgit? | 15:19 |
|
straszheim
| ah. hm. there was nothing to fetch, so no failure. was getting complaints from perl before. | 15:19 |
|
jast
| you were the one to mention it | 15:19 |
|
dotsintacks
| my repos are definitely readable by apache... | 15:20 |
|
doener
| jast: I just recall that it refuses to fetch to refs/heads/* at all | 15:20 |
|
jast
| oh. | 15:20 |
|
doener
| jast: and that | 15:20 |
|
| 's what the patch is about, I think | 15:20 |
|
| oh, oops, stupid enter key :-) | 15:20 |
| ← k0001 left | 15:20 |
|
jast
| happens to me a lot lately, that stupid enter thing | 15:20 |
|
straszheim
| okay, so i can keep the svn clone private, with a cronjob, and mirror that to the cgit directory | 15:21 |
|
jast
| do you happen to know if git-svn triggers any core git hooks? | 15:21 |
|
| because then we could even automate the remapping thing without needing two repos | 15:21 |
|
doener
| jast: not sure. But instead of the remapping, we could also just wrap the fetch + some symref setup | 15:22 |
|
jast
| I never used any symrefs (apart from HEAD) | 15:23 |
| ← sdiz left | 15:23 |
| → jds joined | 15:23 |
| → sdiz joined | 15:23 |
|
jds
| Heya | 15:24 |
|
jast
| doener: how would you "wrap the fetch"? | 15:24 |
|
doener
| jast: a shell script? | 15:24 |
|
jds
| If I'm reading "git help ignore" right, .gitignore containing /* should only ignore files in the current directory. It actually seems to ignore everything - why? | 15:24 |
|
jast
| oh, that kind of wrap | 15:25 |
| → gp5st joined | 15:25 |
|
jast
| jds: because that includes ignoring each direct subdir of the current dir :) | 15:25 |
|
| and if git never looks at subdir foo, of course it won't look at foo/bar, either | 15:25 |
|
gp5st
| hello, I'm on a bsd machine and when I do `git init` i get "fatal: cannot tell cwd" It's version 1.6.1.3 of git; any ideas? | 15:26 |
| → gwoo joined | 15:26 |
| → lois[pac] joined | 15:26 |
| cloth_of_loins → loincloth | 15:27 |
|
gp5st
| there was a thread at kernel trap, but i didn't get any answers from it | 15:27 |
|
| the other difference from what I find in searches is that this is local, not a remote problem | 15:27 |
|
jds
| jast: Hmm. Any way of negating that ignore? | 15:27 |
|
jast
| gp5st: do you have a pwd util (sorry, I'm one of those linux fanboys who never use anything else) and does it work in that same dir? | 15:27 |
|
doener
| jds: !/*/ might do to unignore all directories | 15:28 |
|
jast
| jds: you can prefix patterns with ! to negate them. there was some gotcha with subdirs and negated catch-alls, though... | 15:28 |
|
| I don't remember the specifics | 15:29 |
|
gp5st
| jast: yes, but pwd and getcwd() are slightly different | 15:29 |
|
doener
| jast: there's a catch with things like !foo/bar/goo when "foo" is ignored | 15:29 |
|
jast
| well, I don't know the implementation of your pwd | 15:29 |
|
| doener: oh, yeah, that was it | 15:29 |
|
gp5st
| jast: it's the same on linux too, i believe | 15:29 |
|
jast
| gp5st: still, I don't have the source code of pwd handy | 15:29 |
|
gp5st
| jast: i'm reading the getcwd man page and it says it'll fail if any component of the path fails acccess it errors:( | 15:29 |
| ← diadema left | 15:30 |
|
jast
| that's one reason why it may fail | 15:30 |
|
doener
| strace says that _my_ pwd uses getcwd :-) | 15:30 |
|
gp5st
| i'm on a shared box, so i don't have acces to / or /home, :-\ | 15:30 |
|
| hmm | 15:30 |
| ← johan-s left | 15:30 |
|
doener
| I'm also on Linux though | 15:30 |
|
jast
| if you don't have access to / and /home you can't access /home/yourself in the first place | 15:30 |
|
gp5st
| well, this usually works on linux, i think it's the bsd ppl being strict | 15:30 |
| ← Pewpewarrows left | 15:30 |
|
gp5st
| you're right, i can't access /home | 15:31 |
|
jast
| hmm. | 15:31 |
|
gp5st
| but i do have acces to /home/me | 15:31 |
|
jast
| I think you need executable rights to /home at least | 15:31 |
|
| let me see if I can duplicate this situation on linux | 15:31 |
| → HG` joined | 15:31 |
| → vienova joined | 15:31 |
|
gp5st
| thanks | 15:31 |
| → gotgenes joined | 15:32 |
|
gp5st
| the thing is pwd works, but i think pwd works even if you can't see the current dir's contents | 15:33 |
|
jast
| are you using a pwd shell builtin or the external program? | 15:33 |
|
gp5st
| ...good question | 15:34 |
|
| haha | 15:34 |
|
jast
| try using an explicit path to pwd | 15:34 |
|
| should be /bin/pwd I guess | 15:34 |
|
doener
| even with a leading up directory having 0000 permissions, getcwd works here | 15:34 |
|
gp5st
| if i do /bin/pwd it gived me my home | 15:34 |
|
| where i am | 15:34 |
|
| :-( | 15:34 |
| → Pewpewarrows joined | 15:34 |
|
gp5st
| doener: you're on linux, right? | 15:35 |
|
doener
| gp5st: I guess there's something like strace available that could show the error returned by getcwd, right? | 15:35 |
| → ben_h_ joined | 15:35 |
|
doener
| gp5st: yep, just saying that this is not a problem on this platform | 15:35 |
|
gp5st
| yeah | 15:35 |
|
| i have strace on the box | 15:35 |
|
| i've never used it | 15:35 |
|
jast
| well, just do this: | 15:35 |
|
doener
| gp5st: strace -e getcwd -f git init | 15:35 |
|
gp5st
| invalide system call getcwd | 15:36 |
|
| let me see if it's a bsd thing and it's called different | 15:36 |
|
| i'm usually a linux person:-\ | 15:36 |
|
doener
| ah, the syscall is linux specific, just the C lib function is portable | 15:36 |
|
| gp5st: just drop the "-e getcwd" and get the full output, shouldn't be much harder to read | 15:37 |
| → aisbaa joined | 15:37 |
| ← bryanl left | 15:38 |
|
gp5st
| strace: open("/proc/...", ...): Permission denied | 15:38 |
|
| trouble opening proc file | 15:38 |
|
| guess i need root? but i don't have that | 15:39 |
|
doener
| hm, interesting, looks like they don't like you to use strace or so... | 15:39 |
|
jast
| I don't think you need access to /proc | 15:39 |
|
emias
| getcwd(3) is portable (across POSIX), but strace(1) is Linux-specific :-) | 15:39 |
|
jast
| oh. | 15:39 |
|
gp5st
| thanks for your help; i may just give them a call since they can figure out what's up on this specific machine; i've just never ran into this issue | 15:39 |
| → jmesnil_ joined | 15:39 |
|
gp5st
| haha, i wonder why i have strace on here then | 15:39 |
|
jast
| I wonder if it's worth making error handling more verbose in that spot | 15:40 |
|
doener
| anyway, found some BSD getcwd implementation and that seems to call opendir() and fstat() on each path component | 15:40 |
|
jast
| that would explain things... | 15:40 |
|
gp5st
| ooh | 15:40 |
| ← altrux left | 15:41 |
|
emias
| gp5st: On FreeBSD, you'd normally use truss(1). (IIRC, there's some port of strace, but that requires a mounted Linux-/proc ...) | 15:41 |
|
gp5st
| why? i know they are ?ber conscience of security, but would getcwd be an issue if i know where i am if i'm allowed to be there? | 15:41 |
|
| and i guess I should have looked for the source of getcwd:-p | 15:41 |
|
| emias: thanks | 15:42 |
| ← Modius left | 15:42 |
|
gp5st
| i'm new to bsd, so still getting my bearings on what's different | 15:42 |
|
jast
| question is if this can be solved in some way | 15:42 |
|
gp5st
| i'm more than willing to recomile it and use a local version (I'm using there's) | 15:43 |
| ← jmesnil left | 15:43 |
|
gp5st
| or maybe this has been fixed, the current is 1.6.2 and i have 1.6.1 | 15:43 |
| → Modius joined | 15:44 |
|
jast
| we can easily check in current master... | 15:44 |
|
| <master:builtin-init-db.c> | 15:44 |
|
Gitbot
| [git builtin-init-db.c]: http://tinyurl.com/cstooe [blob] | 15:44 |
|
jast
| no change in git | 15:44 |
|
gp5st
| so is there anyway around this? | 15:45 |
| ← bcardarella left | 15:45 |
| ← khmarbaise_ left | 15:45 |
|
jast
| you could patch git, I guess | 15:45 |
|
| but we'll have to cheat to avoid using getcwd | 15:46 |
| ← |chalky| left | 15:46 |
|
jast
| doener: have you got a link to that getcwd implementation? | 15:46 |
|
doener
| http://lists.freebsd.org/pipermail/freebsd-bugs/2008-March/029672.html | 15:46 |
|
| http://www.koders.com/c/fid62A3A6B5FEE22D0690D4CB56A912B777DCD0E014.aspx?s=mdef%3Amd5 | 15:46 |
| → Yuuhi joined | 15:46 |
|
gp5st
| :( /bin/pwd works for this; i wonder why | 15:47 |
|
jast
| I'd love to be able to strace that pwd binary | 15:47 |
|
doener
| jast: hm, actually, that's just BSD licensed and the google result text confused me... d'oh | 15:48 |
|
jast
| oh. | 15:48 |
| ← aspotashev left | 15:48 |
|
jast
| ht://Dig. I'll just close that tab and pretend I never opened it. | 15:48 |
|
| gp5st: do you know which bsd (and version) that is? | 15:48 |
|
gp5st
| jast: FreeBSD flure.pair.com 6.2-RELEASE-p12 FreeBSD 6.2-RELEASE-p12 #1: Wed Nov 26 15:06:45 EST 2008 | 15:49 |
|
| whoops, meant to get rid of the server name | 15:49 |
| ← hulo left | 15:50 |
| → sunblush joined | 15:50 |
| → hobodave joined | 15:52 |
| ← dwave left | 15:52 |
| → aspotashev joined | 15:53 |
| ← darrob left | 15:53 |
|
jast
| doener: the official getcwd in fbsd 6.2 does this too: http://svn.freebsd.org/viewvc/base/release/6.2.0/lib/libc/gen/getcwd.c?revision=165962&view=markup | 15:55 |
| ← ben_h left | 15:55 |
|
gp5st
| i've been trying to find which dir it was in | 15:55 |
|
| thanks | 15:55 |
|
jast
| me too, took some time :) | 15:56 |
| → EvanCarroll joined | 15:56 |
|
EvanCarroll
| is there anyway to checkout foo as bar | 15:56 |
|
jast
| it actually uses some __getcwd extern but I don't know where that comes from | 15:56 |
| ← stuffcorpse left | 15:57 |
|
jast
| EvanCarroll: git show <commit>:foo >bar | 15:57 |
| → stuffcorpse joined | 15:57 |
|
doener
| jast: ah, and I just found the note in my getcwd(3) man page, that that EACCES can only happen on Linux with an old kernel that doesn't have the getcwd syscall, nor is /proc/self/cwd available | 15:57 |
| → cgardner joined | 15:57 |
| ← giallu left | 15:57 |
|
doener
| gp5st: at this point, I'd ask on the mailing list, but there are quite a few getcwd() calls, so I'd not expect a "oh, we can change that easily" response | 15:59 |
|
gp5st
| i wouldn't expect that:-p | 15:59 |
|
| http://it.toolbox.com/blogs/bsd-guru/using-git-on-freebsd-13680 | 15:59 |
|
| i'm gonna see what one of the ports does, and then see if i can compile it | 16:00 |
|
jast
| that post is very old and also doesn't cover your issue, I think | 16:00 |
|
gp5st
| yeah, i was reading more through it | 16:01 |
| ← martins left | 16:02 |
| ← stuffcorpse left | 16:02 |
| → stuffcorpse joined | 16:03 |
| ← bentob0x left | 16:03 |
| → gafmtt joined | 16:03 |
|
emias
| gp5st: But you said that /bin/pwd works, right? | 16:03 |
| ← leanucci left | 16:03 |
| → leanucci joined | 16:03 |
|
emias
| That one simply calls getcwd(3), too: http://svn.freebsd.org/viewvc/base/release/6.2.0/bin/pwd/pwd.c?revision=165962&view=markup | 16:04 |
|
doener
| emias: hm, might be the $PWD fallback that works | 16:04 |
|
ilteris_
| hey guys, looks like I messed up my app, I already committed a working version and pushed it to the server, should I just delete everything from my system and clone a clean copy? | 16:05 |
|
| or should I just pull the version and merge it? | 16:05 |
| → fmdb joined | 16:05 |
|
emias
| doener: That's only read if /bin/pwd was called with the "-L" option. | 16:05 |
|
gwoo
| gp5st: if it helps im running 6.3-RELEASE-p2 with git 1.6.2.2 from ports | 16:05 |
|
jast
| okay, freebsd actually uses a getcwd syscall but it may not be present on all architectures or something | 16:05 |
|
gp5st
| hmm | 16:06 |
|
jast
| ilteris_: define "messed up" | 16:06 |
|
EvanCarroll
| jast: cool | 16:06 |
|
doener
| emias: oh, oops, got confused by the comment above the if... made me think that -L is the default | 16:06 |
| ferdy_ → ferdy | 16:06 |
|
ilteris_
| jast, well basically my app is not working as it was working yesterday, I messed up some code I think :| | 16:06 |
|
jast
| you could now use bisect to find the exact commit where things went wrong (if you made several new commits since then) | 16:07 |
|
ilteris_
| now I am not entirely sure if I pushed a working copy before this, it should the commit before or the one before that. So I need to get back a certain commit, how should I go with that? | 16:07 |
|
| oh exactly what I was looking for | 16:08 |
|
| how do I use bisect? | 16:08 |
|
emias
| gp5st: Just to make sure, could you try "git init" and "/bin/pwd" once again (from within the same shell and directory)? | 16:08 |
|
jast
| ilteris_: man git-bisect :) | 16:08 |
|
Gitbot
| ilteris_: the git-bisect manpage can be found at http://git.or.cz/man/git-bisect | 16:08 |
|
jast
| it has examples, I think | 16:08 |
|
gp5st
| /bin/pwd works | 16:08 |
| ← bewst left | 16:08 |
|
emias
| gp5st: And "git init" still spits out "cannot tell cwd"? | 16:08 |
|
gp5st
| that's super weird | 16:09 |
|
| so if i do git init after i relog in, it works | 16:09 |
| → bradly joined | 16:09 |
|
gp5st
| but then if i rm -r .git and then git init it works | 16:09 |
| → Alinermedia joined | 16:09 |
|
gp5st
| hmm, let me see if it's the same pattern with checkout | 16:09 |
|
doener
| gp5st: "relog in" == ? | 16:10 |
| ← kalle_ left | 16:11 |
|
doener
| gp5st: log out, log in, and do "git init" in $HOME? Or something else? | 16:11 |
| ← gotgenes left | 16:11 |
|
gp5st
| yeah, sorry | 16:12 |
|
| i meant log out, then log in | 16:12 |
|
| why would that work? | 16:12 |
|
doener
| gp5st: and you do that "git init" in $HOME? | 16:12 |
|
gp5st
| well, ~/repos; but yes, if i log out and log in it works, then if i rm -r .git and git init it doesn't | 16:13 |
|
doener
| gp5st: to get into ~/repos, do you "cd repos" or "cd ~/repos"? | 16:14 |
| ← Alinermedia left | 16:14 |
|
gp5st
| i start in $HOME and then cd repos | 16:14 |
|
doener
| hm, if you log out, log in and then "mkdir foo; cd foo; git init", does that work? | 16:15 |
| ← bradly left | 16:15 |
|
ilteris_
| hey jast is there any other way than using bisect in order to get another commit form the server rather than the last one? | 16:15 |
| ← vienova left | 16:15 |
|
gp5st
| well i can mkdir foo; cd foo; git init w/o logging out then in | 16:16 |
| → kalle_ joined | 16:16 |
| ← scientes left | 16:16 |
|
doener
| gp5st: you can come over and watch my head explode now | 16:17 |
|
jast
| ilteris_: you have local copies of all commits. you can easily return to any old version without ever talking to the server, actually. bisect is just a diagnosis tool that makes use of this. | 16:17 |
|
MarcWeber
| Do same tree contents always get the same hash? So is comparing $HASH^{tree} hashs the way to test for equality? | 16:17 |
|
emias
| gp5st: So you're not able to reproduce the problem within your new ~/foo directory? | 16:18 |
|
jast
| for example, you can throw away all newer commits by getting the commit ID of an older commit (e.g. using git log) and using git reset --hard <commit id> (this will throw away all uncommitted changes). | 16:18 |
|
ilteris_
| jast: yup I am checking out my old commits through gitx now, I have no clue how to "return" to those commits tho, bisect looks complicated to me :| | 16:18 |
|
sitaram
| MarcWeber: yes | 16:18 |
|
gp5st
| doener: there is a huge redmark on my forehead form problems like this | 16:18 |
|
jast
| I can't stay to give you any additional details. if you need something else than git reset, please ask everyone else about it. | 16:19 |
|
doener
| gp5st: hm, maybe, could you do "pwd -L" and "pwd -P" before the working "git init" and after the failing one? | 16:19 |
| → AkumaStreak joined | 16:19 |
|
sitaram
| MarcWeber: internally that's what git diff does I think, when you compare two tree-ish objects | 16:19 |
|
ilteris_
| jast thanks | 16:19 |
|
gp5st
| emias: if i rm -r .git then git init | 16:19 |
| → cody-somerville joined | 16:19 |
|
gp5st
| i can't | 16:19 |
| → javatexan joined | 16:19 |
|
gp5st
| i can't git init | 16:19 |
|
ilteris_
| man git-reset | 16:19 |
|
Gitbot
| ilteris_: the git-reset manpage can be found at http://git.or.cz/man/git-reset | 16:19 |
|
cody-somerville
| Whats the proper way to handle renames in git? | 16:19 |
| sdiz → sdiz-afk | 16:20 |
|
straszheim
| sorry, i have to reask here, i think i'm missing something dumb. I've got my git svn cloned repository, and I'm going to move the remote branches into the local namespase, so's I can put it up where people can clone and pull from it to track svn w/o using git-svn | 16:20 |
|
gp5st
| that hapens in $HOME and any subdir | 16:20 |
|
straszheim
| not worried about dcommitting from it | 16:20 |
|
| ("move the remote branches into the local namespace" is what I'm trying to grok) | 16:21 |
| ← jchris left | 16:21 |
|
jast
| straszheim: if you actually move them in the git-svn repo, git svn fetch will stop working | 16:21 |
|
doener
| straszheim: you can't "move" it, as git-svn would complain about writing to refs/heads/ stuff | 16:21 |
| → esparkma_ joined | 16:21 |
|
gp5st
| [me@compy ~]$ mkdir foo | 16:21 |
|
| [me@compy ~]$ cd foo | 16:21 |
|
| [me@compy ~/foo]$ ls -la | 16:21 |
|
| total 4 | 16:21 |
|
| drwxr-xr-x 2 me users 512 Apr 23 12:19 . | 16:21 |
|
| drwxr-xr-x 9 me users 512 Apr 23 12:19 .. | 16:21 |
|
| [me@compy ~/foo]$ git init | 16:22 |
|
| Initialized empty Git repository in /usr/home/me/foo/.git/ | 16:22 |
|
straszheim
| jast: ok, so i clone the git-svn repo | 16:22 |
|
gp5st
| [me@compy ~/foo]$ ls -la | 16:22 |
|
| total 6 | 16:22 |
|
| drwxr-xr-x 3 me users 512 Apr 23 12:19 . | 16:22 |
|
straszheim
| in the clone, i do the move | 16:22 |
|
gp5st
| drwxr-xr-x 9 me users 512 Apr 23 12:19 .. | 16:22 |
|
| drwxr-xr-x 6 me users 512 Apr 23 12:19 .git | 16:22 |
|
| [me@compy ~/foo]$ rm -r git | 16:22 |
|
| rm: git: No such file or directory | 16:22 |
| ← WALoeIII left | 16:22 |
|
jast
| gp5st: please paste lengthy things to a pastebin next time, e.g. http://git.pastebin.com/ | 16:22 |
|
gp5st
| [me@compy ~/foo]$ rm -r .git | 16:22 |
|
| [me@compy ~/foo]$ git init | 16:22 |
| ← sitaram left | 16:22 |
| ← knittl left | 16:22 |
|
gp5st
| fatal: cannot tell cwd | 16:22 |
|
| [me@compy ~/foo]$ | 16:22 |
|
| ugh | 16:22 |
|
| i copied the pastebin address | 16:22 |
|
| http://pastebin.com/m3b6e1d04 | 16:22 |
|
| sorry about that | 16:22 |
|
jast
| anyway, gotta go | 16:22 |
|
gp5st
| jast: i know:( i hit cmd-c and ... | 16:22 |
|
| jast: cya, thanks for your help | 16:22 |
| → knittl joined | 16:22 |
|
straszheim
| jast: k, thx | 16:22 |
|
emias
| gp5st: And then, /bin/pwd still works? | 16:23 |
|
doener
| gp5st: that misses the "pwd -L/-P" calls I asked for :-/ | 16:23 |
| → romao joined | 16:24 |
|
gp5st
| sorry | 16:24 |
|
| h/o | 16:24 |
|
| http://pastebin.com/m1f6e1df4 they're at the bottom | 16:25 |
|
doener
| straszheim: http://pastebin.com/m2089dc0b | 16:26 |
|
gp5st
| err, sorry, /bin/pwd does the same thing | 16:26 |
|
doener
| straszheim: that's basically it. The push does the renaming | 16:26 |
|
| straszheim: as you already have the svn clone, you can of course skip the "git svn clone" step | 16:26 |
|
emias
| gp5st: What's the output of "truss git init 2>&1 | grep getcwd"? | 16:26 |
|
doener
| gp5st: and before the working "git init"? | 16:27 |
|
| straszheim give it a go | 16:27 |
| → vienova joined | 16:27 |
| → mfilipe joined | 16:28 |
|
| straszheim would never have thought about creatively using 'push' | 16:28 |
| → willb joined | 16:28 |
|
gp5st
| emias: downer: so i made a ~/baz dir and then ran that comment, it took a few seconds, then returned a prompt, then an ls -la showed no .git dir | 16:29 |
|
| truss: cannot open /proc/curproc/mem: Permission denied | 16:29 |
|
| truss: cannot open1 /proc/84354/mem: Permission denied | 16:29 |
|
| i get these idk if they're an issue | 16:29 |
|
emias
| gp5st: Next try: ktrace git init | 16:30 |
|
gp5st
| -bash: /usr/bin/ktrace: Permission denied | 16:30 |
|
emias
| Ugh. | 16:30 |
|
gp5st
| i love being an unprivlaged user:( | 16:30 |
|
emias
| Should work just fine as an unprivileged user (normall) ... | 16:30 |
|
| (normally) | 16:31 |
| ← fmdb left | 16:31 |
|
doener
| gp5st: what does "pwd -L", "pwd -P", "echo $PWD" tell right after login? | 16:31 |
|
gp5st
| my home dir | 16:32 |
| → Alinermedia joined | 16:32 |
| ← tal67 left | 16:32 |
|
gp5st
| grrrrr, i keep forgetting to sanatize those:-\ | 16:32 |
|
doener
| /usr/home/... or /home/... ? | 16:32 |
| → esparkm__ joined | 16:32 |
| ← shruggar left | 16:33 |
| ← Alinermedia left | 16:33 |
|
gp5st
| http://pastebin.com/m318a82f4 that's right after login | 16:33 |
|
doener
| ok | 16:34 |
| → vbabiy joined | 16:34 |
|
telmich
| gp | 16:34 |
| ← esparkman left | 16:34 |
| ← sgrimm left | 16:34 |
| → mfilipe_ joined | 16:35 |
| → bcardarella joined | 16:35 |
|
gp5st
| i'm sorry:( I swear i'm not making this up ::bangs head against all:: | 16:35 |
| → aresnick joined | 16:36 |
| ← Chaser left | 16:36 |
| ← raimo_ left | 16:36 |
| → WALoeIII joined | 16:36 |
| ← aresnick left | 16:36 |
| → sekimura joined | 16:37 |
| → leanucci_ joined | 16:38 |
|
EvanCarroll
| jast: doesn't work says to use '--' to seperate path from revisions | 16:38 |
| ← leanucci left | 16:38 |
|
EvanCarroll
| fatal: ambiguous argument 'HEAD:Reference.pm': unknown revision or path not in the working tree. | 16:38 |
| ← gafmtt left | 16:39 |
| → solofight joined | 16:39 |
| → leanucci joined | 16:39 |
| → sergiodj joined | 16:42 |
| → Alinermedia joined | 16:42 |
|
doener
| EvanCarroll: which command? And is Reference.pm really in the root directory of the repo? | 16:42 |
| ← naeu_ left | 16:43 |
|
gp5st
| i just can't win:-\ even once i have the repo there, i can't clone them, it hangs up on me right after/when it sends the objects | 16:43 |
| → rinogo joined | 16:43 |
|
rinogo
| Hey all! | 16:44 |
| ← esparkma_ left | 16:44 |
|
rinogo
| Can someone please help me understand the difference between 'git clone ...' and 'git add remote ...'? | 16:44 |
|
gp5st
| git clone makes a copy of the repo | 16:44 |
| ← cody-somerville left | 16:45 |
|
RandalSchwartz
| git clone - make a local repo pulled from a remote | 16:45 |
|
| git add remote, just add a remote that you can fetch from | 16:45 |
|
| or push to | 16:45 |
|
gp5st
| git add remote makes an entry for a server in teh config a short name for it if you will | 16:45 |
|
RandalSchwartz
| no objects are transferred | 16:45 |
|
gp5st
| ditto, git add remote doesn't download or send anything | 16:45 |
|
doener
| git clone ~= git init + git remote add + git fetch + git checkout | 16:46 |
|
rinogo
| Hmmm... So, I have a git repo already set up on my VPS (Centos 5) that I can use without incident locally from the system. However, I'd like to be able to work locally on my OS X laptop and check in to the git repo on the server... Which command is right for me? | 16:46 |
| ← sergiodj left | 16:46 |
|
doener
| oops, add "git branch" in between fetch and checkout | 16:46 |
| ← ajonat_ left | 16:47 |
|
Zathrus
| doener: can't that be done as part of the checkout? | 16:47 |
| → RodP2 joined | 16:50 |
|
doener
| Zathrus: sure, the fetch can also be done by "remote add" if you use -f | 16:50 |
| → peti` joined | 16:50 |
|
doener
| Zathrus: but the idea was to show the involved "high level" steps in the clone command, having convienience stuff in that list seems wrong ;-) | 16:51 |
| ← marc_kdab left | 16:51 |
| → btanaka joined | 16:51 |
|
peti`
| Is it possible set an "Author" attribute on a commit in the history? When I made the commit, I didn't specify an author (other than the committer, me), but now I'd like the commit to show who sent the patch. How can I do that? | 16:52 |
|
rinogo
| So, would you guys say I want to do a git clone or a git add repo? | 16:52 |
|
wereHamster
| peti`: how far back in the history is the commit? | 16:53 |
|
gp5st
| when i do a git clone, aorund halfway through the receiving objects stage, the remote hangs up. is there anyway to figure out why? can ssh be set up to hang up if there is no login shell started after so long? could it be a problems with the remotes? I did git fsck on them and thena repack | 16:53 |
|
rinogo
| (" locally from the system. However, I'd like to be able to work locally on my OS X laptop and check in to the git repo on the server... Which command is right for me?") | 16:53 |
|
peti`
| wereHamster: Very far, unfortunately. | 16:53 |
|
wereHamster
| peti`: changing the author is not possible without rewriting history. Are you aware of the implications? | 16:53 |
| ← mfilipe left | 16:53 |
| → qhoxie joined | 16:54 |
|
peti`
| wereHamster: A little. I know the basic repository format, etc., and I can use rebase --interactive and such. | 16:54 |
|
gp5st
| ringo: clone the repo, then you can push your changes back to the remote after you make them | 16:54 |
|
| rinogo: | 16:54 |
|
rinogo
| gp5st: Thanks :) | 16:54 |
| → ttelford joined | 16:55 |
|
wereHamster
| peti`: if other people cloned your repo and you rewrite the history, it will cause them some problems when pulling from you again. | 16:55 |
|
peti`
| wereHamster: I misread you. I read "implementation". :-) Sorry. No, what are the implications of attaching an Author afterwards? | 16:55 |
|
| wereHamster: I see. That's fine with me though, that wouldn't be a problem. | 16:56 |
| ← ttelford left | 16:56 |
|
wereHamster
| peti`: I wouldn't suggest you interactive rebase, instead look at git-filter-branch | 16:56 |
| → jceb joined | 16:56 |
|
peti`
| wereHamster: Very nice! Thank you for the tip. | 16:57 |
|
wereHamster
| peti`: with --env-filter and set GIT_AUTHOR_NAME/EMAIL | 16:57 |
| → hugoxrosa joined | 16:57 |
| → woei joined | 16:58 |
| ← leanucci_ left | 16:59 |
|
peti`
| wereHamster: This is exactly what I was looking for. Thanks for your help. | 17:00 |
| ← troyt left | 17:00 |
| ← galderz left | 17:00 |
| → LiamH joined | 17:01 |
| ← jmesnil_ left | 17:02 |
| → gberdyshev_ joined | 17:02 |
| → troyt joined | 17:04 |
| → d0k_ joined | 17:05 |
| → static^_ joined | 17:05 |
|
hobodave
| is there a shortcut to add [branch "master"]\n remote = origin \n merge = refs/heads/master into my .git/config ? | 17:05 |
|
| it's annoying to have to edit that every time I create a repo | 17:05 |
|
wereHamster
| hobodave: man git-config | 17:06 |
|
Gitbot
| hobodave: the git-config manpage can be found at http://git.or.cz/man/git-config | 17:06 |
|
peti`
| hobodave: "git config" might solve that? | 17:06 |
| → khmarbaise joined | 17:06 |
|
hobodave
| that's still me doing the same work | 17:07 |
|
| is this a fairly recent change in git? | 17:07 |
|
wereHamster
| also, which version are you using? I never had to add these lines to the config file, git always created them for me | 17:07 |
|
peti`
| hobodave: In a cloned repository, git creates those entries automatically. At lesst, it does when I say "git checkout -b foo origin/foo". | 17:07 |
|
hobodave
| peti`: I'm creating the repo locally | 17:07 |
|
| then pushing it to the remote origin | 17:07 |
|
| so it only happens on 'new' ones | 17:08 |
|
| so git-config is unavoidable? | 17:08 |
| → joevano joined | 17:08 |
|
wereHamster
| well, then how should git know which remote to track? :) | 17:08 |
|
peti`
| hobodave: Why can't you clone the external repo, work in there, and say "git push"? Where is the difference to the setup you use now? | 17:08 |
| → markelikalderon joined | 17:08 |
|
hobodave
| peti`: this is a NEW repo | 17:09 |
|
| there is no external repo | 17:09 |
|
wereHamster
| hobodave: then you have to do it manually, as git can't magically know whcih remote you want to track | 17:09 |
|
peti`
| hobodave: Well, than Git can't know about any external repos when you create a branch. You'll have to do it manually, I guess. | 17:09 |
| → kbingham joined | 17:10 |
|
hobodave
| yep | 17:10 |
|
| I understand now | 17:10 |
|
| thanks guys | 17:10 |
| → giallu joined | 17:10 |
| → ben_h joined | 17:10 |
| ← stuffcorpse left | 17:11 |
| ← kalle_ left | 17:11 |
| ← peti` left | 17:11 |
| → stuffcorpse joined | 17:11 |
| ← jaeckel left | 17:12 |
| ← d0k left | 17:12 |
| ← bdimcheff left | 17:13 |
| ← troyt left | 17:14 |
|
ilteris_
| what's the command for resetting a specific file from a specific commit? | 17:15 |
|
PerlJam
| ilteris_: git checkout <commit> -- <path to file> # I think. (too hungry to be sure) | 17:16 |
| → kalle_ joined | 17:17 |
|
ilteris_
| thanks PerlJam I'll check it now | 17:17 |
| ← gp5st left | 17:17 |
| → Dashkal joined | 17:19 |
| → solar_ant joined | 17:19 |
| ← gberdyshev left | 17:19 |
| → dreiss joined | 17:20 |
| → sgrimm joined | 17:21 |
| → troyt joined | 17:22 |
| → naeu joined | 17:22 |
| → schacon joined | 17:22 |
| ← vbabiy left | 17:23 |
| ← solar_ant left | 17:24 |
| ← ben_h left | 17:25 |
| ← kbingham left | 17:25 |
| ← Pewpewarrows left | 17:27 |
| ← g3d left | 17:27 |
| ← gitte left | 17:28 |
|
hobodave
| is this the appropriate forum to ask about gitosis? | 17:28 |
| ← brtzsnr left | 17:29 |
|
hacim
| doener: forgot to say thanks for the help yesterday with the git branch renaming :) | 17:29 |
|
| that was exactly what I was missing | 17:29 |
|
Dashkal
| hobodave: There are people in here familiar with it. Ask. If anybody can help they likely will answer. | 17:30 |
| → Pewpewarrows joined | 17:30 |
|
hobodave
| can I add multiple keys for a user to their keydir/user.pub ? | 17:30 |
|
hacim
| hobodave: yes you can | 17:31 |
|
hobodave
| nice! | 17:31 |
|
hacim
| hobodave: in the same way you would just concatenate them in an authorized_keys file | 17:31 |
|
hobodave
| I was hoping so, but was afraid to try in case it locked me out | 17:31 |
| → solar_ant joined | 17:31 |
| ← grahal left | 17:32 |
| → mooseish joined | 17:32 |
| ← solar_ant left | 17:32 |
| → jas4711 joined | 17:34 |
| ← ben_h_ left | 17:34 |
| ← jas4711 left | 17:35 |
| → cpg joined | 17:36 |
| → solar_ant joined | 17:36 |
| ← yec left | 17:36 |
| → gaveen joined | 17:36 |
| ← hdl left | 17:36 |
| → bobesponja joined | 17:36 |
| → jas4711 joined | 17:36 |
| → aresnick joined | 17:37 |
| ← vienova left | 17:37 |
| ← thumper left | 17:37 |
| ← aresnick left | 17:37 |
| ← markelikalderon left | 17:37 |
| → hdl2 joined | 17:38 |
| ← willb left | 17:40 |
| → ttelford_ joined | 17:42 |
| → g3d joined | 17:42 |
| → chalky joined | 17:43 |
| aspotashev_ → aspotashev|eeepc | 17:43 |
| → Chommik joined | 17:46 |
|
Chommik
| hello | 17:46 |
| ← troyt left | 17:46 |
| ← ttelford_ left | 17:47 |
| ← bcardarella left | 17:48 |
| ← RaySl left | 17:48 |
| → troyt joined | 17:49 |
| → hyperair joined | 17:49 |
|
btanaka
| is it possible to sort the branches listed via "git branch" in chronological order (based on date the branches were created)? | 17:49 |
| → RaySl joined | 17:49 |
| ← g3d left | 17:50 |
| ← srid left | 17:52 |
| ← qrush left | 17:52 |
| ← doener left | 17:52 |
| → doener joined | 17:52 |
| → saurabh1403 joined | 17:53 |
| → reprore_ joined | 17:54 |
| ← tono left | 17:54 |
| ← solar_ant left | 17:55 |
| → g3d joined | 17:55 |
|
khmarbaise
| What is the best way to migrate a subversion repository to Git? | 17:55 |
| ← troyt left | 17:55 |
| → leanucci_ joined | 17:56 |
| → troyt joined | 17:56 |
| ← priidu left | 17:57 |
| ← leanucci left | 17:57 |
|
bremner
| man git-svn | 17:59 |
| ← dodo_the_last left | 17:59 |
|
Gitbot
| bremner: the git-svn manpage can be found at http://git.or.cz/man/git-svn | 17:59 |
|
bremner
| khmarbaise: ^^ | 17:59 |
| → stianhj joined | 18:00 |
| ← reprore_ left | 18:00 |
|
khmarbaise
| bremner: If i understand the page correct it is intended to just synchronize a single branch/trunk with git and migrate the full history of a repository... | 18:00 |
| ← solofight left | 18:00 |
| ← aspotashev left | 18:00 |
|
bremner
| khmarbaise: what do you want to do? | 18:01 |
| → priidu joined | 18:01 |
|
khmarbaise
| bremmer: /and migrate/and not migrate/ | 18:01 |
|
| bremmer: I would like to migrate the full history with all branches to git without loosing branches, cause I'm working on different branches .... | 18:01 |
| → aspotashev joined | 18:01 |
| ← hyperair left | 18:02 |
| → solofight joined | 18:02 |
|
khmarbaise
| and of course the tags as well... | 18:03 |
| ← kuadrosx left | 18:03 |
| ← ngng left | 18:03 |
|
bremner
| khmarbaise: hmm, ok. it can be done, I guess. See --branches and --tags for start. I don't have any personal experience with svn branches, so I'll leave it for more informed folk | 18:04 |
|
justatheory
| doener++ # Thanks for the help yesterday, `git filter-branch --tag-filter cat -- --all` did the trick. | 18:05 |
|
Nilbus
| how do you reset 1 file to how it was at HEAD? | 18:05 |
| ← hugoxrosa left | 18:06 |
| → markelikalderon joined | 18:06 |
| ← troyt left | 18:06 |
|
stianhj
| i just did a git clone of my remote repo, and after successfully completing I run git status, and tells me a file is "Changed but not updated".. there were no files before, and I haven't changed the file after cloning. So I run a diff on the file, and git has removed every single line, and added the exact lines again (@@ -1,370 +1,370 @@). what's wrong here? | 18:07 |
| → earcar joined | 18:07 |
| → iso42 joined | 18:07 |
| → radarek joined | 18:08 |
|
khmarbaise
| bremner: I have a account on github.com and tried to migration there and it seemed to be working...but now i would like to do the same my own...some other hint ? | 18:10 |
| → aspotashev_ joined | 18:10 |
| ← aspotashev left | 18:10 |
| ← aspotashev|eeepc left | 18:10 |
| ← cannonball left | 18:11 |
| ← kalle_ left | 18:11 |
| → kalle_ joined | 18:11 |
|
bremner
| khmarbaise: afaik, git-svn with --branch --tags or --stdlayout should work for you, _If_ you svn layout is not too creative | 18:11 |
| → cannonball joined | 18:12 |
| → jrmuizel joined | 18:12 |
|
stianhj
| s | 18:12 |
| → kuadrosx joined | 18:13 |
| → priidu_ joined | 18:15 |
| → solar_ant joined | 18:15 |
| → FreakGuard_ joined | 18:16 |
| ← priidu left | 18:16 |
| ← FreakGuard left | 18:16 |
| ← Pewpewarrows left | 18:17 |
| → troyt joined | 18:18 |
|
PuffTheMagic
| i cant seem to get git to track some latex files | 18:18 |
| → Grahack joined | 18:18 |
| ← Tv left | 18:18 |
|
khmarbaise
| Hm...i have tried to convert via git svn info URL --stdlayout (and --trunk etc.) but after git svn fetch is ready i do "git branch -l" and see only "* master" nothing else..... | 18:18 |
|
PerlJam
| git branch -a | 18:19 |
|
| (I'm fairly sure it's not going to make local branches for you) | 18:20 |
|
Chommik
| is there any tutorial saying how to create a repo on apache server? i found something on google, but it don't work for me | 18:20 |
| → Pewpewarrows joined | 18:21 |
| → wwwald joined | 18:21 |
|
bremner
| khmarbaise: git branch -a ? | 18:21 |
| ← Fullmoon left | 18:22 |
|
kusma
| hahahhaha | 18:22 |
|
| BTD er paa nrk2 | 18:22 |
| → qrush joined | 18:22 |
| → hugoxrosa joined | 18:22 |
|
kusma
| whops | 18:22 |
|
PuffTheMagic
| how do I tell git to track a new file type | 18:23 |
|
| it seems to be ignoring .tex files | 18:23 |
|
stianhj
| check your .gitignore file? | 18:23 |
| tag_ → tag | 18:23 |
|
stianhj
| kusma: BTD? på nrk2? | 18:24 |
|
kusma
| stianhj: feil vindu ;) | 18:24 |
| → cilly joined | 18:24 |
|
stianhj
| hehe, ok | 18:24 |
| → dodo_the_last joined | 18:24 |
|
stianhj
| Chommik: http://tinyurl.com/fomkq | 18:24 |
| → jkp joined | 18:25 |
| ← jkp_ left | 18:25 |
|
stianhj
| Chommik: That's "Howto setup git server over http (apache)" | 18:25 |
|
Chommik
| stianhj: i was doing as it says, but I get an error from apache | 18:25 |
|
rinogo
| gp5st: BTW, thanks for the help - git clone seems to have done the trick. | 18:26 |
|
Chommik
| stianhj: http://rafb.net/p/THOqqT57.html | 18:27 |
|
| i set DavLockDB in httpd.conf but it makes no difference | 18:27 |
| → davidad joined | 18:29 |
| → nurey joined | 18:29 |
| ← markelikalderon left | 18:30 |
| → altrux joined | 18:31 |
| ← rinogo left | 18:32 |
| → tasmani joined | 18:32 |
| ← tasmani left | 18:33 |
| ← solar_ant left | 18:34 |
| FreakGuard_ → FreakGuard | 18:34 |
| ← cbreak|evil left | 18:35 |
| → bryanl joined | 18:37 |
| ← ceyusa_ left | 18:38 |
| → markelikalderon joined | 18:38 |
| → bcardarella joined | 18:38 |
| ← bryanl left | 18:39 |
| ← DavidKlein left | 18:39 |
| ← solofight left | 18:39 |
| → cbreak joined | 18:41 |
| → darrob joined | 18:43 |
| ← alanhaggai left | 18:43 |
| ← catalis left | 18:46 |
| ← cilly left | 18:48 |
| → catalis joined | 18:49 |
| → Skiessi joined | 18:49 |
|
Skiessi
| is there anything which does what one would assume 'git log --branch foo' to do? | 18:50 |
|
krh
| Skiessi: what do you expect it to do? | 18:52 |
|
| git log foo will show you the commit log for the branch foo | 18:53 |
|
Skiessi
| okay | 18:53 |
| ← Skiessi left | 18:53 |
| → willb joined | 18:55 |
| → bryanl joined | 18:56 |
|
justatheory
| So now I have a git repo migrated from an old cvs repo, and one migrated from a later svn repo. | 18:58 |
| → MateuszDraco joined | 18:58 |
|
justatheory
| There are some branches common between these two repos, and some that are not. | 18:58 |
|
| How can I stitch them together into a single repo with complete history? | 18:58 |
| → tono joined | 19:00 |
|
justatheory
| I used the examples here: http://git.or.cz/gitwiki/GraftPoint?highlight=%28graft%29 | 19:00 |
|
| better link: http://git.or.cz/gitwiki/GraftPoint | 19:01 |
| → solofight joined | 19:01 |
|
solofight
| help | how can i create a git repo which is accessible by anybody over http | 19:02 |
|
justatheory
| That seems to work, but branches in the cvs repo that arent in svn don't show up. | 19:02 |
|
solofight
| i read abt http auth | 19:02 |
|
| but i dont know basics such as assigning git:// protocol to my repo | 19:02 |
|
| any links | 19:02 |
|
| plz guide me | 19:02 |
|
Ilari
| justatheory: Basically, pick canonical version and make all children of noncanoical ones children of the canonical one. Also, update all refs to noncanonical commits point to canonical equivalents. | 19:02 |
|
justatheory
| Ilari: Sorry, not able to parse that. | 19:03 |
|
Ilari
| justatheory: Also, maybe remote tracking branch behaviour is involved? | 19:03 |
|
MateuszDraco
| hi! is there any good windows git client for windows with nice, neat gui? ;) | 19:03 |
|
justatheory
| Ilari: Yeah, all the branches appear to be remotes. | 19:04 |
| ← aspotashev_ left | 19:04 |
|
Ilari
| justatheory: Remotes aren't cloned on git clone. | 19:04 |
| ← intripoon left | 19:04 |
|
justatheory
| Ilari: Hrm. | 19:04 |
| → cilly joined | 19:05 |
|
justatheory
| Okay, I created my cvs and svn migrations by doing a lot of grafting, running `git filter-branch`, and then cloning to drop the dupes. | 19:05 |
|
| The branches had been both local and remote, but were remote only in the clone. | 19:05 |
|
Ilari
| solofight: For git://, you need git-daemon + mark the repo as exportable. For HTTP fetching, you need to put the repo files somewhere accessable and run git update-server-info after EVERY update to repo. | 19:05 |
| ← loincloth left | 19:05 |
| → loincloth joined | 19:05 |
|
justatheory
| Ilari: Does that sound right? | 19:07 |
| ← wshimmy left | 19:07 |
| ← stuffcorpse left | 19:07 |
| ← Pewpewarrows left | 19:08 |
|
Ilari
| justatheory: Yeah, about right. | 19:08 |
|
justatheory
| Okay | 19:08 |
|
| So the trick is to make the old branches from cvs show up in the svn to git repo | 19:08 |
| ← catalis left | 19:08 |
|
justatheory
| I copied of the pack files, and the commits show up, but not the branches. | 19:08 |
|
| Do I need to make them local first? | 19:08 |
| ← aisbaa left | 19:09 |
|
Ilari
| justatheory: Yeah, make them local before cloning... The local branch stuff is in packed-refs and refs/heads | 19:09 |
| ← priidu_ left | 19:10 |
| ← cedricv left | 19:10 |
|
justatheory
| and by "before cloning" you mean "before copying the files in .git/objects/pack"? | 19:10 |
| ← kalle_ left | 19:11 |
| → Pewpewarrows joined | 19:11 |
|
justatheory
| Ilari | 19:11 |
|
Ilari
| justatheory: Why are you copying those files between repos manually? | 19:11 |
|
justatheory
| Ilari: Was following http://git.or.cz/gitwiki/GraftPoint | 19:11 |
|
| The two scripts at the end | 19:11 |
| → e_6 joined | 19:11 |
| ← bcardarella left | 19:11 |
| → kalle_ joined | 19:12 |
|
Ilari
| justatheory: And just copying packs might not suffice. There can also be loose objects. | 19:12 |
|
justatheory
| Ah | 19:12 |
|
| So I can clone from the cvs repo to an existing svn repo? | 19:12 |
| → loinclot_ joined | 19:12 |
|
justatheory
| hrm, not according to the `git clone` docs… | 19:13 |
|
Ilari
| justatheory: Clone doesn't work if destination exists. Perhaps you want fetch instead? | 19:13 |
| ← loincloth left | 19:13 |
| → xyz joined | 19:13 |
|
justatheory
| Ilari: I dont' know. That's what I'm trying to figure out. | 19:13 |
| → earcar_ joined | 19:13 |
|
Ilari
| justatheory: fetch copies branches whole. | 19:13 |
|
justatheory
| Oh, that looks promising | 19:14 |
| → priidu joined | 19:14 |
|
| justatheory reads `git help fetch` | 19:14 |
|
stianhj
| i just did a git clone of my remote repo, and after successfully completing I run git status, and tells me a file is "Changed but not updated".. there were no files before, and I haven't changed the file after cloning. So I run a diff on the file, and git has removed every single line, and added the exact lines again (@@ -1,370 +1,370 @@). what's wrong here? | 19:15 |
|
Ilari
| stianhj: Msysgit? | 19:15 |
|
stianhj
| Ilari: yes | 19:15 |
|
Ilari
| stianhj: Probably automatic CRLF translation screwing up for some reason... | 19:16 |
|
stianhj
| Ilari: good point.. didn't think of that. annoying.. | 19:16 |
| hdl2 → hdl | 19:17 |
|
Ilari
| stianhj: If your editors can load LF-only files, you could set CRLF translation to be input only. | 19:17 |
|
| stianhj: 'git config --global core.autocrlf input'. | 19:17 |
|
stianhj
| this is a project developed on linux, but I cloned it at home to have a look at it.. | 19:18 |
|
| isn't there a line ending conversion thingy in msysgit? | 19:18 |
| → sergiodj joined | 19:18 |
| ← MateuszDraco left | 19:18 |
|
Ilari
| stianhj: You could try setting CRLF conversion to be input only (using above command) and then using git reset --hard... | 19:19 |
|
stianhj
| ok | 19:19 |
|
Ilari
| stianhj: Or better yet, instead of reset, 'git checkout -f'. | 19:19 |
|
stianhj
| the -f is? | 19:19 |
|
Ilari
| stianhj: Force. | 19:19 |
|
stianhj
| i tried git checkout filename earlier, didn't do anything | 19:20 |
|
solofight
| Ilari: can i pm you ?> | 19:20 |
|
stianhj
| git reset --hard, tells me HEAD is at the last commit, but git status gives a modified file | 19:20 |
|
Ilari
| solofight: man git-daemon talks about how to mark repo as exportable. | 19:21 |
|
Gitbot
| solofight: the git-daemon manpage can be found at http://git.or.cz/man/git-daemon | 19:21 |
|
stianhj
| Ilari: git checkout filename -f does nothing as well | 19:21 |
| → seangrove joined | 19:22 |
|
Ilari
| stianhj: And those files are still listed as modified? | 19:22 |
| cpg → cpg|away | 19:22 |
|
stianhj
| yes | 19:22 |
| ← gwoo left | 19:22 |
|
justatheory
| Ilari: If I use `git fetch`, should I fetch new commits from svn into the older repo from cvs, or the other way around? Or does it matter? | 19:23 |
|
Ilari
| justatheory: Doesn't really matter. | 19:23 |
| → Modius_ joined | 19:23 |
|
justatheory
| ok | 19:23 |
|
| justatheory tries it | 19:23 |
| → ceej joined | 19:23 |
|
Ilari
| justatheory: Or actually, CVS to SVN, because CVS tends to be fixed and can be filter-branched before fetch. | 19:23 |
|
| justatheory is confused again. | 19:24 |
| ← cannonball left | 19:24 |
|
justatheory
| Sorry, I'm quite the git newbie and am still trying to understand the huge panoply of commands. | 19:24 |
|
Ilari
| justatheory: Fetching commits that have active grafts rules might result something broken. | 19:24 |
|
| LotR is reminded he owes justatheory a reply email | 19:24 |
|
| stianhj is brb | 19:24 |
|
justatheory
| Ilari: Ah, yes. I've already run filter-branch in both repos. | 19:24 |
|
Ilari
| justatheory: Then it doesn't really matter. | 19:25 |
|
justatheory
| okay | 19:25 |
| loinclot_ → loincloth | 19:25 |
| ← Chommik left | 19:26 |
|
justatheory
| That looks better. | 19:26 |
| → gitte joined | 19:26 |
|
justatheory
| All the tags were copied, but not the branches. | 19:26 |
|
| So I guess I need to make the branches local first? | 19:26 |
|
Ilari
| justatheory: With suitable refspecs, it can copy remote branches as well. | 19:27 |
|
justatheory
| Oh, I didn't specify any. | 19:27 |
|
| justatheory isn't sure what a refspec is | 19:27 |
| → robinr joined | 19:27 |
| → rudi_s joined | 19:28 |
| → dwave joined | 19:28 |
|
solofight
| Ilari: have a doubt , stuick in middle plz help me | 19:28 |
| ← earcar_ left | 19:28 |
|
Ilari
| justatheory: Basically, it specifies what branches to transfer and what names to save them as. | 19:28 |
|
solofight
| inside /version/ i typed git-init | 19:28 |
|
| and git add 2009 | 19:29 |
| ← earcar left | 19:29 |
|
solofight
| git commit | 19:29 |
|
justatheory
| Ilari: Ah, I want all branches and their named kept the same. | 19:29 |
| → bcardarella joined | 19:29 |
|
Ilari
| justatheory: Basic from is 'refs/heads/foo:refs/heads/bar', copy local branch 'foo' and save as local branch 'bar'. | 19:29 |
|
justatheory
| Though there are three branches that exist in both, so I use grafts to hook them up. | 19:29 |
|
solofight
| now should i be inside /version/and type git-daemon -export-all ? | 19:29 |
|
Ilari
| solofight: Probably 'git daemon --detach --verbose --export-all' (that pretty much the minimum)... | 19:30 |
|
| solofight: But then repo paths when fetching are relative to _filesystem root_. | 19:31 |
| → mugwump joined | 19:31 |
|
Ilari
| solofight: And you shouldn't export working repos, as they can be too unstable to publish. | 19:31 |
|
solofight
| oh,... | 19:31 |
|
| so what should i do ? | 19:31 |
| ← Dashkal left | 19:32 |
| → plasticine joined | 19:32 |
|
stianhj
| Ilari: any ideas? | 19:33 |
|
Ilari
| solofight: Create repo somewhere using 'git init --bare', then go to original repo and 'git remote add public <path of new repo>', 'git push public master' so it pushes your branch to that public repo. Them others can clone that. | 19:33 |
|
| stianhj: Maybe try 'git checkout .'? | 19:33 |
|
| stianhj: Maybe try 'git checkout HEAD .'? | 19:33 |
|
| stianhj: You did change CRLF mode to input translation only? | 19:34 |
|
stianhj
| Ilari: git checkout . and git checkout HEAD . and git checkout HEAD filename, etc doesn't do anything | 19:36 |
|
| Ilari: and yes I did the input translation thing | 19:37 |
| ← Modius left | 19:37 |
|
Ilari
| stianhj: What does 'git config core.autocrlf' yield? | 19:39 |
| → hyperair joined | 19:39 |
|
stianhj
| Ilari: input | 19:39 |
|
Ilari
| stianhj: Hmm... Wonder why it doesn't overwrite those files... | 19:40 |
| → chris2 joined | 19:40 |
| ← lorandi left | 19:41 |
| ← javatexan left | 19:41 |
|
solofight
| Ilari: i did all what you said | 19:41 |
|
stianhj
| Ilari: I did a clean clone as well, no difference | 19:41 |
|
solofight
| then i have to go to new repo and type git daemon --verbose --detach --export-all | 19:42 |
|
| ? | 19:42 |
| → intripoon joined | 19:42 |
|
Ilari
| solofight: No need to go to the repo. That git daemon command can be run from anywhere. | 19:42 |
|
solofight
| ok | 19:42 |
|
| now i executed the git daemon | 19:43 |
|
| now wat i do ? | 19:43 |
| ← woei left | 19:43 |
| → cannonball joined | 19:43 |
|
solofight
| how do i get that to my local system ? | 19:43 |
|
Ilari
| solofight: 'git clone git://server/path/to/repo.git' maybe. Note, the path is relative to filesystem root. | 19:44 |
| → Dashkal joined | 19:44 |
| ← hyperair left | 19:46 |
|
SRabbelier
| I'm getting " MSGFMT po/de.msg make[1]: *** [po/de.msg] Error 127" while making git.git on my new Ubuntu 9.04 VM, ring any bells with anyone? | 19:46 |
| → hyperair joined | 19:46 |
|
Fissure
| gettext not installed? | 19:46 |
|
SRabbelier
| Fissure: very well possible | 19:47 |
| ← mugwump left | 19:47 |
|
Ilari
| SRabbelier: Looks like msgfmt not found. | 19:47 |
|
SRabbelier
| Ilari: msgfmt == gettext? | 19:47 |
| → iListenU joined | 19:48 |
| → zpoley1 joined | 19:48 |
|
SRabbelier
| ah, msgfmat is provided by gettext | 19:48 |
|
iListenU
| Please help, i get problem in: http://parduoduv.puslapiai.lt at header error. (top). What can it be? | 19:48 |
|
| SRabbelier installs gettext | 19:48 |
| ← iListenU left | 19:48 |
|
zpoley1
| hey guys - how do you revert a single file's changes that haven't even been git added yet? | 19:48 |
|
Ilari
| zpoley1: 'git checkout file'? | 19:48 |
| ← saurabh1403 left | 19:48 |
|
zpoley1
| Ilari: great! thank you | 19:49 |
|
SRabbelier
| zpoley1: or 'git checkout HEAD -- file' if you did add them ;) | 19:49 |
| → Kimmie joined | 19:49 |
|
zpoley1
| SRabbelier: very nice. thank you | 19:50 |
| → mw joined | 19:51 |
| ← ceej left | 19:51 |
|
| SRabbelier wonders if git's makefile could be made more forgiving | 19:51 |
| ← Dashkal left | 19:52 |
|
SRabbelier
| then again, I guess that's what ./configure is for | 19:52 |
| ← dwave left | 19:52 |
|
Grum
| while in a rebase -i how can i actually edit the things the commit changed? it appears i can only do a commit --amend and when i ask for git status it tells me i it is all clean (i sortof expected files to be marked as 'modified') | 19:53 |
| ← btanaka left | 19:53 |
|
doener
| Grum: git reset HEAD^, and then use just "commit" instead of "commit --amend" | 19:54 |
|
Grum
| cheers | 19:55 |
|
straszheim
| okay, I think I've got this mostly worked out | 19:55 |
|
| http://sodium.resophonic.com/git/boost/about/ | 19:55 |
|
| am I doing anything stupid? | 19:55 |
| → lorandi joined | 19:56 |
|
solofight
| Ilari: says http://pastebin.com/m5589c2e3 | 19:56 |
|
doener
| straszheim: you should probably setup HEAD to reference something else than refs/heads/master | 19:56 |
|
straszheim
| ah! | 19:56 |
| → earcar joined | 19:57 |
|
straszheim
| yes that -n is a little annoying. 'trunk' will do. | 19:57 |
| ← dreiss left | 19:57 |
|
Ilari
| solofight: Firewall preventing connection (to port 9418)? | 19:57 |
|
doener
| straszheim: assuming that that repo is bare, just "git symbolic-ref HEAD refs/heads/trunk" | 19:57 |
|
solofight
| dontknow | 19:58 |
|
| i dont have any firewalls | 19:58 |
|
| nuvedacl.com should be accesible by browser is it ? | 19:58 |
|
Ilari
| solofight: Browser uses port 80. git:// uses 9418 by default. | 19:58 |
|
solofight
| cause i created a domain name called nuvedacl.com and created a vvirual host | 19:58 |
|
| virtual hosts | 19:59 |
|
Ilari
| solofight: And it isn't case of nothing listening on remote side. That would cause "Connection Refused" instead of "Connection Timed Out". | 19:59 |
|
solofight
| oh.. | 19:59 |
|
straszheim
| hah! | 19:59 |
|
| thanks doener! | 20:00 |
|
solofight
| i dont have any fire walls | 20:00 |
| ← jceb left | 20:00 |
|
Ilari
| solofight: Well, either 174.129.251.48 is a blackhole or there's firewall somewhere. | 20:01 |
|
SRabbelier
| straszheim: so as I read this it says "the '-n' will...", but there's no -n in the commandline above it? :P | 20:01 |
|
| straszheim is editing it right now to reflect doener's fix | 20:02 |
|
justatheory
| Stupid question: What is origin/HEAD and how does it relate to master? | 20:02 |
|
straszheim
| now it automagically checks out 'trunk' for you. :) | 20:02 |
| → Dashkal joined | 20:02 |
|
straszheim
| thanks for looking. I think we've got this almost locked down. | 20:03 |
|
Ilari
| solofight: And if its blackhole, there's nothing there. | 20:03 |
| → greyface joined | 20:03 |
|
Ilari
| solofight: That is, the address doesn't correspond to any host. | 20:03 |
| → wavethenavel joined | 20:03 |
| → Tv joined | 20:03 |
|
doener
| justatheory: origin/HEAD is usually a symbolic ref, setup by "git clone" and references the same branch head that HEAD of the origin repo referenced when you cloned | 20:03 |
| → catalis joined | 20:04 |
|
justatheory
| doener: Okay then I can ignore it for now. Thanks. | 20:04 |
| → mugwump joined | 20:04 |
|
doener
| justatheory: it works as a shortcut, if origin/HEAD references origin/master, then "origin/master", "origin/HEAD" and "origin" are all the same, when used in a context where a ref is accepted | 20:04 |
|
justatheory
| okay | 20:04 |
| ← cilly left | 20:05 |
| ← eletuchy_ left | 20:05 |
| ← bcardarella left | 20:05 |
| → javatexan joined | 20:06 |
| → bobmcw_ joined | 20:06 |
| esparkm__ → esparkman | 20:09 |
| ← kalle_ left | 20:11 |
| → Kebianizao joined | 20:11 |
|
Kebianizao
| Hello | 20:11 |
| → bgerber joined | 20:11 |
| ← rudi_s left | 20:11 |
|
literal
| hi | 20:11 |
|
Kebianizao
| could I export (in the svn sense) just a certain branch of a repo? | 20:11 |
|
| I don't want the whole story | 20:11 |
|
literal
| git archive | 20:12 |
|
Kebianizao
| thanks | 20:12 |
| ← loincloth left | 20:12 |
| → loinclot_ joined | 20:12 |
| ← hacim left | 20:12 |
| ← schacon left | 20:14 |
| → dwave joined | 20:15 |
| → sakyamuni joined | 20:16 |
| → kalle_ joined | 20:16 |
| ← cannonball left | 20:17 |
|
Kebianizao
| git archive --remote git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel.git (remote end hung unexpectedly) :/ | 20:17 |
| → hgimenez joined | 20:17 |
|
Kebianizao
| I've tried ending with qa-branch which is the branch I want to export | 20:17 |
| loinclot_ → loincloth | 20:17 |
| → johan-s joined | 20:18 |
|
Kebianizao
| is that the right way? could anyone please test? | 20:18 |
| ← priidu left | 20:18 |
| ← bobmcw left | 20:19 |
| → eletuchy joined | 20:19 |
|
literal
| hm | 20:19 |
| ← solofight left | 20:19 |
| → priidu joined | 20:20 |
| ← partha left | 20:21 |
|
Fissure
| Kebianizao: i don't know if kernel.org has archive sending enabled | 20:25 |
|
| you can probably just get it through its gitweb... | 20:25 |
|
Kebianizao
| heh, that would explain it | 20:25 |
|
literal
| github doesn't seem to have it either, but they have Download links for that | 20:25 |
|
Kebianizao
| really? how? http://git.kernel.org/?p=linux/kernel/git/anholt/drm-intel.git;a=shortlog;h=qa-branch | 20:25 |
| → AlexMax joined | 20:25 |
|
Kebianizao
| I can't see anythin like that | 20:25 |
|
AlexMax
| I'm reading in a git faq that this sort of command is used to show a file at a particlar point in time | 20:26 |
| → bobmcw joined | 20:26 |
|
AlexMax
| $ git show HEAD^:path/to/file | 20:26 |
|
literal
| Kebianizao: the "snapshot" link | 20:26 |
|
Ilari
| http://git.kernel.org/?p=linux/kernel/git/anholt/drm-intel.git;a=snapshot;h=44ab43155e8071fbf037513e57de9a79044edf56 | 20:26 |
|
AlexMax
| however, when i do this command myself, I get a message about needing a -- between the revision and the file name | 20:26 |
|
Kebianizao
| ah, I see it, but that's on tree right? | 20:26 |
|
Ilari
| Wrong branch. | 20:26 |
|
| http://git.kernel.org/?p=linux/kernel/git/anholt/drm-intel.git;a=snapshot;h=ba1d2a9be507cda299c15740ff7e2bb3705a4792 | 20:27 |
|
AlexMax
| and when i do, it does not display the entire file, just the changeset for that partiuclar file in that particular revision | 20:27 |
|
literal
| Kebianizao: what do you mean "on tree"? | 20:27 |
|
Kebianizao
| yess, the tree view | 20:27 |
| → WALoeIII_ joined | 20:27 |
|
literal
| Kebianizao: no, there are tons of snapshot links in the link you pasted | 20:27 |
|
Kebianizao
| ahh, I'll recheck | 20:28 |
|
literal
| on the right | 20:28 |
|
Kebianizao
| ahh :) silly me | 20:28 |
|
| sorry | 20:28 |
|
Fissure
| AlexMax: that error message means HEAD^:path/to/file is invalid (no such object exists) | 20:29 |
| ← WALoeIII_ left | 20:31 |
| ← bratsche_ left | 20:32 |
|
Kebianizao
| thanks for all, bye | 20:33 |
| ← Kebianizao left | 20:33 |
| ← jkp left | 20:33 |
| → jkp joined | 20:34 |
| → WALoeIII_ joined | 20:34 |
| → bratsche_ joined | 20:35 |
| ← WALoeIII_ left | 20:35 |
| → gwoo joined | 20:35 |
| ← bobmcw_ left | 20:36 |
| → stuffcorpse joined | 20:37 |
| → halfmouse joined | 20:37 |
| ← Grahack left | 20:39 |
| ← dotsintacks left | 20:39 |
| → WALoeIII_ joined | 20:39 |
| → dotsintacks joined | 20:39 |
| ← AlexMax left | 20:40 |
|
halfmouse
| if i want to lose the changes i've made in a git repo, the correct command is git reset --soft or --hard? | 20:40 |
|
| (changes not commited) | 20:41 |
|
Ilari
| halfmouse: --hard | 20:41 |
| → dreiss joined | 20:43 |
| → hax0r1337 joined | 20:44 |
| ← WALoeIII left | 20:44 |
| ← wavethenavel left | 20:44 |
| ← WALoeIII_ left | 20:45 |
| ← dwave left | 20:49 |
| → peteinlux joined | 20:51 |
|
hobodave
| hey guys | 20:51 |
| ← priidu left | 20:52 |
|
hobodave
| what would I use to clone a repository such that it could be updated via 'git fetch' | 20:52 |
| → bobmcw_ joined | 20:52 |
| ← cemerick left | 20:53 |
|
Ilari
| hobodave: What are you trying to do? git fetch does update remote tracking branches by default. | 20:53 |
| ← d0k_ left | 20:53 |
|
hobodave
| I have a redmine installation that needs a local copy of the repository | 20:53 |
|
| http://gist.github.com/100634 | 20:53 |
|
| I was told to use that | 20:53 |
|
| however, I dont know how to get the repository so that it works w/ that script | 20:54 |
| ← Weaselweb left | 20:54 |
|
Ilari
| hobodave: That doesn't look sane. Trying to update checkouts with git fetch? That doesn't work. | 20:55 |
|
hobodave
| it's not a checkout | 20:55 |
|
| it requires the .git dir | 20:55 |
|
| that's it | 20:55 |
|
Ilari
| hobodave: Presumably clone --mirror then. Assuming it sets origin. | 20:56 |
| ← neoeinstein left | 20:57 |
| ← alester left | 20:58 |
| → wezyde joined | 20:58 |
| ← wezyde left | 20:58 |
| → tony_ joined | 20:58 |
| → schacon joined | 20:58 |
| → porcnick joined | 20:59 |
| ← chris2 left | 20:59 |
| → chris2 joined | 21:00 |
| ← esparkman left | 21:00 |
|
straszheim
| ok, that rocks. here's a different question: if the upstream svn makes a new branch/tag, is there a way to make this availabe in the tracking git repo? | 21:01 |
| ← jasmin left | 21:01 |
| ← gitte left | 21:01 |
| → neoeinstein joined | 21:01 |
| → loinclot_ joined | 21:01 |
| ← faithfulgeek left | 21:01 |
|
straszheim
| oh, there is. sorry for the noise. | 21:03 |
| ← loincloth left | 21:03 |
| → lack joined | 21:03 |
| ← bobmcw left | 21:08 |
| ← loinclot_ left | 21:08 |
| → fujin joined | 21:09 |
| ← disappearedng left | 21:09 |
| ← peteinlux left | 21:09 |
| ← kalle_ left | 21:11 |
| ← earcar left | 21:11 |
| ← khmarbaise left | 21:11 |
| → kalle_ joined | 21:12 |
| ← sea-gul1 left | 21:12 |
| → offbytwo joined | 21:14 |
| ← offbytwo left | 21:14 |
| ← qrush left | 21:15 |
| → peteinlux joined | 21:18 |
| ← Tricon left | 21:18 |
| → dwave joined | 21:19 |
|
peteinlux
| hello | 21:20 |
| ← dwave left | 21:20 |
| → gotgenes joined | 21:21 |
|
Ilari
| peteinlux: hi | 21:21 |
|
gotgenes
| Is there a way I can git stash to just store a diff from the last committed state, and when appyling the stash, not try to get the index back to its previously committed state? | 21:22 |
|
peteinlux
| llari: just came in seems like everyone is away | 21:22 |
| ← altrux left | 21:22 |
|
gotgenes
| Basically, I want to stash some changes, merge from another branch, then put those changes back on top after the merge. | 21:22 |
|
| Something like bzr shelve | 21:22 |
| ← leanucci_ left | 21:22 |
|
Ilari
| peteinlux: Proper IRC clients have channel activity monitoring... | 21:23 |
| → jeberly joined | 21:24 |
| → ceej_ joined | 21:24 |
| → poseidon joined | 21:24 |
|
peteinlux
| i have a question aswell, im tracking a project in svn, i do a 'git svn rebase' on top of that i have my own branch where I do git rebase master, now i went a little to far and fetched and also rebased to the head of svn repo instead of a tag, can i possibly tell git to fetch back? | 21:24 |
| ← hyperair left | 21:25 |
| ← ceej_ left | 21:25 |
|
parasti
| gotgenes: git stash does not restore index state by default | 21:25 |
| → ceej joined | 21:25 |
|
Ilari
| peteinlux: 'git reflog' and then use 'git reset --hard <committish>'? | 21:25 |
| ← jeberly left | 21:25 |
| → hyperair joined | 21:26 |
| → amystrat joined | 21:27 |
|
amystrat
| just started getting this error on gitosis -> error: hooks/post-receive exited with error code 1 | 21:27 |
|
| how can I troubleshoot the post-receive hook? | 21:27 |
|
Ilari
| amystrat: Eh, I thought git ignores exit status of post-receive... | 21:29 |
|
| amystrat: On what repo? gitosis-admin.git or something else+ | 21:29 |
|
amystrat
| this just started happening, we have been using gitosis 6+ months | 21:29 |
|
| on a project repo, not the admin | 21:29 |
|
peteinlux
| llari: thanks | 21:30 |
|
Ilari
| amystrat: Should that repo even have post-receive hook? | 21:30 |
|
amystrat
| yeah, we have an email being sent out | 21:30 |
|
Ilari
| amystrat: Where did you get the hook script from? | 21:31 |
|
amystrat
| it was the default script modified a bit | 21:32 |
| ← hyperair left | 21:33 |
| → Beket joined | 21:33 |
|
Beket
| Hi all:) Is it possible to count how many commits are between A and B commit ? | 21:33 |
|
Ilari
| amystrat: Modifying scripts "a bit" can break them in subtle ways. Especially if rest of the script is not taken into account. | 21:33 |
|
Beket
| (assuming that there is only one branch of development) | 21:34 |
|
amystrat
| llari: indeed, but it was working fine for 6 months | 21:34 |
|
| I would just like to be able to see the errors | 21:34 |
|
| to try and isolate | 21:34 |
| ← peteinlux left | 21:34 |
|
amystrat
| what we modified was to have it send the entire diff, not just a summary on commit | 21:34 |
| → WALoeIII joined | 21:34 |
| ← WALoeIII left | 21:34 |
| → WALoeIII joined | 21:35 |
|
Ilari
| Beket: 'git rev-list A...B | wc -l'? | 21:35 |
| ← gotgenes left | 21:35 |
| → bcardarella_ joined | 21:36 |
| ← trmanco left | 21:36 |
|
Ilari
| Beket: E.g. if B is direct parent (and only parent) of A, that returns 1. | 21:37 |
|
Beket
| Thanks Ilari :) I was stupid to checkout the old commit & I'm building world as we speak. | 21:37 |
| → krawek joined | 21:37 |
|
amystrat
| llari: is there a way to fire off post-receive manually? | 21:37 |
|
Beket
| So i'll test it later | 21:37 |
|
Ilari
| amystrat: It takes input from stdin, so it might be nontrivial. | 21:38 |
|
amystrat
| thx | 21:38 |
| ← davidad left | 21:39 |
|
Ilari
| amystrat: Or actually, capturing proper testcase is nontrivial. Once you have that, its quite easy to repeat. | 21:39 |
| → nekrad joined | 21:40 |
|
amystrat
| llari: can you expand? | 21:40 |
|
| it is consitently failing | 21:40 |
|
nekrad
| hi folks, is it possible to cut off an old tail of the history (w/o loosing the recent commits) ? | 21:40 |
| ← Tuomas left | 21:41 |
|
Ilari
| amystrat: post-receive API transmits updated refs list via stdin. So to get proper testcase, you would need to capture that input and then replay it. | 21:41 |
|
| amystrat: Replay is no problem (shell input redirection), but the capture is. | 21:41 |
|
amystrat
| I would not know how to capture that or where to look to find out how | 21:42 |
| ← RaySl left | 21:42 |
| → altrux joined | 21:42 |
|
Ilari
| amystrat: Another way would be to just make up correct data for some testcase. | 21:43 |
|
| amystrat: Did you push any new branches when it started failing? That's an edge case, so it very well might cause failures... | 21:44 |
| ← ph^ left | 21:44 |
|
amystrat
| llari: can't be sure, we have 10+ devs and no one is sure when it started | 21:45 |
| ← bcardarella_ left | 21:45 |
| ← romao left | 21:45 |
|
Ilari
| amystrat: The format of the input is: '<oldsha> <newsha> <ref>', one line per ref. 40 0s means "NULL". Old ref is NULL on ref create, new ref is NULL on ref delete. | 21:46 |
|
| amystrat: ref corresponding to branch X is refs/heads/X | 21:46 |
|
amystrat
| llari: cool, is there docs on that? | 21:47 |
|
Ilari
| amystrat: man githooks maybe? | 21:47 |
|
Gitbot
| amystrat: the githooks manpage can be found at http://git.or.cz/man/githooks | 21:47 |
|
amystrat
| thx all for your help, need to do some digging now | 21:48 |
| ← kraymer left | 21:48 |
| ← gberdyshev_ left | 21:48 |
| ← hugoxrosa left | 21:48 |
| ← lucsky left | 21:49 |
| ← naeu left | 21:49 |
| ← willb left | 21:51 |
| ← jackdempsey left | 21:52 |
| → hyperair joined | 21:52 |
| → ocornu joined | 21:54 |
|
ocornu
| hi | 21:54 |
| ← Beket left | 21:54 |
| → qrush joined | 21:54 |
|
max_ep
| Hmm, how do I delete a remote branch? I pushed out some changes and realized I'd brainlessly done a merge rather than rebase... I was unable to push -f it, so I made a new branch... | 21:54 |
|
jimmyz2
| can anyone point me in the right direction to get git to run a "php --syntax-check" <filename> on a push if the filename ends in .php, to verify no syntax errors get checked in? | 21:55 |
|
max_ep
| but how do I get rid of the junk one | 21:55 |
|
qrush
| git push <remote> :<branch> | 21:55 |
|
| http://gitready.com/beginner/2009/02/02/push-and-delete-branches.html | 21:55 |
|
max_ep
| Oh, never would've thought to look in push :) Thanks | 21:56 |
|
| Luckily not an issue I'd run into before | 21:56 |
| → lll joined | 21:57 |
|
max_ep
| Awesome, it's perfect now :) | 21:57 |
| ← bdiego left | 21:58 |
|
ocornu
| how can i switch to a branch/commit without changing the working tree? | 21:58 |
|
max_ep
| ocornu: git stash | 21:58 |
|
qrush
| you can switch using git checkout and your working tree will stay. or just do git stash | 21:58 |
|
robinr
| close. checkout will change you working tree. it merges you local changes to the other branch | 22:00 |
|
qrush
| er, yeah | 22:00 |
|
| :) | 22:00 |
| ← Yuuhi left | 22:00 |
|
qrush
| just do a git stash | 22:00 |
| ← GyrosGeier left | 22:01 |
| ← vmiklos left | 22:01 |
| ← xl0 left | 22:01 |
| ← OgMaciel left | 22:01 |
| ← lorandi left | 22:01 |
|
Ilari
| jimmyz2: man githooks . Note that you probably want hook that can deny push (pre-receive or update) and note that multiple commits can be pushed at once. | 22:01 |
|
Gitbot
| Ilari: the githooks manpage can be found at http://git.or.cz/man/githooks | 22:02 |
| → minciue joined | 22:02 |
| ← gwoo left | 22:02 |
| → GyrosGeier joined | 22:02 |
| → vmiklos joined | 22:02 |
| → OgMaciel joined | 22:02 |
| → xl0 joined | 22:02 |
| → hegge joined | 22:02 |
| → Ingmar joined | 22:02 |
| → daleglass joined | 22:02 |
| → natlus joined | 22:02 |
| → pcgod joined | 22:02 |
| → maxb joined | 22:02 |
| → replaca joined | 22:02 |
| → IRSeekBot joined | 22:02 |
| → incd^ joined | 22:02 |
| → piroko joined | 22:02 |
| → frsk joined | 22:02 |
| → yinkei joined | 22:02 |
| → bmalee joined | 22:02 |
| → xkr47 joined | 22:02 |
| → hgb joined | 22:02 |
| → majoh joined | 22:02 |
| → mithraic joined | 22:02 |
| → dionoea joined | 22:02 |
| → Tali joined | 22:02 |
| → impulze joined | 22:02 |
| → seb42 joined | 22:02 |
| → darjeeling joined | 22:02 |
| → madduck joined | 22:02 |
| → avtobiff joined | 22:02 |
| → janl joined | 22:02 |
|
ocornu
| but git-stash only works when there are local changes, right? | 22:03 |
|
Ilari
| ocornu: Local uncommitted changes. | 22:03 |
|
ocornu
| yes | 22:04 |
|
| i have none | 22:04 |
|
| i have two clean branches | 22:04 |
| → leanucci joined | 22:04 |
|
ocornu
| i want to switch to one branch while keeping the working tree state of the second one | 22:04 |
|
jimmyz2
| sweet, thanks guys.. | 22:05 |
|
qrush
| then just do git checkout | 22:05 |
|
| git checkout branch2 | 22:05 |
|
ocornu
| qrush: that updates the working tree | 22:05 |
|
qrush
| Well, of course it does. | 22:05 |
|
Ilari
| ocornu: If you REALLY want to do that: 'git symbolic-ref refs/heads/branch2'. | 22:05 |
|
justatheory
| What is a "dirty working directory"? | 22:05 |
|
Ilari
| ocornu: If you REALLY want to do that: 'git symbolic-ref HEAD refs/heads/branch2'. | 22:05 |
|
qrush
| so you want to look at the changes in another branch? | 22:05 |
|
| because that's what git log, git show, etc are for | 22:06 |
| → jerbear joined | 22:06 |
|
Ilari
| ocornu: Yeah, 'git log' accepts commit IDs and branches to show the log of. | 22:06 |
|
| justatheory: Means uncommitted changes. | 22:07 |
| → hugoxrosa joined | 22:07 |
| → kraymer joined | 22:07 |
| ← minciue left | 22:07 |
|
justatheory
| Ilari: Strange, I didn't have any. | 22:08 |
|
| But realized that I had a typo in my filter-branch command, and now I don't get that error. | 22:08 |
|
| So I'm happy. | 22:08 |
|
Ilari
| justatheory: 'git status' shows which files have uncommitted changes. | 22:08 |
|
justatheory
| Ilari: I know. I had none. | 22:08 |
|
| But it was a typo somehow. | 22:08 |
| ← Predominant left | 22:09 |
|
ocornu
| what i've done is that i committed a big change in one new branch (i probably shoud have stashed it instead), now i want to apply/commit piece after piece this big change in a clean way | 22:09 |
| ← catalis left | 22:09 |
|
Ilari
| justatheory: And as hint, if you can get away using --index-filter instead of --tree-filter, use --index-filter, as it is by far faster. | 22:09 |
|
justatheory
| I'm using --msg-filter | 22:09 |
|
thiago_home
| index-filter faster? | 22:09 |
|
justatheory
| Stripping out git-svn-id: stuff | 22:09 |
|
thiago_home
| ah, checking out | 22:10 |
|
| I see | 22:10 |
|
Ilari
| ocornu: Check out the branch, 'cherry-pick --no-commit' the big change, 'git reset --mixed' and start applying? | 22:11 |
| ← kalle_ left | 22:11 |
| → kalle_ joined | 22:11 |
|
justatheory
| Can I use more than one filter command in a call to filter-branch? | 22:12 |
|
| like --msg-filter and --tag-name-filter cat? | 22:12 |
|
ocornu
| Ilari: well, i reset it the "big change commit", stashed it, and applied it where it belongs. it works | 22:12 |
|
| thanks for your help :) | 22:12 |
|
Ilari
| justatheory: At least according to syntax, multiple are allowed. Don't know how it would react to some combos... | 22:12 |
|
justatheory
| Well, I want to filter all messages in all branches | 22:13 |
|
| And have it update what's in grafts | 22:13 |
|
| Maybe I need two calls? | 22:13 |
| ← seangrove left | 22:13 |
| → foutrelis joined | 22:13 |
|
Ilari
| justatheory: Some examples of suspicous combinations include stuff like using both --tree-filter and --index-filter in one call, | 22:13 |
|
justatheory
| sure | 22:14 |
|
Ilari
| justatheory: --tag-name-filter can be used with other filters. | 22:14 |
|
justatheory
| does --msg-filter hit commits in all branches, or just the current branch? | 22:14 |
|
| I'm guessing only if I also use `--tag-name-filter cat`. | 22:15 |
| ← Kimmie left | 22:15 |
|
Ilari
| justatheory: Yes it does, but without --tag-name-filter, tags aren't updated (or something to that effect) | 22:15 |
|
| justatheory: Perhaps --all to rewrite everything? | 22:16 |
| ← hax0r1337 left | 22:16 |
|
justatheory
| Yeah, that gave me errors. | 22:16 |
|
Ilari
| justatheory: What errors? "gave me errors" is not helpful. | 22:16 |
|
justatheory
| Ilari: http://rafb.net/p/YU0fnh11.html | 22:17 |
|
| I know, i was working on the paste. | 22:17 |
|
| Looks like it rewrote all the branches, though. | 22:17 |
|
| grafts too, I think. | 22:17 |
|
| Maybe I don't need the --all? | 22:17 |
|
Ilari
| justatheory: Those errors came from lack of --tag-name-filter. | 22:18 |
|
| justatheory: Or actually warnings. They aren't errors. | 22:18 |
|
justatheory
| right, that's why I was wondering if I even needed it. | 22:18 |
|
| right, sorry, my mistake | 22:18 |
|
Ilari
| justatheory: It even mentions it. | 22:18 |
|
justatheory
| I know. | 22:18 |
|
| It's a good warning | 22:18 |
| → iratik joined | 22:18 |
|
justatheory
| I'm just trying to decide whether or not I actually need to filter tags since I'm filtering mesages. | 22:18 |
|
Ilari
| justatheory: Tags are not on any branch! | 22:19 |
|
| justatheory: So if you don't filter them, they retain their old commit messages. | 22:19 |
|
justatheory
| Tags are just applied to particular commits, no? | 22:19 |
|
Ilari
| justatheory: Yes. | 22:19 |
|
justatheory
| Ah, I see. | 22:19 |
|
| So a tag can be a commit in itself, or applied to an existing commit. | 22:20 |
|
| So I'll throw in the tags stuff, just to be sure everything is covered. | 22:20 |
|
| git filter-branch --msg-filter 'perl -0777 -pe "s/\r?\ngit-svn-id:.+\n//ms"' --tag-name-filter cat -- --all | 22:20 |
| ← wmoxam left | 22:21 |
| ← jerbear left | 22:21 |
|
| justatheory tries that. | 22:21 |
|
Ilari
| justatheory: The commit is designated by its ID. And still no way to create two different commits with the same ID with feasible effort is known. | 22:21 |
|
justatheory
| I knew that. | 22:21 |
|
Ilari
| justatheory: Note that filter-branch doesn't like to run if backups from old run are still present. | 22:21 |
|
justatheory
| I was thinking of CVS, I guess, where you can tag existing commits. | 22:21 |
|
| Ilari: Yeah, I keep rm -rf'ing and cp -rf from backup as I figure stuff out. | 22:22 |
|
| Thanks | 22:22 |
| ← nekrad left | 22:22 |
| ← botanicus_ left | 22:23 |
|
amystrat
| Ilari: fixed the error: hooks/post-receive exited with error code 1 error... it was failing because we have an extra bit of script that pings hudson our CI server... which was down | 22:23 |
|
justatheory
| Bah, getting dirty working directory error again… | 22:23 |
|
Ilari
| amystrat: Yeah, extra bit of code being the problem... | 22:23 |
|
amystrat
| :) | 22:23 |
|
Ilari
| justatheory: Did you run status last time after you got that error? | 22:24 |
|
justatheory
| yeah | 22:24 |
|
Ilari
| justatheory: run status and retry the command. | 22:24 |
|
justatheory
| it was a typo in my filter-branch script again | 22:24 |
|
Ilari
| justatheory: What kind of typo? | 22:24 |
|
justatheory
| Ilari: git filter-branch --msg-filter 'perl -0777 -pe "s/\r?\ngit-svn-id:.+\n//ms"'--tag-name-filter cat -- --all | 22:25 |
|
| See how "--tag-name-filter" has no space before it? | 22:25 |
| ← kraymer left | 22:25 |
| ← amystrat left | 22:25 |
|
Ilari
| justatheory: Actually, you should run 'git status' (or 'git update-index --refresh') on copy after cp'ing repos. | 22:26 |
|
justatheory
| oh? Huh. | 22:26 |
|
| I'm about finished with my migration project, and will soon be blowing all these things away. | 22:27 |
| → Tricon joined | 22:27 |
| ← Tricon left | 22:27 |
|
justatheory
| For those interested, I've been blogging my migration project here: http://justatheory.com/computers/vcs/git/ | 22:27 |
| → seangrove joined | 22:28 |
| ← HG` left | 22:28 |
|
Ilari
| justatheory: Otherwise some cache data will be wrong, and it could cause problems. Nowadays it hides effects from diff, but it still could cause trouble with other commands (especially dirty worktree detection). | 22:28 |
|
| *Nowadays git hides such effects from diff... | 22:29 |
|
justatheory
| Ilari: Good to know, thanks. | 22:29 |
|
Ilari
| justatheory: Wonder why that typoed command causes dirty working tree error? | 22:29 |
| ← kold left | 22:30 |
|
justatheory
| Ilari: Well, I had just cp -rf'd the directory from elsewhere, and it did start to work after I ran `git status`, as you said. | 22:30 |
| → fynn joined | 22:30 |
| → scarabx joined | 22:30 |
|
justatheory
| After `git-status`, I ran it again with the space missing and got: | 22:30 |
|
| fatal: bad revision 'cat' | 22:30 |
|
Ilari
| justatheory: Yeah, I got the same error. | 22:31 |
| → iratiku joined | 22:31 |
|
justatheory
| So I think that it's exactly the issue you're describing. | 22:31 |
|
| the dirty directory error just comes earlier | 22:31 |
|
| and I didn't know that `git status` would fix the issue; I thought it was informational-only. | 22:31 |
| ← juanjoc left | 22:32 |
|
Ilari
| justatheory: And BTW, when dealing with SVN, perhaps 'tr _ -' would be better tag name filter than cat... At least when used once. | 22:32 |
| ← dodo_the_last left | 22:32 |
|
fynn
| how do I revert the working tree to match the index? | 22:32 |
| ← qrush left | 22:33 |
|
Ilari
| fynn: 'git checkout .'? | 22:33 |
|
justatheory
| Ilari: Why is that? | 22:33 |
|
| I've renamed all of the tags by this point. | 22:33 |
|
| or, rather, created new ones and killed off SVN's old ones. | 22:33 |
|
fynn
| Ilari: hm, I thought that would revert to HEAD | 22:34 |
|
| anyways, thanks :) | 22:34 |
|
Ilari
| justatheory: Git can have '.' or '-' in tag names, so using those is more "Git style". | 22:34 |
| ← chris2 left | 22:35 |
|
justatheory
| I've changed the tag names from "rel_1_8_3" in svn to "v1.8.3" in git. | 22:35 |
|
Ilari
| justatheory: If you use dashes, be careful not to use stuff like em dashes. Git accepts those, but others are likely in for a nasty surprise. | 22:35 |
|
| justatheory: Well, that works too. | 22:35 |
|
justatheory
| yeah, I'll stick to ASCII in tags and branch names. | 22:36 |
| ← iratik left | 22:36 |
|
justatheory
| Kept all the branched named things like "rev_1_10". | 22:36 |
|
Ilari
| justatheory: I once when testing did branch that had astral character in its name. Would be real fun to use. | 22:36 |
|
justatheory
| lol | 22:36 |
|
| I love Unicode, but not so much in filee names. Or tags or branches. | 22:37 |
|
| But look for smart quotes in my commit logs! | 22:37 |
|
| Will have to watch for that when I port SVN::Notify… | 22:37 |
|
Ilari
| justatheory: Well, shouldn't merges be marked properly so you wouldn't need those tags anymore? | 22:37 |
|
justatheory
| Yeah, The merge tags are deleted. | 22:38 |
|
| I kept release tags only. | 22:38 |
|
| I'll get this on github in the next day or two and you can see how it ended up. | 22:38 |
| ← plasticine left | 22:38 |
| ← seangrove left | 22:39 |
| ← MisterN left | 22:40 |
| ← km2 left | 22:41 |
| ← jrmuizel left | 22:42 |
| → haesbaert joined | 22:43 |
| → Mr_Grieves| joined | 22:44 |
| ← wwwald left | 22:46 |
| ← boto left | 22:47 |
|
Mr_Grieves|
| I'm having trouble figuring out how to use branches. I have two branches, "master" and "branch". | 22:47 |
|
| I'd like to put the changes in master to branch, but not the other way around. | 22:47 |
|
jimmyz2
| in case anyone is interested, i solved my php parsing check pre commit issue with this: | 22:47 |
|
RandalSchwartz
| a branch is an endpoint, not a line | 22:48 |
|
jimmyz2
| http://phpadvent.org/2008/dont-commit-that-error-by-travis-swicegood | 22:48 |
|
RandalSchwartz
| that's the first thing to understand | 22:48 |
|
Ilari
| justatheory: Characters unconditionally valid in git branch/tag names: !"#$%&'()+,-0123456789;<=>ABCDEFGHIJKLMNOPQRSTUVWXYZ\]_`abdefghijmnpqrstuvwxyz|} characters conditionally valid: ./@lock{ | 22:48 |
|
RandalSchwartz
| do master and branch have a common ancestor? | 22:48 |
|
Ilari
| justatheory: And all characters with bit 7 set are unconditionally valid. | 22:48 |
| ← Sho_ left | 22:48 |
|
Mr_Grieves|
| RandalSchwartz -- yes, "branch" branched off of "master" a while ago. | 22:49 |
|
RandalSchwartz
| and so master now looks like A B C X Y Z | 22:49 |
|
| and branch looks like A B C D E F | 22:49 |
| ← cmarcelo left | 22:49 |
|
RandalSchwartz
| what do you want to do? | 22:49 |
| ← leanucci left | 22:49 |
|
RandalSchwartz
| what do you want branch to look like? | 22:49 |
|
Mr_Grieves|
| I want to make branch look like A B C D E F X Y Z, and leave master as it is | 22:50 |
|
RandalSchwartz
| well, it won't be X Y Z | 22:50 |
|
Ilari
| Mr_Grieves|: checkout branch and merge master to it (but don't merge the other way, it would take changes from branch)? | 22:50 |
| ← radarek left | 22:50 |
|
RandalSchwartz
| since X is a child of C not F | 22:50 |
|
| do you want A B C D E F X' Y' Z' | 22:50 |
|
| hoping that X' Y' and Z' don't cause any conflicts? | 22:50 |
|
| it'd be better to do: | 22:51 |
| → Predominant joined | 22:51 |
| ← ckm left | 22:51 |
|
Ilari
| Mr_Grieves|: That makes history of branch look like A <- B <- C <- {D <- E <- F, X <- Y <- Z} <- M | 22:51 |
|
RandalSchwartz
| A B C X Y Z D' E' F' | 22:51 |
|
| where your local changes are rebased ontop of the new master | 22:51 |
| ← Ryback_ left | 22:51 |
|
RandalSchwartz
| that'd be: | 22:51 |
|
| git checkout branch | 22:51 |
|
| git rebase master | 22:51 |
|
| RandalSchwartz waits for Mr_Grieves| | 22:52 |
|
Mr_Grieves|
| Hang on, phone call :) | 22:52 |
| → qrush joined | 22:52 |
| ← hcl2 left | 22:53 |
|
Mr_Grieves|
| Hrm, it sounds like I'm going about this wrong. I want to be able to work on multiple bugs/features at once, and use master to stay up to date with other peoples changes. | 22:54 |
| ← hyperair left | 22:54 |
|
Ilari
| Mr_Grieves|: Note that if 'branch' has been pushed somewhere (or it has been fetched/pulled), rebasing would lead to errors on push (overriding those would cause problems for others). | 22:54 |
|
| Mr_Grieves|: Topic branches? | 22:54 |
|
Mr_Grieves|
| Ilari -- That's what I'm worried about. | 22:54 |
| ← hpoydar left | 22:55 |
|
Ilari
| Mr_Grieves|: Does that branch even exist in upstream? | 22:55 |
|
Mr_Grieves|
| No, it is local only. | 22:55 |
|
RandalSchwartz
| keep rebasing your local changes on the remote fetches then | 22:55 |
|
Mr_Grieves|
| Topic branches sound like what I'm looking for. | 22:56 |
| CardinalNumber → ProperNoun | 22:56 |
|
RandalSchwartz
| that makes a linear history that will merge cleanly | 22:56 |
|
Ilari
| History procuced by merge will merge just as cleanly. | 22:56 |
|
Mr_Grieves|
| RandalSchwartz -- I'm wary of rebasing, I've screwed that up too many times :) | 22:56 |
|
RandalSchwartz
| learn what it's doing first | 22:56 |
|
| that's the key | 22:56 |
|
Mr_Grieves|
| Indeed. I tend to be lazy about those things :) | 22:57 |
|
RandalSchwartz
| if the proper workflow requires you to learn, I suggest you learn. :) | 22:57 |
| → gdelfino joined | 22:58 |
|
Ilari
| Mr_Grieves|: The rules are: Rebase either 1) Branches that do not exist anywhere else or 2) Branches on top of their only upstream. | 22:58 |
|
mugwump
| and only then if you didn't invest significant effort in testing the combined tree that might be invalidated by the rebase | 22:59 |
|
Ilari
| Mr_Grieves|: And for high-quality work, you need BOTH merge and rebase and to know when to merge and when to rebase. | 22:59 |
| → damainman856 joined | 23:00 |
|
| Mr_Grieves| goes off to read some more docs :) | 23:00 |
|
Ilari
| Mr_Grieves|: Another more subtle problem with rebase is that it can result many new states to test (if you care about testing at that level), whereas merge will only result one. | 23:00 |
| ← schacon left | 23:00 |
| Modius_ → Modius | 23:01 |
|
Ilari
| Mr_Grieves|: The check push does is that the version in target repo is in set of commits within branch to be pushed. If it is, push doesn't need forcing, otherwise it does. | 23:02 |
| → snowman856 joined | 23:02 |
|
Mr_Grieves|
| I see -- Thanks for the tips. It'll probably take a bit of practice to get it to stick for me :) | 23:03 |
| ← hugoxrosa left | 23:03 |
|
Ilari
| Mr_Grieves|: That is, if pushed branch includes tip of target, it updates without forcing. | 23:03 |
|
| Mr_Grieves|: The rule of thumb with rebasing is not to let it rebase any commits that exist anywhere else. And note that publishing patches out of commits doesn't count as publishing commits. | 23:05 |
| ← foutrelis left | 23:05 |
| ← ceej left | 23:06 |
|
Mr_Grieves|
| Ok :) | 23:06 |
| → Ademan joined | 23:06 |
| → JohnnyL joined | 23:07 |
| ← JohnnyL left | 23:07 |
| ← LiamH left | 23:07 |
| ← Alinermedia left | 23:08 |
|
justatheory
| Ilari: I think you listed most of 7-bit ASCII there. :-) | 23:08 |
| ← Dashkal left | 23:08 |
| → shruggar joined | 23:10 |
|
Ilari
| justatheory: It is most of graphical characters of 7-bit ASCII. The unconditionally banned ones (out of ASCII graphical range of 32-126) are <space>:*?[^~ | 23:11 |
| ← kalle_ left | 23:11 |
|
Ilari
| justatheory: So out of 95 standard ASCII characters, its 80 unconditionally valid, 8 conditionally valid and 7 unconditionally invalid. | 23:12 |
| → qrush_ joined | 23:12 |
|
Ilari
| justatheory: Lower case alphabet chacarters 'l', 'o', 'c' and 'k' are only conditionally valid. This comes from combination '.lock', which can't be at the end of branch/tag name. | 23:13 |
|
| justatheory: So 'foo-lock' and 'foo.locks' is valid branch name, but 'foo.lock' isn't. | 23:14 |
|
| *are | 23:14 |
| → qrush__ joined | 23:15 |
|
justatheory
| Interesting. | 23:16 |
|
poseidon
| Can someone help me figure out what I'm doing wrong here? http://rafb.net/p/e4t0rY19.html | 23:16 |
|
justatheory
| Not sure I need to learn what locks are just yet. | 23:16 |
| ← qrush_ left | 23:16 |
|
Ilari
| justatheory: .lock files are internally used by git. Branches with '.lock' suffix could collide with those. | 23:16 |
| ← qrush__ left | 23:16 |
| → kalle_ joined | 23:17 |
|
justatheory
| ah | 23:17 |
|
Ilari
| poseidon: You didn't commit before pushing. | 23:17 |
| → botanicus joined | 23:17 |
| ← javatexan left | 23:17 |
|
poseidon
| Ilari, but I added them. Do I have to add new files and commit them? | 23:17 |
|
robinr
| so we should use an otherwise invalud name for lock-files instead | 23:18 |
|
Ilari
| poseidon: Push only pushes commits, not files. | 23:18 |
|
| poseidon: So you need to make commit to push first. | 23:18 |
| ← fridim_ left | 23:19 |
|
Ilari
| robinr: Current rules are not strict enough. You can cause problems with stuff like 'foo.lock/bar'. | 23:19 |
|
poseidon
| k, but for when I make new files, can I simply do git commit newfile or do I have to do add then commit? | 23:19 |
| ← damainman856 left | 23:19 |
|
Ilari
| robinr: Put 'foo' along with that... | 23:19 |
|
Fissure
| poseidon: you have to add first | 23:19 |
|
| committing a file only works when it's already tracked | 23:19 |
|
Ilari
| poseidon: 'git commit newfile' doesn't work, but 'git commit oldfile' does.... | 23:20 |
| ← snowman856 left | 23:20 |
| ← mfilipe_ left | 23:20 |
|
dotsintacks
| I need to track down the last time a line number changed, but it has gone through several renames. | 23:21 |
|
Ilari
| poseidon: IIRC, marking file as intent-to-add is enough to make 'git commit file' work. | 23:21 |
|
gdelfino
| Anyone knows gitosis required version of python? I have 2.4.3 and I'm having problems with "sudo -H -u git gitosis-init" under CentOS 5.3 | 23:21 |
|
dotsintacks
| s/line number/line/ | 23:21 |
|
robinr
| dotsintacks: blame -M or -C -C | 23:21 |
|
| could could also add -w for ignoring whitespace changes | 23:22 |
|
justatheory
| Ilari: I suppose that everything you just told me is nicely documented somewhere, yes? | 23:23 |
|
Ilari
| justatheory: man git-check-ref-format | 23:23 |
|
Gitbot
| justatheory: the git-check-ref-format manpage can be found at http://git.or.cz/man/git-check-ref-format | 23:23 |
| ← botanicus left | 23:23 |
|
dotsintacks
| robinr: but doesn't git blame still just annotate each line with the last change? | 23:23 |
|
| so that rename would be the last change. | 23:23 |
|
Ilari
| justatheory: Doesn't document stuff like 'foo.lock/bar' and 'foo' collding. | 23:23 |
|
justatheory
| Perfect | 23:23 |
|
Ilari
| *colliding | 23:23 |
|
dotsintacks
| unless -C /ignores/ renames | 23:23 |
|
justatheory
| Patch it? | 23:23 |
|
Ilari
| dotsintacks: Git few versions ago (1.6.2.1) had only ./ as conditionally valid, and @lock{ was in unconditionally valid list. Of course, one still could get into trouble with those (which was why those characters where made conditionally valid). | 23:26 |
| → loincloth joined | 23:26 |
|
Ilari
| Oops. | 23:26 |
|
| justatheory: ^^ | 23:26 |
| ← parasti left | 23:27 |
|
Ilari
| justatheory: '@' is only "dangerous" if immediately followed by '{' later followed by '}'. Its invalid in pair '@{'. | 23:28 |
|
robinr
| non-ascii could be fun too | 23:28 |
|
justatheory
| Ilari: I am unlikely ever to run into this stuff, because I've been trained to keep tags and branches simply named by CVS and Subversion. But a discussion like this in the docs would definitely be beneficial to all. | 23:28 |
|
| I need not be the only recipient of your wisdom. ;-) | 23:28 |
| ← rettub_ left | 23:30 |
|
Ilari
| Of course, by meddling with repository internals, its possible to create branch names that include unconditionally invalid characters (and thus are invalid). On at least some Git versions, such names cause overt failure of some commands, and I wouldn't be surprised if some commands misbehaved on those. | 23:30 |
| → rettub_ joined | 23:30 |
|
Ilari
| E.g. some git version couldn't rename such branch. | 23:30 |
| → Dashkal joined | 23:31 |
| ← zpoley1 left | 23:31 |
| → catalis joined | 23:32 |
|
Ilari
| robinr: At least such characters don't cause misbehaviour. | 23:32 |
| ← majeru left | 23:32 |
| → majeru joined | 23:32 |
| ← [intra]lanman left | 23:32 |
| ← iso42 left | 23:32 |
| ← SRabbelier left | 23:32 |
| → nis joined | 23:32 |
|
Ilari
| OTOH, some of the chararacters in unconditionally invalid list are only there for shell safety (*?[). | 23:33 |
| → scientes joined | 23:35 |
| ← aziz left | 23:36 |
|
robinr
| . is for avoiding collision with the commit...range syntax | 23:38 |
| ← sekimura left | 23:39 |
|
robinr
| or was then end of the sentence? | 23:39 |
|
| :) | 23:39 |
|
quentusrex
| I have a git repo on a remote server, | 23:39 |
| ← jimmyz2 left | 23:40 |
|
quentusrex
| how do I get the repo to have a copy of the files in the directory, and update the files on a git push? | 23:40 |
| → jrmuizel joined | 23:40 |
|
robinr
| anway, good night | 23:40 |
| → sekimura joined | 23:40 |
| ← Zathrus left | 23:41 |
|
quentusrex
| Ilari: any idea how to have the files 'checked out' in a git repo? and keep the server repo updated for each push? | 23:41 |
|
Ilari
| . is because of range syntax and '.lock', '/' is because it gets translated to directory seperator (and that has its own rules), '@' is because of reflog syntax, 'l', 'o', 'c', 'k' are because of '.lock' suffix, '{' is because of reflog syntax, <space> is because space is used as separator in many places, ':', '^' and '~' are for ref syntax, '*', '?' and '[' are for shell safety. | 23:41 |
|
| quentusrex: post-update hook. | 23:42 |
|
| quentusrex: man githooks | 23:42 |
|
Gitbot
| quentusrex: the githooks manpage can be found at http://git.or.cz/man/githooks | 23:42 |
|
quentusrex
| right, but what is the proper way to check out the repo into the repo directory? | 23:42 |
|
Ilari
| quentusrex: Unset GIT_DIR, move one directory up and 'git reset --hard'? | 23:43 |
|
| quentusrex: Alternatively set GIT_WORK_DIR and 'git reset --hard'. | 23:44 |
|
quentusrex
| umm, I think I've not been clear. I have on my workstation a folder called apache-settings/ it is now a git repo( I did git init) I created the files, and committed. I added a remote repo, and pushed the local to the remote repo. But the remote repo doesn't have the files in the directory like mine does on my workstation. | 23:44 |
|
| I'm trying to get the remote repo have teh files, and in the post-update hook, update the copies of the files, | 23:45 |
|
Ilari
| quentusrex: $faq non-bare | 23:45 |
|
Gitbot
| quentusrex: Pushing to non-bare repositories is discouraged. See http://git.or.cz/gitwiki/GitFaq#non-bare | 23:45 |
|
quentusrex
| then how do I check it out in another spot? | 23:46 |
|
Ilari
| quentusrex: I gave two ways of doing the update in post-update. But beware, both make the repository unsuitable for local changes. | 23:46 |
| ← scarabx left | 23:46 |
|
quentusrex
| Ilari: I don't want local changes at alll :) | 23:47 |
|
| atleast no changes to be made on the server directly. | 23:47 |
| → Flathead joined | 23:48 |
| → nealinux joined | 23:48 |
|
Ilari
| quentusrex: As said, in post-update hook, either do 'unset GIT_DIR', 'cd ..', 'git reset --hard' or 'export GIT_WORK_DIR=/path/to/tree' 'git reset --hard'. | 23:49 |
|
quentusrex
| Ilari: since I'm new to git (or atleast I feel that way today) do you mind walking me through this? | 23:49 |
| ← netoman left | 23:49 |
|
Ilari
| quentusrex: One problem doing just that it does it even for push to other branches, slowing things down. | 23:49 |
|
quentusrex
| I have a repo exclusively for the settings | 23:50 |
|
| one repo for each 'type' of settings. | 23:50 |
| ← mw left | 23:50 |
| → mw joined | 23:50 |
|
Ilari
| quentusrex: And then there's some setting you need to set, or you get nasty warnings in newest versions (and it will start failing in 1.7)... | 23:50 |
|
quentusrex
| where are the logs? | 23:51 |
|
Ilari
| quentusrex: What logs? | 23:51 |
|
quentusrex
| git logs. | 23:51 |
|
Ilari
| quentusrex: Reflogs are stored in .git/logs/ | 23:51 |
|
quentusrex
| before I do the git reset --hard | 23:52 |
|
| don't I need to check out the repo first? | 23:52 |
| cpg|away → cpg | 23:52 |
|
Ilari
| quentusrex: It is implictly already checked out (with wrong contents of course). | 23:52 |
|
quentusrex
| it says it is a bare repo | 23:53 |
|
| on the server | 23:53 |
|
| I'm pushing to the server repo | 23:54 |
|
| and the server is a bare repo | 23:54 |
|
Ilari
| quentusrex: 'git init --bare'? Or you forgot to unset GIT_DIR? | 23:54 |
|
| quentusrex: Plus move one level up before reset. | 23:54 |
| ← merlin83 left | 23:55 |
|
Ilari
| quentusrex: Can you pastebin the error message? | 23:55 |
| → arohner joined | 23:57 |
| ← Modius left | 23:58 |
| ← nealinux left | 23:58 |
| → Modius joined | 23:58 |