| 2010-11-18 |
| → Kenjin joined | 00:00 |
| ← ProperNoun left | 00:00 |
| ← cannonball left | 00:01 |
| ← schlortoo left | 00:01 |
| ← chrischambers left | 00:03 |
| → alex__c2022 joined | 00:04 |
| → lgbr joined | 00:05 |
|
lgbr
| I can ssh one-way, and I want to effectively do a reverse clone from a repository on an ssh client to a new repository on an ssh server | 00:06 |
|
cbreak
| if you have a new repo on the server, just push | 00:07 |
|
lgbr
| cbreak: it complains if I do that on a non-bare remote repo | 00:07 |
| ← lucasvo left | 00:07 |
|
cbreak
| of course | 00:07 |
|
| push it to a new branch | 00:07 |
|
| one that does not exist on the remote yet | 00:07 |
|
lgbr
| can i move that new branch to master? | 00:08 |
| ← Sigma left | 00:08 |
|
cbreak
| yes... | 00:08 |
|
| once you are sitting in front of the repo :) | 00:08 |
|
| you can merge, reset master, just kill master and rename the other... | 00:08 |
|
| the possibilities are only limited by your knowledge of git | 00:09 |
| → chrischambers joined | 00:10 |
| → kanru joined | 00:10 |
| → Sigma joined | 00:11 |
| → dTx joined | 00:11 |
|
lgbr
| cbreak: that worked. Thanks! | 00:12 |
| → schlortoo joined | 00:12 |
| ← bauruine left | 00:13 |
|
cbreak
| np :) | 00:13 |
| ← lgbr left | 00:14 |
|
dTx
| Git rulez. It's restored my faith in scm, and made my Software Engineering teamwork actually enjoyable. Just thought I'd say thanks for the work. | 00:14 |
| → amason joined | 00:14 |
| → bauruine joined | 00:15 |
| ← dTx left | 00:15 |
| ← Guest34333 left | 00:16 |
| ← letas left | 00:16 |
| → archis joined | 00:16 |
| ← archis left | 00:17 |
| ← darkredandyellow left | 00:19 |
| ← mcdebugger left | 00:19 |
| ← Utkarsh left | 00:20 |
| → mkramer joined | 00:23 |
| → normanrichards joined | 00:24 |
| ← mbroeker left | 00:24 |
| → leroux joined | 00:24 |
| → coderdad joined | 00:25 |
| → Utkarsh joined | 00:25 |
| ← tewecske left | 00:25 |
| ← adamm left | 00:26 |
| ← mkramer left | 00:29 |
| → xiangfu joined | 00:29 |
| ← aspotashev left | 00:30 |
| ← Utkarsh left | 00:31 |
| ← Aleric left | 00:31 |
| ← simplechat left | 00:33 |
| ← enherit left | 00:33 |
| ← patmaddox left | 00:34 |
| ← itrekkie left | 00:36 |
| → Utkarsh joined | 00:37 |
| ← mmoya left | 00:38 |
| ← Chaser left | 00:40 |
| → chrisshattuck joined | 00:40 |
| → rchavik joined | 00:40 |
| → jogla joined | 00:41 |
| ← Utkarsh left | 00:41 |
| → xiong joined | 00:41 |
| → dgtlmoon joined | 00:42 |
| ← sjl left | 00:43 |
| → mmoya joined | 00:44 |
| → itamarjp joined | 00:45 |
| ← constantc left | 00:46 |
| ← spaceonline left | 00:46 |
| → Utkarsh joined | 00:47 |
| → flazz joined | 00:48 |
| ← ricky left | 00:49 |
| ← cylence left | 00:50 |
| ← NickyP left | 00:50 |
| → guardian joined | 00:50 |
| ← guardian left | 00:51 |
| ← Kenjin left | 00:53 |
| ← nakkor left | 00:55 |
| ← tj left | 00:58 |
| → dgbaley27 joined | 00:59 |
| ← Utkarsh left | 00:59 |
| → tj joined | 00:59 |
| ← tj left | 00:59 |
| ← chrisshattuck left | 01:02 |
| ← bentob0x left | 01:02 |
| → tj joined | 01:03 |
| → ricky joined | 01:04 |
| → Utkarsh joined | 01:05 |
| → jcdnyc joined | 01:05 |
| → lemonchicken joined | 01:05 |
| ← noktoborus_ left | 01:05 |
| ← jcdny left | 01:06 |
| → noktoborus_ joined | 01:06 |
| ← Anti-X left | 01:07 |
| → NotreDev_ joined | 01:08 |
| → krzysz00 joined | 01:08 |
| ← NotreDev left | 01:09 |
| NotreDev_ → NotreDev | 01:09 |
| ← abetaha left | 01:09 |
| ← alvaro_o left | 01:09 |
| ← kanru left | 01:09 |
| ← jcdnyc left | 01:10 |
| → _Utkarsh joined | 01:10 |
| → pedrobelo joined | 01:10 |
| → jcdnyc joined | 01:11 |
| ← Utkarsh left | 01:12 |
| → Anti-X joined | 01:12 |
|
dgbaley27
| I'm trying to do this: git archive -o linux-2.6.37-rc2.tar --remote=git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git v2.6.37-rc2 | 01:12 |
|
| fatal: The remote end hung up unexpectedly | 01:13 |
|
| Is the command not correct, or is the feature disabled on their end...? | 01:13 |
| ← _Utkarsh left | 01:14 |
| ← jds left | 01:16 |
| ← kenichi left | 01:18 |
| → jds joined | 01:18 |
| → Utkarsh joined | 01:19 |
| ← Yuuhi left | 01:20 |
| → abetaha joined | 01:22 |
| ← Adys left | 01:23 |
|
frogonwheels
| dgbaley27: possibly they've disable that feature to stop people from pulling the whole kerenl tree each time? | 01:23 |
|
| dgbaley27: clone it and archive locally I'd say. | 01:24 |
| → warlock_mza joined | 01:24 |
|
dgbaley27
| That is to prevent me from download the whole tree | 01:24 |
| ← m104 left | 01:24 |
| ← xiangfu left | 01:26 |
| ← pedrobelo left | 01:26 |
| sshc_ → sshc | 01:27 |
|
frogonwheels
| dgbaley27: my guess only,.. | 01:29 |
| → NickyP joined | 01:30 |
| → Adys joined | 01:30 |
| ← ricky left | 01:30 |
|
frogonwheels
| dgbaley27: it's to preven you from always downloading the whole tree like that (once off owuld be fine) | 01:30 |
| → pedrobelo joined | 01:31 |
| ← banjiewen left | 01:31 |
| ← sunil left | 01:31 |
| → ricky joined | 01:31 |
| ← kenneth__ left | 01:32 |
| → kenneth_reitz joined | 01:33 |
| ← aah left | 01:33 |
| ← envi left | 01:33 |
| → mdel joined | 01:34 |
| ← beatak left | 01:34 |
| → amh345_ joined | 01:35 |
| ← ricky left | 01:36 |
| ← amh345 left | 01:38 |
| amh345_ → amh345 | 01:38 |
| → envi joined | 01:39 |
| ← Evious left | 01:41 |
| ← jtaby left | 01:46 |
| → xiangfu joined | 01:46 |
| ← bitkiller left | 01:46 |
| → amh345_ joined | 01:46 |
| ← amh345 left | 01:47 |
| amh345_ → amh345 | 01:47 |
|
krzysz00
| if you're using, say github, and you need to go hack on your project for a while in a place with no Internet, can you still commit to git and just push up the changes when you get a connection? | 01:47 |
|
SethRobertson
| Of course | 01:47 |
|
| It doesn't matter what your upstream is. That is a core feature of git | 01:47 |
| ← warlock_mza left | 01:48 |
| ← davidfetter_vmw left | 01:50 |
| ← sdwrage left | 01:53 |
| ← dgbaley27 left | 01:54 |
| ← abetaha left | 01:56 |
| → kanru joined | 01:58 |
| ← mikeric left | 02:00 |
| ← jfkw left | 02:02 |
| ← Utkarsh left | 02:03 |
| → jfkw joined | 02:03 |
| → Yuffster joined | 02:04 |
|
apetrescu
| krzysz00, you don't lose any of git's functionality in that situation. You can even branch, merge, etc. When you get connectivity next, pushing will sync all of that over. | 02:04 |
| ← kukks left | 02:07 |
| ← Elfe left | 02:07 |
| → russkey joined | 02:07 |
|
russkey
| is there a way to git commit --verbose by default when committing? | 02:08 |
| ← ooooPsss left | 02:08 |
|
russkey
| because "-v" is just too much to remember and type =P | 02:08 |
| → Utkarsh joined | 02:08 |
| → ponto_ joined | 02:10 |
|
SethRobertson
| russkey: You can use man git-config command to define an alias. vcommit or perhaps ci. Then `git vcommit` could actually run `git commit -v` | 02:12 |
|
jast
| russkey: the 'git-config' manpage can be found at http://git.or.cz/man/git-config [automatic message] | 02:12 |
| ← Utkarsh left | 02:13 |
| → nakkor joined | 02:13 |
| → chadh joined | 02:13 |
| ← nakkor left | 02:13 |
| → BiggFREE joined | 02:14 |
| ← ponto left | 02:14 |
|
russkey
| well, at that point i think i would rather make a gitc bash alias to go along with my gits alias (git status), SethRobertson. thanks | 02:15 |
| ← BiggFREE left | 02:16 |
| → BiggFREE joined | 02:16 |
| → gretch joined | 02:16 |
| → lightcap_ joined | 02:17 |
| ← lightcap_ left | 02:18 |
| → stliu joined | 02:19 |
| ← amerine left | 02:20 |
| ← steph021 left | 02:22 |
| → amerine joined | 02:22 |
| → sdwrage joined | 02:23 |
| → phantomcircuit joined | 02:23 |
| → ricky joined | 02:23 |
| → Elfe joined | 02:25 |
| ← pedrobelo left | 02:26 |
| → pedrobelo joined | 02:26 |
| ← jspiros left | 02:27 |
| ← pedrobelo left | 02:27 |
| → hebz0rl_ joined | 02:28 |
| → karptonite joined | 02:29 |
|
digitalfiz
| is there a easy way to remove/add files all at once? | 02:29 |
| ← alex__c2022 left | 02:30 |
|
digitalfiz
| i moved a ton of images from 1 folder to another but in the repo it shows them in both the old directory and the new | 02:30 |
| ← chrischambers left | 02:30 |
| → Utkarsh joined | 02:31 |
| → yatiohi joined | 02:31 |
| ← trochala left | 02:31 |
| ← hebz0rl left | 02:31 |
| ← sdwrage left | 02:31 |
| ← tj left | 02:33 |
| → sdwrage joined | 02:36 |
|
frogonwheels
| digitalfiz: git mv | 02:37 |
| ← jarrod_ left | 02:37 |
| → mikeric joined | 02:38 |
| ← hobodave left | 02:38 |
|
frogonwheels
| digitalfiz: if you use git gui it shows up the removed/added and you can just stage both the delete and the add :) | 02:38 |
| ← zombor left | 02:40 |
| ← zomgbie left | 02:41 |
| ← phantomcircuit left | 02:41 |
| → andrewa2 joined | 02:43 |
| ← Unknown[NF] left | 02:43 |
| ← Utkarsh left | 02:43 |
|
digitalfiz
| frogonwheels, no single command to do it i already moved them all id like to not have to do that per file | 02:43 |
| → jmorris joined | 02:44 |
|
SethRobertson
| git add -A | 02:44 |
|
andrewa2
| i could use some help recovering from a corrupted object. It's currently where HEAD is pointing. I can clone the repo again from my remote, but how can I unpack the same object and replace it in my corrupted, original local repo? (or am i thinking about this the wrong way) | 02:44 |
|
| (i'd like to uncorrupt this repo as I have a local topic branch i need to recover) | 02:44 |
| → jogla_ joined | 02:47 |
| → Utkarsh joined | 02:47 |
| ← danhealy left | 02:49 |
| ← jogla left | 02:49 |
| jogla_ → jogla | 02:49 |
| → Murr_ joined | 02:52 |
| → _habnabit joined | 02:53 |
|
_habnabit
| Is there a way to use rebase to merge the second commit into the initial commit? | 02:53 |
| ← yhager left | 02:53 |
| ← krzysz00 left | 02:53 |
|
frogonwheels
| _habnabit: git rebase -i HEAD~2 (or is it 3) and then use 'squish' or 'bugfix' | 02:54 |
| ← saysjonathan left | 02:54 |
|
_habnabit
| Well, no, that's the most recent. | 02:54 |
|
| I mean the absolute first. | 02:55 |
|
frogonwheels
| ooohhh | 02:55 |
|
| _habnabit: sorry | 02:55 |
|
_habnabit
| Usually I do `git rebase -i <preceeding commit id>` but there is no parent commit. | 02:55 |
|
| And if I pass the commit id of the first revision, I can't squish it. | 02:55 |
|
frogonwheels
| _habnabit: you essentially have to make a whole new tree! | 02:56 |
|
andrewa2
| _habnabit: http://stackoverflow.com/questions/598672/git-how-to-squash-the-first-two-commits | 02:56 |
|
_habnabit
| Aha. | 02:56 |
|
| thx. | 02:56 |
|
frogonwheels
| andrewa2: cool | 02:56 |
| ← Utkarsh left | 02:56 |
| ← aisipos left | 02:57 |
|
andrewa2
| _habnabit: thank stackoverflow.com! ;-) | 02:57 |
|
_habnabit
| Oh man I didn't know you could detach HEAD. | 02:57 |
|
| This is awesome. | 02:57 |
|
| I made temporary branches for this before. | 02:57 |
| → phantomcircuit joined | 02:58 |
| → pedrobelo joined | 02:58 |
|
andrewa2
| not to keep pestering everyone, but does anyone have advice on my issue? i want to replace a corrupted git object. I can get a fresh clone of the repo, but how do I unpack that object and replace it in the corrupted repo? | 02:59 |
| ← pedrobelo left | 03:00 |
|
rohanpm
| andrewa2: what does `git fsck' say for your corrupt repo? | 03:01 |
|
frogonwheels
| andrewa2: http://git.661346.n2.nabble.com/How-to-replace-a-single-corrupt-packed-object-td680795.html ... unpack the packfile (-r ?) and then replace the corrupt object before packing it? | 03:02 |
|
andrewa2
| rohanpm: running `git fsck` just tells me about the corrupted object again | 03:02 |
|
| fatal: object cc6df31dfbc5231441c4b815975d576420517d8a is corrupted | 03:02 |
|
| (note, HEAD is pointing to that object) | 03:02 |
|
rohanpm
| well, first backup the entire corrupt repo if you haven't already | 03:03 |
|
andrewa2
| k | 03:03 |
| → normanrichards_ joined | 03:03 |
|
rohanpm
| then check that your clean repo actually has that object - e.g. `git show cc6df31dfbc5231441c4b815975d576420517d8a' should show something | 03:03 |
| → fruight1 joined | 03:03 |
|
andrewa2
| cool, i did that, it's a commit | 03:04 |
| ← fruight left | 03:04 |
| ← alberto56 left | 03:05 |
|
chadh
| Can anyone help with a gitolite wildcard repo question? I have been banging my head overthis for a couple hours, and I'm stuck | 03:05 |
|
rohanpm
| andrewa2: then check if the clean repo has the file .git/objects/cc/6df31dfbc5231441c4b815975d576420517d8a | 03:05 |
|
frogonwheels
| andrewa2: is the object unpacked anyway .. like in .git/objects/... | 03:05 |
| ← phantomcircuit left | 03:05 |
| → steph021 joined | 03:06 |
| ← steph021 left | 03:06 |
| → steph021 joined | 03:06 |
| ← normanrichards left | 03:06 |
| ← jmorris left | 03:06 |
|
andrewa2
| rohanpm frogonwheels: no, my clean repo has the objects all packed up. when i try `git unpack-objects -r < .git/objects/pack/*.pack` nothing happens... | 03:06 |
|
| https://gist.github.com/07f9a42a72f5260787ac | 03:08 |
| ← russkey left | 03:08 |
| ← vitorpc left | 03:08 |
|
frogonwheels
| andrewa2: http://thread.gmane.org/gmane.comp.version-control.git/40893/focus=40896 | 03:09 |
|
| andrewa2: see comment about moving the pack away (from linus) | 03:09 |
|
andrewa2
| frogonwheels: aaaah, it's doing something.... | 03:10 |
|
| I suppose that's what this text means: | 03:11 |
|
| "Objects that already exist in the repository will not be unpacked from the pack-file. Therefore, nothing will be unpacked if you use this command on a pack-file that exists within the target repository." | 03:11 |
|
| http://www.kernel.org/pub/software/scm/git/docs/git-unpack-objects.html | 03:11 |
| → schambers joined | 03:12 |
| → Utkarsh joined | 03:13 |
|
andrewa2
| huzzah! after the unpack, i was able to copy the object from the fresh repo into the corrupted repo and initially everything looks good (just a few dangling commits upon `git fsck`) | 03:15 |
|
| thanks frogonwheels and rohanpm! | 03:15 |
| ← Bombe left | 03:16 |
|
frogonwheels
| andrewa2: np - that was quite instructive for me too :) | 03:17 |
| → Bombe joined | 03:17 |
|
andrewa2
| frogonwheels: well good call on your part with actually reading git-unpack-objects's man page and understanding it ;-) | 03:17 |
| ← Utkarsh left | 03:18 |
| → normanrichards joined | 03:18 |
| → kukks joined | 03:19 |
| ← schambers left | 03:20 |
| ← bronson left | 03:20 |
| ← mmoya left | 03:21 |
| ← friskd left | 03:21 |
| ← normanrichards_ left | 03:22 |
| → friskd joined | 03:22 |
| ← friskd left | 03:22 |
|
sitaram
| chadh: what's the question? | 03:22 |
| → friskd joined | 03:22 |
| → sunil joined | 03:23 |
|
chadh
| sitaram: see http://pastie.org/1307431 | 03:23 |
| → daleackerman joined | 03:23 |
| → rayners joined | 03:23 |
| ← _habnabit left | 03:23 |
| ← offby1` left | 03:24 |
|
sitaram
| chadh: can you paste output of "ssh gitolite@myserver info; ssh gitolite@myserver expand" | 03:24 |
| → offby1 joined | 03:24 |
|
chadh
| sitaram: heh. refresh. I just added them. thought that was interesting | 03:25 |
|
offby1
| this channel has some weird setting that prevents me from changing my nick back from the automatically-assigned one to my normal one. | 03:25 |
| → saysjonathan joined | 03:26 |
| ← envi left | 03:27 |
| ← kadoban left | 03:27 |
| → kadoban joined | 03:28 |
| ← justin-george left | 03:28 |
| ← AndrewK left | 03:28 |
| ← airborn left | 03:29 |
|
sitaram
| chadh: the info command should look like: http://pastebin.com/7PuswXbh (notice the "C" part?) | 03:30 |
|
| chadh: I used the exact config you gave me to get that output | 03:30 |
| → envi joined | 03:30 |
|
sitaram
| chadh: so... can you paste "cat ~/.gitolite/conf/gitolite.conf" from the *server* | 03:31 |
|
chadh
| sitaram: sorry, that info and expand command were run by the user I am having problems with. if I run it as chadh, it looks like yours | 03:31 |
|
sitaram
| chadh: who's trying to *create* the repo? You or him? | 03:32 |
|
chadh
| sitaram: I created the repo, but I want him to be able to read it. so I used setperms to add him to the READERS group | 03:33 |
| → Utkarsh joined | 03:33 |
|
sitaram
| chadh: can you paste the same commands output for yourself? | 03:33 |
|
chadh
| sitaram: I left out the initial clone and the setperms command. | 03:34 |
| → aah joined | 03:34 |
|
chadh
| sitaram: I added the info and expand to the bottom of the paste. I'll do a clone now | 03:34 |
| ← Bass10 left | 03:35 |
| → hobodave joined | 03:36 |
| ← programble left | 03:39 |
| → hobodave_ joined | 03:39 |
|
chadh
| sitaram: okay, maybe it is a little clearer now? I show a clone, update, commit, and push. | 03:39 |
|
sitaram
| chadh: it works fine here; same gitolite version... you'll have to paste me both the files in "~/.gitolite/conf" on the server I guess... but I'm not sure whats happening here | 03:40 |
|
chadh
| sitaram: you are able to check it out as the other user? | 03:41 |
| ← fr0sty__ left | 03:42 |
|
sitaram
| chadh: sure... want me to paste the whole thing like you did? | 03:42 |
| ← hobodave left | 03:42 |
|
chadh
| sitaram: I trust you. | 03:42 |
|
sitaram
| :) | 03:42 |
| → fr0sty joined | 03:43 |
|
chadh
| sitaram: the only place user randy is defined is in teh setperms stuff (his key is installed, though) could that be the problem? | 03:43 |
| → jgautier joined | 03:43 |
|
sitaram
| chadh: besides, ever since I created a proper test suite, I dont push till it passes anyway! | 03:43 |
|
chadh
| his name doesn't show up in the config file | 03:43 |
| ← fruight1 left | 03:43 |
| → fruight joined | 03:44 |
|
sitaram
| chadh: shouldn't matter... I just used your config as is, and my "randy" (actually "u1" in my test) doesnt appear either | 03:44 |
| ChanServ set mode: +v | 03:44 |
|
chadh
| ok. well my whole config is at http://pastie.org/1307503 | 03:44 |
|
sitaram
| chadh: erm... you dont have *two* servers with similar configs do you? | 03:44 |
|
jgautier
| hey i have some changes in my repository that have not been committed and i want to revert all my changes and get the exact copy from the remote repository | 03:44 |
|
| whats the command to do that | 03:45 |
|
chadh
| sitaram: nope. just the one | 03:45 |
|
| sitaram: btw, the install script didn't like a [email@hidden.address] key, but is it okay for me to use them for the gitolite-admin repo? You can see my "hack" in that pastie | 03:46 |
|
| sitaram: so it's okay that the info and expand info for randy don't match up? How can that happen? | 03:47 |
| ← Utkarsh left | 03:47 |
| → Textmode joined | 03:49 |
| ← mdel left | 03:49 |
|
sitaram
| chadh: install script won't like it because of complications in dealing with it. Keep one key as "chadh.pub" and the others as "chadh@foo.pub" | 03:49 |
| → mdel joined | 03:49 |
|
sitaram
| chadh: info and expand are matching for randy -- if you imagine the repo was *not* created at all | 03:49 |
|
| chadh: which is why I asked if you had two servers :-) I'm puzzled... | 03:50 |
|
| chadh: what TZ are you in? I just got in to work and after about an hour I can spend time on a /query debugging this | 03:50 |
|
chadh
| sitaram: EST, but I'll be here for a while | 03:51 |
|
sitaram
| chadh: I'll try and make that 30 min then... I'll /query you when I'm done with the morning rush of emails etc | 03:51 |
|
chadh
| great. thanks! | 03:51 |
| → timj_ joined | 03:52 |
| ← Murr_ left | 03:54 |
| ← ignatp left | 03:54 |
| ← Elfe left | 03:54 |
| → Elfe_ joined | 03:54 |
| → chrislerum joined | 03:55 |
| → Utkarsh joined | 03:55 |
| ← timj__ left | 03:55 |
| ← jogla left | 03:58 |
| → dquestio2s joined | 03:59 |
| → shiba_yu36 joined | 04:00 |
| → mmoya joined | 04:00 |
| → dquestions joined | 04:02 |
| ← dquestions left | 04:02 |
| ← dquestio2s left | 04:03 |
| ← Utkarsh left | 04:03 |
| → justin-george joined | 04:03 |
| ← dreiss left | 04:03 |
| → dquestions joined | 04:04 |
|
dquestions
| hi, how do i force merge my changes (ignore conflicts and just take my current files as the current head) | 04:04 |
| ← karptonite left | 04:04 |
|
dquestions
| the problem is there is some conflicts with "project" files that just breaks stuff (not actual source code) | 04:05 |
|
| so i'm not sure how to fix those merge conflicts | 04:05 |
|
| ? | 04:05 |
| → fr0sty__ joined | 04:05 |
| → anirudhr joined | 04:05 |
| ← saysjonathan left | 04:06 |
| ← fr0sty left | 04:06 |
| ← sunil left | 04:06 |
|
dquestions
| anyone? | 04:06 |
| ← anirudhr left | 04:07 |
|
frogonwheels
| dquestions: git checkout --ours -- <filename> iirc look at man git-checkout | 04:08 |
|
jast
| dquestions: the 'git-checkout' manpage can be found at http://git.or.cz/man/git-checkout [automatic message] | 04:08 |
| ← andrewa2 left | 04:08 |
|
frogonwheels
| or is it --mine | 04:08 |
| ← fruight left | 04:09 |
| → hohoho joined | 04:09 |
|
dquestions
| i already did git checkout | 04:09 |
|
| i'm at the stage i like | 04:09 |
|
| i just need to do a git merge --strategy=ours master? | 04:09 |
| → mmc joined | 04:11 |
| → Utkarsh joined | 04:12 |
| ← mklappstuhl left | 04:14 |
| ← hebz0rl_ left | 04:14 |
| ← Textmode left | 04:15 |
|
dquestions
| how do i do force revert without mergeing | 04:15 |
|
| git reset | 04:16 |
|
| i see | 04:16 |
| ← Utkarsh left | 04:17 |
| ← TeckniX left | 04:17 |
|
dquestions
| god damn it :( | 04:17 |
| ← wuj left | 04:19 |
| → Utkarsh joined | 04:22 |
| → cylence joined | 04:22 |
| ← cylence left | 04:22 |
| → lightcap_ joined | 04:23 |
| lightcap_ → lightcap | 04:27 |
| → prs joined | 04:27 |
| → edude03 joined | 04:27 |
|
edude03
| Hello everyone | 04:28 |
| ← Utkarsh left | 04:28 |
| → phantomcircuit joined | 04:30 |
| → newchromiumuser joined | 04:32 |
| ← newchromiumuser left | 04:32 |
| ← phantomcircuit left | 04:33 |
| → sec^nd joined | 04:33 |
|
sec^nd
| hi | 04:33 |
|
| hi | 04:33 |
| → phantomcircuit joined | 04:33 |
| → Utkarsh joined | 04:33 |
|
sec^nd
| I have a remote repo that I checkout from my local repo (ssh), I want to push changes from my local repo to the remote repo, but the remote repo wont allow it because of this error "remote: error: refusing to update checked out branch: refs/heads/master" | 04:34 |
|
| + some more text | 04:34 |
|
| I tried push --all but got the same error | 04:34 |
|
SethRobertson
| faq non-bare | 04:35 |
|
jast
| SethRobertson: Pushing to non-bare repositories is discouraged: please see https://git.wiki.kernel.org/index.php/GitFaq#non-bare [automatic message] | 04:35 |
| → jarrod_ joined | 04:35 |
|
sec^nd
| what is the correct way to have repos that can be pushed and pulled from, meaning I can work on both and merge changes ? | 04:35 |
|
offby1
| sec^nd: like the man says: faq non-bare | 04:35 |
|
sec^nd
| what is git merge for then ? | 04:37 |
| → Textmode joined | 04:37 |
|
sec^nd
| can I merge changes between oooh nvm | 04:37 |
|
offby1
| er ... for creatig merge commits? | 04:37 |
|
sec^nd
| I guess merge merges commits | 04:37 |
|
| lag :P | 04:37 |
|
edude03
| What is "no changes added to commit"? | 04:38 |
|
| when I git commit | 04:38 |
| ← Utkarsh left | 04:38 |
|
offby1
| hmm, duno | 04:38 |
|
| maybe you didn't "git add" anything | 04:39 |
|
| does it say "no changes added to commit (use "git add" and/or "git commit -a")"? | 04:39 |
|
| If so, then my guess is probably right | 04:39 |
|
| or maybe "nothing to commit (working directory clean)" | 04:40 |
|
| If so, then my guess is (again) probably right :-) | 04:40 |
|
edude03
| Yeah that's the error | 04:40 |
|
sec^nd
| -.- | 04:40 |
|
| I did a reset hard and it still didn't work | 04:40 |
|
edude03
| the first one offby1 | 04:40 |
|
offby1
| edude03: remember, git wants you to put all your changes into the "index" first, with "git add". | 04:40 |
|
edude03
| But to commit changes on stuff that's already added? | 04:40 |
|
offby1
| that _should_ work. | 04:40 |
|
| if it doesn't, paste a transcript; either you've found a bug or (far more likely) are doing something wrong | 04:41 |
|
sec^nd
| both repos are on different commits because one is outdatated | 04:41 |
| → boombatower joined | 04:41 |
|
offby1
| sec^nd: as I said to edude03: paste a transcript, so we can see what's going on | 04:41 |
|
sec^nd
| I could probably update the other repo with git pull but I prefer push the changes so I dont have to log into the server | 04:41 |
|
offby1
| trying to describe it in prose is a waste of time. | 04:41 |
|
| You're not knowledgeable enough to describe it precisely, and we (or at least I) am too lazy to try to decipher your description | 04:42 |
| ← steph021 left | 04:42 |
| → steph021 joined | 04:43 |
| ← daleackerman left | 04:43 |
|
sec^nd
| http://pastebin.com/RC1N5DF7 | 04:43 |
|
| offby1: ^ | 04:43 |
|
edude03
| offby1: http://pastie.org/1307592 | 04:43 |
|
offby1
| hole on folks! | 04:44 |
|
| one at a time, no shoving. | 04:44 |
|
| edude03 shoves sec^nd | 04:44 |
|
| sec^nd stabs edude03 | 04:44 |
|
offby1
| hey you! | 04:44 |
|
| you must be _this_ high to enter. | 04:44 |
|
| offby1 holds hand four feet off the ground. | 04:44 |
| → Utkarsh joined | 04:44 |
|
offby1
| sec^nd: anyway, your problem is simple: your remote is not bare (boo, hiss), and even worse, it has the same branch checked out that you're trying to push. | 04:45 |
|
| If it were to let you do the push, then the checked out branch would (if someone were to do "git status") appear to have lots of changes, which is _super_ confusing. | 04:45 |
|
sec^nd
| -.- | 04:45 |
|
offby1
| So git is preventing you from doing that. | 04:45 |
|
| Since it's super-confusing. | 04:45 |
|
sec^nd
| so how do I super fix it ? | 04:45 |
|
offby1
| so to get around this: maybe you can "ssh" into the remote box, and check out some other branch. | 04:46 |
|
| or: ssh over there, and set the config setting that the message suggests. | 04:46 |
|
sec^nd
| offby1: there is only one branch (master) | 04:46 |
| ← rayners left | 04:46 |
|
sec^nd
| offby1: I just want to be able to push and pull from repos | 04:46 |
|
offby1
| or (ideally) ssh over there and convert the repo to a bare repo, and live in peace and harmony hereafter. | 04:46 |
|
| sec^nd: is there a reason why you didn't make that repo bare to begin with? | 04:46 |
|
| offby1 is guessing that it's a working tree where a developer does, like, y'know, actual hacking | 04:47 |
|
sec^nd
| offby1: I just git clone'd the repo from my local repo on the server | 04:47 |
|
offby1
| not sure I understand that | 04:48 |
|
| do you control both repositories? | 04:48 |
| → FireFoxIXI joined | 04:48 |
|
sec^nd
| offby1: I'm working on both repos | 04:48 |
|
| sometimes when I'm away I work on the remote repo | 04:48 |
|
offby1
| sure, but: do you _control_ both repositories? | 04:48 |
|
sec^nd
| when I'm local I work on the local repo | 04:48 |
|
offby1
| *sigh* | 04:48 |
|
| just a simple "yes", "no", or "I don't know what you mean" | 04:49 |
|
sec^nd
| yeah I guess so ... | 04:49 |
|
offby1
| OK. Would it be a pain in the butt to make that remote repo bare? | 04:49 |
|
sec^nd
| LAG | 04:49 |
| ← Utkarsh left | 04:49 |
|
sec^nd
| [Lag: 14.782] | 04:49 |
|
offby1
| i.e., have no working tree? | 04:49 |
|
| If not, just do it. | 04:49 |
|
sec^nd
| offby1: no | 04:49 |
|
| how do I make it bare | 04:49 |
|
offby1
| pretty easy: | 04:49 |
|
| "move" the .git directory up one level in the directory hierarchy. | 04:50 |
|
| So: if it's currently (say) /usr/local/src/project/.git | 04:50 |
|
| rename it to be /usr/local/src/project | 04:50 |
|
| naturally you'll have to rename /usr/local/src/project _first_ | 04:50 |
|
sec^nd
| thats confusing | 04:50 |
|
offby1
| once you've done that, then edit /usr/local/src/project/config and add "bare=true" to ... uh ... one of the stanzas | 04:50 |
|
sec^nd
| I know what you mean somewhat | 04:50 |
|
| but how would I see the files ? | 04:51 |
|
offby1
| you wouldn't. | 04:51 |
|
| if you need to see the files, then you shouldn't make it bare. | 04:51 |
|
sec^nd
| isn't git supposed to support multiple users ? | 04:51 |
|
offby1
| sure | 04:51 |
|
sec^nd
| meaning I can clone a repo and push changes back to that repo (with permission) | 04:51 |
|
offby1
| sure sure | 04:51 |
|
sec^nd
| how do I do that ? | 04:51 |
|
| offby1 stares blankly | 04:51 |
|
sec^nd
| you seem off by 1 -.- | 04:52 |
|
offby1
| I suspect your question is eminently reasonable, but I don't see how it relates to what we've been discussing. | 04:52 |
|
sec^nd
| or more ... | 04:52 |
|
| offby1: because I work on both servers | 04:52 |
|
| I want to be able to sync to those repos | 04:52 |
|
offby1
| yeah, and you want a working tree on both, I'm guessing. | 04:52 |
|
| well. | 04:52 |
|
| you can (I think) give a "--force" argument to git push, which means "yeah yeah, I know, but push anyway". | 04:53 |
|
| in which case you need to be aware of the potential confusion. But if you're OK with it, then fine. | 04:53 |
|
| another option is to have a _third_ repo (gasp!) which is indeed bare, and which you use as a central clearinghouse kinda place. | 04:54 |
|
| that's not as unusual as it might sound. | 04:54 |
|
| github is a popular choice. | 04:54 |
|
jgautier
| hey whats the best git book for newbies? | 04:54 |
|
offby1
| jgautier: can't tell you, really. | 04:54 |
|
sec^nd
| google | 04:54 |
|
offby1
| jgautier: but my generic git advice is: general-purpose git advice: 1) Read "Git For Computer Scientists" (http://eagain.net/articles/git-for-computer-scientists/); 2) Run "gitk --all"; 3) Learn about "git reflog" | 04:54 |
|
jgautier
| cool i can get by using google but i really have no idea what im actually doing | 04:55 |
|
offby1
| edude03: I haven't forgotten about you ... but to be honest, I _have_ forgotten your question :-| | 04:55 |
|
jgautier
| just running the commands that i find on google | 04:55 |
|
| :P | 04:55 |
|
edude03
| offby1: how do I commit :| | 04:55 |
|
offby1
| jgautier: I'd start with git-scm.com | 04:55 |
|
sec^nd
| edude03: you need to git add those files | 04:55 |
|
| git add ... | 04:55 |
|
| then git commit | 04:55 |
| → Utkarsh joined | 04:55 |
|
sec^nd
| you have to git add modified files too | 04:56 |
|
offby1
| (god I hate pastie.org) | 04:56 |
|
edude03
| I don't really care to track tohose files | 04:56 |
|
| What? | 04:56 |
|
| I have to add files that are modified? | 04:56 |
| → abetaha joined | 04:56 |
| ← steph021 left | 04:56 |
|
offby1
| edude03: you don't need to do anything about the untracked files. | 04:56 |
| → steph021 joined | 04:56 |
|
offby1
| but you do need to either "git add" ProgressLog.txt, or else just do "git commit -a" | 04:56 |
|
edude03
| OK so in future git commit -a always? | 04:57 |
| ← Textmode left | 04:57 |
|
Cacheaway
| edude03: "add" is not something you do one to add files to the project | 04:57 |
|
offby1
| edude03: that'll work, but you lose the (arguably) nice benefits of the index. | 04:57 |
|
| some of us actually _like_ the index. | 04:57 |
|
| offby1 glances around nervously. | 04:57 |
|
offby1
| really, we do. | 04:57 |
|
edude03
| I'm a git beginner | 04:57 |
|
| offby1 backs away slowly | 04:57 |
|
edude03
| What's the index? | 04:57 |
|
Cacheaway
| you "add" changes to the staging area (unfortunately named the index) and then commit | 04:57 |
|
offby1
| edude03: it's the thing that sits between your working tree and the repo, and is why you gotta "git add" ;-| | 04:57 |
|
| edude03: you need to read at least a tutorial. | 04:58 |
| ← jgautier left | 04:58 |
|
offby1
| you _have_ to know about the index to use git. No getting around it. | 04:58 |
| ← kukks left | 04:58 |
| → Mizar-jp joined | 04:58 |
|
Cacheaway
| edude03: the "index" is the staging area for your commit. it consists of what you have "added" since the last commit | 04:58 |
|
| edude03: are you coming from svn? | 04:58 |
|
edude03
| Yes :( | 04:59 |
|
Cacheaway
| ok | 04:59 |
|
offby1
| I have never quite understood why the index exists in the first place. I assume it was originally created as a performance hack, and later proved useful for other reasons. | 04:59 |
| → sh1mmer joined | 04:59 |
|
Cacheaway
| in svn, you "add" files to the project and they are now under source control, and when you commit, you are committing all the changes | 04:59 |
| → eletuchy_ joined | 04:59 |
| ← welly left | 04:59 |
|
sec^nd
| me too | 04:59 |
| → phantomcircuit_ joined | 04:59 |
|
Cacheaway
| in git, there is a middle ground between your working copy, and the commit. it's called the index. | 05:00 |
|
offby1
| yep | 05:00 |
|
Cacheaway
| the index is basically a staging area for the enxt commit | 05:00 |
| → hyperair joined | 05:00 |
|
offby1
| yep | 05:00 |
|
Cacheaway
| "git add" puts changes into the index. | 05:00 |
|
offby1
| and is often (confusingly) _called_ the "staging area". | 05:00 |
|
| It's even also called the "cache". | 05:00 |
|
| Three names for one thing. | 05:00 |
| ← Utkarsh left | 05:00 |
|
edude03
| What's the staging area? | 05:00 |
|
offby1
| index == cache == staging area | 05:00 |
|
| three names, same thing. | 05:01 |
|
edude03
| What's the purpose? | 05:01 |
|
offby1
| I guess that's better than three separate concepts, but still. | 05:01 |
|
bob2
| http://vi-server.org/vi/gitbasic.txt | 05:01 |
|
offby1
| edude03: heh. As I said above: I've never known. | 05:01 |
|
Cacheaway
| git allows you to commit some changes and leave others for another commit, or never commit them at all | 05:01 |
|
| for example | 05:01 |
|
offby1
| true true | 05:01 |
|
Cacheaway
| if you are on a fresh checkout, and you modify two files, you can then "git add file1" | 05:02 |
|
| you are not adding the file to git | 05:02 |
|
| you are adding your changes in the faile to the index | 05:02 |
| → cytrinox_ joined | 05:02 |
| ← eletuchy left | 05:02 |
|
Cacheaway
| at this point, if you do a commit, ONLY the changes in file1 will be actually committed, | 05:02 |
|
| file2 will still be in a modified state | 05:03 |
| ← phantomcircuit left | 05:03 |
|
Cacheaway
| does that make sense? | 05:03 |
|
edude03
| Yeah that makes perfect sense :P | 05:04 |
|
bob2
| the above link is a pretty good explanation | 05:04 |
| ← dr_win left | 05:04 |
|
edude03
| So why do I lose my index if I git commit -a? | 05:04 |
|
| Does it just restage everything? | 05:04 |
|
Cacheaway
| you don't lose anything, you just kinda skip it | 05:04 |
|
edude03
| bob2: Sorry I forgot to thank you I was just reading it | 05:05 |
|
bob2
| edude03: thank _Vi :) | 05:05 |
|
mikeric
| how can i rebase edit a commit that's just before a merge commit? | 05:05 |
|
Cacheaway
| git commit -a basically runs a git add on all modified files | 05:05 |
|
| and then a commit | 05:05 |
|
edude03
| What's wrong with that? | 05:05 |
| → richard28530 joined | 05:05 |
|
edude03
| That's usually exactly what I want to do :p | 05:05 |
|
mikeric
| for some reason it doesn't work as i'd expect. it recommits them ontop of head. | 05:05 |
| → Utkarsh joined | 05:06 |
|
Cacheaway
| nothing is WRONG with it, you are just bypassing a powerful tool you have at your disposal | 05:06 |
| ← cytrinox left | 05:06 |
| cytrinox_ → cytrinox | 05:06 |
|
Cacheaway
| I use it sometimes when i know I want to commit everything i've changed | 05:06 |
|
edude03
| Well for me | 05:07 |
|
| Usually I'll set out to fix a specific bug | 05:07 |
|
| which touches multiple files (like having to update a method signature) | 05:07 |
|
| so lets say I have to update 4 files, I'd like to commit the bug fix as a whole (which would be all 4 files) | 05:08 |
| ← eletuchy_ left | 05:09 |
|
edude03
| But anyway I understand now so thanks guys | 05:10 |
|
| One other thing though | 05:10 |
|
| I'm working on my local machine and only my local machine | 05:10 |
|
| but what do I do when I want to move the repo to a remote server? | 05:10 |
| ← Utkarsh left | 05:10 |
|
Cacheaway
| yes that's fine. But how about this scenario. There is a fifth file you changed which you do not want to commit. perhaps it is a config file in which you enabled debugging or somehthing while hunting down the bug. using the SVN way (commit -a) you would need to revert that file first. if you git add the 4 files you want to commit, and then do a regular commit, you don't need to revert first | 05:11 |
|
edude03
| True, I can definitely see how that can be useful | 05:12 |
|
Cacheaway
| you seeing it as useful is all I was hoping for ;) I'm not eveangelizing | 05:12 |
|
| you have a few ways you can move it to another server. the easiest would be just to copy the whole folder | 05:13 |
|
edude03
| Evangelize all you want I left SVN willingly :P | 05:13 |
|
Cacheaway
| heh. | 05:13 |
|
| Are you are going to be wanting to push / pull from the remote server? | 05:14 |
|
offby1
| edude03: ever notice how "svn switch" breaks your working copy about 30% of the time? | 05:14 |
|
Cacheaway
| like, you are setting it up there so you can work from 2 places? | 05:14 |
|
edude03
| hmm setting it up so multiple people can commit | 05:14 |
|
offby1
| edude03: you probably want gitolite | 05:15 |
|
| unrelated to dynomite, in case you were wondering | 05:15 |
|
edude03
| I was think gitorious actually | 05:16 |
|
offby1
| oh, that too | 05:16 |
| → zombor joined | 05:16 |
|
offby1
| or github | 05:16 |
|
Cacheaway
| edude03: you get a pass as an svn convert, but surely you mean so multiple people can puish? | 05:16 |
|
offby1
| phish? | 05:16 |
|
sec^nd
| -.- | 05:16 |
|
offby1
| squish? | 05:16 |
|
Cacheaway
| push | 05:16 |
|
sec^nd
| how can users share a repo ? | 05:16 |
|
edude03
| Is that what I mean? | 05:16 |
|
| I mean for team work purposes? | 05:17 |
|
offby1
| sec^nd: basically two ways: 1) gitolite; 2) wizardly Unix permissions | 05:17 |
|
Cacheaway
| edude03: every user will have his/her own copy of the entire repo, and be doing commits | 05:17 |
|
| to their own copy | 05:17 |
|
offby1
| edude03: that's metaphysically absurd, man! How can _I_ know what _you_ mean! | 05:17 |
|
sec^nd
| offby1: I'm still having the same problem, -.- | 05:17 |
|
offby1
| sec^nd: which? | 05:17 |
|
sec^nd
| I want these repos to have a way to be in sync | 05:17 |
|
Cacheaway
| pushing and pulling are how two copies of the same repo sync up | 05:17 |
|
sec^nd
| the push error | 05:17 |
|
| Cacheaway: its giving me errors :/ | 05:18 |
| → Utkarsh joined | 05:18 |
|
edude03
| LOL offby1 I mean whatever the term I mean that would allow me to work with other people on the same code | 05:18 |
|
mikeric
| is there a way to merge a single commit in? | 05:18 |
|
sec^nd
| hmm | 05:18 |
|
Cacheaway
| edude03: there are two mechanisms, push and pull | 05:18 |
|
mikeric
| forget everything before and after it. | 05:19 |
|
offby1
| sec^nd: like I say: 1) make a third, bare repo, and have both existing repositories push to that instead of pushing to each other; or 2) pass "--force" when you push; or 3) configure the remote to allow this sort of push; or 4) check out some other branch on the remote | 05:19 |
|
| I _think_ those are the only options | 05:19 |
|
sec^nd
| I'm going to try and create a seperate repo for them and then have a working repo | 05:19 |
|
Cacheaway
| if a user has write access to a remote repo, they can push to it | 05:19 |
|
offby1
| mikeric: you probably want "git cherry-pick" | 05:19 |
|
| it doesn't, strictly speaking, "merge" the commit; but it applies that patch that the commit represents. | 05:19 |
|
Cacheaway
| otherwise, they can give read access to the owner of the remote, and the owner can pull from them | 05:19 |
|
| so, there are a few options | 05:20 |
|
edude03
| Hmm that makes sense | 05:20 |
| → yhager joined | 05:20 |
|
edude03
| But you can't pull from another users repo if they don't have a public IP right? | 05:20 |
|
Cacheaway
| you could setup one certral location, and it's the master repo, and everybody can push to it and pull from it | 05:20 |
|
edude03
| Or otherwise aren't set up to serve | 05:20 |
|
Cacheaway
| correct | 05:20 |
|
edude03
| Yeah so a central location is what I'm trying to set up | 05:21 |
|
| or will be soon | 05:21 |
| ← CrypTom left | 05:21 |
|
Cacheaway
| well, this can be as easy as sharing a common login on a ssh server somewhere | 05:21 |
|
sec^nd
| how do I pull from a repo overwriting all changes ? | 05:21 |
|
offby1
| yeah ... although gitolite is probably a better choice if there's any chance you'll have more than (say) three collaborators | 05:22 |
|
Cacheaway
| git speaks ssh and can use it for pushing and pulling | 05:22 |
|
offby1
| sec^nd: first, you could "git reset --hard HEAD", which will destroy all uncommitted changes. | 05:22 |
|
| Cacheaway defers to offby1 as he knows nothing of gitolite | 05:22 |
|
offby1
| sec^nd: then, you can "git fetch; git merge --strategy theirs". I think. (Haven't actually tried it.) | 05:22 |
|
| Cacheaway: I've only played with it, but I know that's what it's for, and I know the author is generally here on #git and is very helpful. | 05:23 |
|
Cacheaway
| offby1: you need to pay to have a private project on github, right? | 05:23 |
| ← Utkarsh left | 05:24 |
|
| Cacheaway is going away to catch up on Dexter TTFN #git, gl, edude03 | 05:25 |
|
edude03
| LAter Cacheaway thanks again | 05:25 |
|
| YEah you have to pay for github | 05:26 |
|
| I'd love to use it but I'm not sure it's worth it for me :/ | 05:26 |
|
| Besides | 05:26 |
| ← Eridius left | 05:26 |
|
edude03
| Just recently github crashed and lost a bunch of data | 05:26 |
|
bob2
| lost a tiny amount of data at worst | 05:27 |
|
edude03
| I don't know the magnitude to be honest | 05:27 |
|
| but 1 byte = too much :P | 05:27 |
|
sitaram
| edude03: not much, if at all. Only some pull requests. Actual repo data was never lost -- it's not even part of the "database" that they accidentally broke | 05:27 |
| → enherit joined | 05:28 |
|
sitaram
| edude03: 1 byte == too much if this was git repo data, I agree. It wasn't. It was ancillary stuff; most people get by ok without that :) YMMV | 05:28 |
|
edude03
| yes two == signs | 05:28 |
|
| http://twitter.com/marcan42 | 05:29 |
|
| Was talking about it the other day | 05:29 |
| ← madewokherd left | 05:29 |
|
sitaram
| edude03: it's definitely worth it if you don't want to roll your own. As for that twitter page, I doubt the status is still the same (but I *am* surprised he said the repo was gone... not accessible while the super-structure went AWOL, I think) | 05:30 |
|
offby1
| edude03: coincidentally, just when github was down, I wanted to get some commits from my laptop to a hosting site. It took me maybe ten minutes longer than it would have if github were up, but I did it with no trouble. | 05:30 |
| ← hyperair left | 05:30 |
|
offby1
| (most of those ten minutes were spent reading the "git bundle" manpage) | 05:31 |
|
edude03
| I'd also love to roll my own github | 05:31 |
| ← zombor left | 05:31 |
| ← sebastorama left | 05:31 |
|
edude03
| Gitorious should be close enough though | 05:31 |
| → Utkarsh joined | 05:31 |
| ← mdel left | 05:31 |
|
edude03
| I just need some CI and I'm good | 05:31 |
|
offby1
| edude03: your uptime would probably be about 85% of theirs. | 05:31 |
|
edude03
| Why do you assume that? | 05:31 |
|
sitaram
| edude03: gitolite comes close; see what KDE does with it at http://community.kde.org/Sysadmin/GitKdeOrgManual (section 4 and 5 are pretty much gitolite, with some custom code on their side) | 05:32 |
| → CrypTom joined | 05:33 |
|
offby1
| edude03: because I'm guessing you're not a professional git-hosting company with years of experience. | 05:33 |
|
edude03
| You'd be right about that. | 05:33 |
|
| offby1 slaps self on back | 05:34 |
|
edude03
| Though I do run a webhosting company | 05:34 |
|
offby1
| that's a start. | 05:34 |
|
edude03
| mhm | 05:34 |
|
offby1
| it's entirely possible that you'd do as well hosting your own repositories as you would by using github. But for (I'd guess) 95% of hackers, github is a good choice. | 05:34 |
|
edude03
| We run a VMWare cluster of 5 servers + 2 drobos for storage | 05:34 |
|
mikeric
| offby1: doesn't that make me the commiter at that point? | 05:35 |
|
offby1
| mikeric: I'm not sure, actually. | 05:35 |
|
| Try It And See™. | 05:35 |
|
mikeric
| offby1: yes, it does. | 05:35 |
|
| so does a rebase, actually. | 05:35 |
|
offby1
| It might make you the committer, but not the author (or vice-veras) | 05:35 |
|
mikeric
| right | 05:36 |
| ← Utkarsh left | 05:36 |
|
mikeric
| i want to leave the history untouched. | 05:36 |
|
offby1
| can't do it, then. | 05:36 |
|
| without doing a simple merge. | 05:36 |
|
mikeric
| i'm trying ot prevent something that i seem to do a lot. | 05:36 |
|
offby1
| go on | 05:37 |
|
mikeric
| i make a bunch of commits, and then i pull from origin. at this point i have all my new commits, mixed in with some new commits from co-developers. | 05:37 |
|
offby1
| I suspect that, whatever your problem is, there's a reasonably simple solution | 05:37 |
|
mikeric
| and a merge commit at the top. | 05:37 |
|
| then i push back to origin. | 05:37 |
|
offby1
| sure sure | 05:37 |
|
| totally typical | 05:37 |
|
mikeric
| only at this point do i realize a mistake in a commit i had, before the merge. | 05:37 |
|
offby1
| aha | 05:37 |
|
| ze plotz, she's a-thicken | 05:37 |
|
mikeric
| a mistake that would better be amended than a new commit. | 05:37 |
|
offby1
| not really an option. | 05:38 |
|
| once you've pushed. | 05:38 |
|
| unless every one of your collaborators is willing to jump through some hoops | 05:38 |
|
mikeric
| i've done a git push -f a few times | 05:38 |
|
| they don't seem to care | 05:38 |
|
| i guess they just reset back a few and re-pull | 05:39 |
|
offby1
| *shrug* then that's a reasonable fix. | 05:39 |
|
mikeric
| but that doesn't fix it. | 05:39 |
|
offby1
| it doesn't? | 05:39 |
|
mikeric
| that just duplicates the commits. | 05:39 |
|
| which is worse, lol. | 05:39 |
|
offby1
| well, the old value of the branch will still have the old, bad commit. | 05:39 |
|
mikeric
| the problem is with the merge and rebasing. | 05:39 |
|
offby1
| But everyone is expected to just forget about that old value. | 05:39 |
| → dreiss joined | 05:40 |
|
offby1
| mikeric: you may need to cook up a tiny demonstration, to explain; I'm starting to have trouble following you. | 05:40 |
|
mikeric
| sure, one sec. | 05:40 |
| ← sivy left | 05:41 |
| → Alexander_ joined | 05:42 |
| → Utkarsh joined | 05:42 |
| ← jfkw left | 05:43 |
|
mikeric
| offby1: probably not any better.. http://pastie.org/1307667 | 05:47 |
| ← nullvariable left | 05:47 |
|
offby1
| gimme a sec | 05:47 |
|
| gotta put on my anti-pastie goggles | 05:47 |
| ← Alexander_ left | 05:47 |
|
mikeric
| sorry about the pseudo git logs there | 05:47 |
|
| :) | 05:47 |
|
offby1
| yeah ... lemme ponder it some more | 05:48 |
|
| there's something weird | 05:48 |
|
| you're showing that _after_ you pull, you get new commits -interspersed- with yours. | 05:48 |
|
| That can't be right. | 05:48 |
|
mikeric
| yea, that's definitely right. | 05:48 |
| → girishr joined | 05:48 |
|
offby1
| have you tried "gitk --all"? | 05:48 |
|
mikeric
| isn't that how git merge works? | 05:49 |
|
offby1
| nope | 05:49 |
|
mikeric
| yes | 05:49 |
|
offby1
| I'm stumped, then. | 05:49 |
|
| unless you painstakingly construct like a shell script that reproduces the problem, I don't think I'm going to understand what you're asking. | 05:49 |
| ← Utkarsh left | 05:49 |
| ← tampakrap left | 05:49 |
| → burhan joined | 05:50 |
|
offby1
| now, in general, if you realize there's a problem in some commit that isn't the tip, then the simplest course of action is probably to just create a commit that fixes the problem, and warn people not to build anything before that fix. | 05:50 |
|
burhan
| what's the name of the widget that displays the source code on github.com? | 05:50 |
|
offby1
| no idea. | 05:50 |
| → mention joined | 05:51 |
|
burhan
| is the source of github.com available? | 05:51 |
|
offby1
| it's probably specific to github, and proprietary, and You Can't Have It Nyaa Nyaa. | 05:51 |
|
| burhan: heh, hell no. | 05:51 |
|
mikeric
| offby1: i guess it just comes down to me not wanting my silly mistakes present in the history.. | 05:51 |
|
burhan
| its quite good | 05:51 |
|
offby1
| burhan: I wouldn't be surprised if they've released a fair amount of open-source, but the guts of the service are how they make money. | 05:51 |
|
mikeric
| i'm ocd like that, i like to keep the commit history curated. | 05:51 |
|
offby1
| burhan: if you really want to know, ask schacon;he works there | 05:52 |
|
| mikeric: I'm the same way. | 05:52 |
| ← girishr left | 05:52 |
| ← MikhX left | 05:52 |
|
offby1
| mikeric: I pile up a ton of local (more or less private) commits, and when it's time to publish 'em, I do a flurry of rebasing first. | 05:52 |
|
mikeric
| i hate little commits here and there like "whoops fixing blah", "another fix", etc. | 05:52 |
|
offby1
| Most times I squash 'em all down to just one big patch-bomb commit. | 05:52 |
|
| yep yep | 05:52 |
| ← spatulasnout left | 05:53 |
|
offby1
| mikeric: you've got the right attitude, in my humble opinion: your commits should be coherent. | 05:53 |
| → spatulasnout joined | 05:53 |
|
offby1
| tell a story, etc. | 05:53 |
| ← enherit left | 05:53 |
|
mikeric
| yea | 05:53 |
|
offby1
| mikeric: once you've pushed, though, all bets are off. | 05:54 |
|
| it's out there and you gotta deal with it. | 05:54 |
|
| offby1 strains for an analogy | 05:54 |
|
mikeric
| well | 05:54 |
|
| you could always reset back and push -f | 05:54 |
|
| :) | 05:55 |
| → Utkarsh joined | 05:55 |
|
mikeric
| unless you merged and then pushed. | 05:55 |
|
offby1
| sure, but that requires a bunch of patient collaborators | 05:55 |
| ← chrislerum left | 05:55 |
|
mikeric
| yea | 05:55 |
|
offby1
| at some point, you're down to just using "unison" | 05:56 |
| ← Utkarsh left | 05:59 |
| → everyman_ joined | 05:59 |
| → ichat_system joined | 06:00 |
| ← sdwrage left | 06:01 |
| → devanjan joined | 06:01 |
| → dieagram joined | 06:02 |
|
mikeric
| offby1: hmm, i just figured it out. | 06:03 |
| ← aresnick left | 06:04 |
|
mikeric
| if i specify a commit sha to rebase to (instead of head^^^^^) (even if they are the same commit), then it doesn't take the merge commits into account. | 06:04 |
| ← ichat_system left | 06:05 |
|
mikeric
| and then when i rebase, it keeps all the existing commits, but removes/ignores the merge commits, in which case it actually applies cleanly. | 06:05 |
|
| at least it seems like it did :) | 06:05 |
| → Utkarsh joined | 06:05 |
|
mikeric
| man, i'm horrible at explaining this. | 06:06 |
|
blast_hardcheese
| If I'm absolutely positive that nobody has checked out from me and I haven't pushed anywhere yet, is checking out something in the past, then git commit --amend kosher? Will that break time? | 06:06 |
| → OOPMan joined | 06:06 |
| → hasrb joined | 06:07 |
|
offby1
| blast_hardcheese: if you're sure, then go ahead | 06:08 |
| → doener joined | 06:08 |
|
blast_hardcheese
| Alright; I just did it, just seemed really scary, since I had a bunch of uncommitted changes that I was stashing/popping then re-stashing | 06:09 |
| → eletuchy joined | 06:10 |
| → roop_ joined | 06:10 |
| → MikhX joined | 06:11 |
| ← Utkarsh left | 06:12 |
| → saysjonathan joined | 06:12 |
| → freimatz joined | 06:13 |
| → jspiros joined | 06:13 |
|
blast_hardcheese
| Oh crap, I lost a file | 06:15 |
|
| Yeah, that was a terrible idea. | 06:16 |
| → Utkarsh joined | 06:17 |
| ← richard28530 left | 06:17 |
|
selckin
| there is notting wrong amend, and it won't make you lose files | 06:17 |
| → alex__c2022 joined | 06:18 |
| ← saysjonathan left | 06:18 |
|
blast_hardcheese
| git stash; git checkout <hash>; git stash pop; git add -p; git commit -m; git stash; git checkout master; git stash pop | 06:18 |
| → saysjonathan joined | 06:18 |
|
blast_hardcheese
| I lost two untracked files | 06:18 |
|
selckin
| the problem is git checkout <hash> | 06:18 |
| → Guest94165 joined | 06:18 |
|
selckin
| that puts you on a detached head, where you definitly shouldn't commit | 06:18 |
| → Guest97882 joined | 06:19 |
|
blast_hardcheese
| oh. | 06:19 |
|
theoros
| blast_hardcheese: when you did git checkout master | 06:19 |
|
| blast_hardcheese: what does it say for "previous commit was" | 06:19 |
|
blast_hardcheese
| previous head position? | 06:20 |
|
theoros
| yes | 06:20 |
|
blast_hardcheese
| aaae, the hash I checked out | 06:20 |
|
selckin
| blast_hardcheese: if you want to amend to a random commit in the past, make a new commit, do git rebase -i <hash before it>, and then move the commit behind it, and pick squash/fix | 06:20 |
|
blast_hardcheese
| crap. | 06:21 |
| ← krosenvold left | 06:21 |
|
theoros
| blast_hardcheese: so you can just do git tag dont_lose_me aaae | 06:21 |
| ← Utkarsh left | 06:21 |
|
blast_hardcheese
| theoros: what would that get me? | 06:21 |
|
theoros
| that commit still exists, it's just not reachable | 06:21 |
| → krosenvold joined | 06:21 |
| → blahdeblah joined | 06:21 |
|
blast_hardcheese
| oh, no; I haven't lost any commits | 06:21 |
|
| not that I can tell anyway | 06:21 |
|
| I just lost files | 06:21 |
|
theoros
| oh you lost _untracked_ files | 06:21 |
|
blast_hardcheese
| they were untracked files. | 06:22 |
|
theoros
| how did that work | 06:22 |
|
blast_hardcheese
| Yeah I have no idea. | 06:22 |
|
| Oh, wait a minute, I think I know how. | 06:22 |
| ← itamarjp left | 06:22 |
|
blast_hardcheese
| one sec | 06:22 |
| ← saysjonathan left | 06:23 |
| → saysjonathan joined | 06:23 |
|
blast_hardcheese
| Hm. | 06:23 |
|
blahdeblah
| Hi. Is there a git shorthand for diffing a remote repo's current state with its state at the last time i merged it? I want to view what has happened on the remote since my last pull. | 06:23 |
| ← Yuffster left | 06:23 |
| → albel727_2 joined | 06:23 |
|
blast_hardcheese
| theoros: Is there a way I can list commits by time? | 06:24 |
| ← alex__c2022 left | 06:24 |
|
blast_hardcheese
| the unlinked ones, that is | 06:24 |
|
bob2
| blast_hardcheese: git log master..blah/master | 06:24 |
|
| assuming ytou have updated lately | 06:24 |
|
blast_hardcheese
| where blah is something like origin? | 06:25 |
| ← coderdad left | 06:25 |
|
bob2
| yes | 06:25 |
| → sambarino joined | 06:26 |
| → Utkarsh joined | 06:26 |
| ← albel727 left | 06:27 |
| ← saysjonathan left | 06:27 |
| → alex__c2022 joined | 06:28 |
|
blast_hardcheese
| I don't think I lost anything... Yeah, I lost the untracked files, but I got VERY lucky-- they were still open in my IDE | 06:28 |
| → saysjonathan joined | 06:28 |
| → hyperair joined | 06:29 |
| ← alex__c2022 left | 06:29 |
| ← Utkarsh left | 06:29 |
| ← xtagon left | 06:30 |
|
kanzure
| hmm this is odd.. | 06:30 |
|
| someone took a raw copy of a .git repo (not knowing what git was) | 06:30 |
|
| and just edited the files, and now has a repo of his own starting from that state | 06:30 |
|
| so i want to merge in the commits that he has in his fresh repo, into the mainline .git repo | 06:31 |
|
| any ideas? | 06:31 |
| ← edude03 left | 06:31 |
|
selckin
| just do it? | 06:31 |
|
kanzure
| what? | 06:31 |
| → richard28530 joined | 06:31 |
|
selckin
| thats normal workflow | 06:31 |
|
kanzure
| no it'sn ot | 06:31 |
|
| he didn't clone the repo | 06:31 |
|
selckin
| doesn't mather | 06:32 |
|
kanzure
| i want those commits- with those dates- in the history | 06:32 |
|
| this is not normal workflow | 06:32 |
|
selckin
| add his repo as a remote to yours and pull from it, and add yours to his as a remote and push | 06:32 |
|
| either way its pritty normal | 06:32 |
|
kanzure
| hm | 06:32 |
| ← dieagram left | 06:33 |
|
kanzure
| ok i'll try that | 06:33 |
| ← saysjonathan left | 06:33 |
| → petran joined | 06:33 |
| → saysjonathan joined | 06:34 |
|
blahdeblah
| So, any suggestions on how to diff a remote's current state against the last time i merged it? I have the commit id if that helps... | 06:34 |
|
theoros
| diff your_remote/branch last_merge_commit | 06:35 |
|
doener
| blahdeblah: git diff <your_branch>...<other_branch> | 06:36 |
|
| blahdeblah: that's three dots, and makes git do the merge base calculation for you | 06:37 |
|
digitalfiz
| so when i get master to a state i want should i branch it to like a 1.0 branch? im a n00b git user just started really | 06:37 |
| → tgunr joined | 06:37 |
|
theoros
| git doesn't prescribe your workflow | 06:37 |
|
| you have to come up with one yourself | 06:37 |
|
| you could have master contain your finished releases | 06:38 |
| → Utkarsh joined | 06:38 |
|
theoros
| or you could have a separate branch to handle that | 06:38 |
|
digitalfiz
| well what i want is like a "snapshot" or the code in that current state for future reference | 06:38 |
|
doener
| blahdeblah: in general: git diff A...B == git diff $(git merge-base A B) B ==> diff B against the common ancester | 06:38 |
|
| digitalfiz: for that use case, use a tag | 06:38 |
| ← saysjonathan left | 06:38 |
|
theoros
| you may find http://nvie.com/posts/a-successful-git-branching-model/ enlightening in some way | 06:38 |
|
digitalfiz
| that people can pull later if say 1.0 works for them but 1.2 doesnt | 06:38 |
|
theoros
| you could use a subset of that workflow or alter it in some way etc. | 06:38 |
|
digitalfiz
| awesome ty | 06:39 |
| → saysjonathan joined | 06:39 |
|
theoros
| where you tag, though, isn't really important | 06:39 |
|
| if you get it to the state you want it and you tag it, that tag is reference-able | 06:39 |
| → goshawk joined | 06:40 |
|
blahdeblah
| doener: That doesn't seem like what i want, if i'm understanding you correctly. I want to see diff of - i.e. what's changed on the remote since i last i merged it. Both diff targets are on the remote. | 06:40 |
| → psankar joined | 06:40 |
|
blahdeblah
| s/- i.e.// | 06:40 |
|
| Bad cut & paste editing by me | 06:40 |
|
theoros
| that seems like what you want | 06:41 |
|
| take the remote, look at the closest common ancestor of your local branch, which will be the last time the two branches were merged | 06:41 |
|
| then find the diff of the remote branch by comparison to that ancestor | 06:42 |
| ← eventualbuddha left | 06:42 |
|
| blahdeblah tries | 06:42 |
| ← mmoya left | 06:43 |
|
theoros
| (i hope you aren't trying that manually) | 06:43 |
|
| maybe it would be good to do it manually to see what A...B is doing | 06:43 |
|
blahdeblah
| no, with ... | 06:43 |
|
Rickardo1
| I have managed to setup git and using it locally. Now I want to setup a server to push my repos on. Is it github I´m looking for? | 06:43 |
| → eventualbuddha joined | 06:43 |
|
theoros
| Rickardo1: you can set up your own server if you don't want to use github | 06:43 |
| ← saysjonathan left | 06:44 |
|
blahdeblah
| theoros: in the example doener gave, A is origin/master and B is the commit id of the last time origin/master was merged locally, correct? | 06:44 |
|
frogonwheels
| Rickardo1: github is a public repository - (free is public anyway) | 06:44 |
| → saysjonathan joined | 06:44 |
|
Rickardo1
| theoros: Ok, is there different git server software? | 06:44 |
|
frogonwheels
| Rickardo1: use gitosis if you want to host it on your own machines. | 06:44 |
| ← Utkarsh left | 06:44 |
| → ss23 joined | 06:44 |
|
frogonwheels
| no | 06:44 |
|
theoros
| i can never remember, is gitolite > gitosis, or the other way around? | 06:44 |
|
Rickardo1
| frogonwheels: ok | 06:44 |
|
frogonwheels
| Rickardo1: use gitolite | 06:44 |
|
ss23
| I commited, haven't pushed, is there any way I can be like "Remove file X from that commit I just did" | 06:44 |
|
frogonwheels
| theoros: gitolite > gitosis yes (gitosis came first) | 06:44 |
| ← Tianon left | 06:45 |
|
theoros
| the names really don't help | 06:45 |
|
ss23
| (I would look in the documentations, but I don't know where to start :S) | 06:45 |
|
theoros
| ss23: type git status | 06:45 |
|
| oh, sorry | 06:45 |
|
blahdeblah
| theoros: Because if that is correct, it's no giving me what i want: it's giving a diff of the local repo against origin/master at that commit id, which is not what i want | 06:45 |
|
theoros
| i read indexed instead of committed | 06:45 |
|
| ss23: man git-reset | 06:45 |
|
jast
| ss23: the 'git-reset' manpage can be found at http://git.or.cz/man/git-reset [automatic message] | 06:45 |
|
frogonwheels
| ss23: and if you use git gui you can just click the 'ammend last commit' radio butotn :) | 06:46 |
| → albel727 joined | 06:46 |
|
sitaram
| theoros: no they don't. gitolite started life as "gitosis-lite". I renamed it in about 4-5 days after announcing it. And then pretty soon it became "gitosis-NOT-lite" but I dare not rename it again now ;-) | 06:46 |
|
theoros
| blahdeblah: what command did you type? | 06:46 |
|
ss23
| Thanks theoros | 06:46 |
|
blahdeblah
| theoros: git diff origin/master...<commitid of last merge with origin/master> | 06:46 |
|
theoros
| ss23: as frogonwheels said, you could just git rm the file and then git commit --amend | 06:46 |
|
frogonwheels
| sitaram: hey at least it wasn't gitosisng | 06:46 |
|
theoros
| blahdeblah: you've done them the wrong way around | 06:47 |
|
sitaram
| theoros: so think of "lite" as being a "suffix" of some kind and that will help you remember it came later | 06:47 |
|
theoros
| blahdeblah: A...B is $(git merge-base A B) B | 06:47 |
|
| blahdeblah tries again | 06:47 |
|
sitaram
| frogonwheels: oh I hate that ng stuff. I think of NTFS and NT and so on, for some reason (even though the N does not mean the same) | 06:47 |
|
frogonwheels
| theoros: or I was thinking anyway. I theoretically know how to use --amend | 06:47 |
|
theoros
| blahdeblah: you're looking for $(git merge-base B A) A, so it's B...A | 06:47 |
|
| blahdeblah needs to understand merge-base better | 06:48 |
|
theoros
| frogonwheels: i use it a lot, i just also tend to use git reset HEAD^ <file> | 06:48 |
|
blahdeblah
| Thanks theoros - that's giving me the right stuff | 06:48 |
| → Dreamer3 joined | 06:48 |
|
frogonwheels
| theoros: I tend to commit the change and then rebase -i and 'bugfix' it | 06:48 |
|
theoros
| ss23: oh uh, git rm might not be what you want, depending on how you want "remove" to be interpreted. | 06:48 |
|
chadh
| sitaram: I thought it was like JJ from the TV show Good Times used to say: Git-O-LIIIITE! | 06:48 |
| ← albel727_2 left | 06:48 |
|
theoros
| frogonwheels: do you know about --autosquash? | 06:48 |
| → Tianon joined | 06:48 |
| ← Tianon left | 06:48 |
| → Tianon joined | 06:48 |
|
sitaram
| chadh: I'm probably not familiar with that one... :) | 06:49 |
| ← saysjonathan left | 06:49 |
|
chadh
| sitaram: :10 into this: http://www.youtube.com/watch?v=v19PpD5uqL0 | 06:49 |
| → saysjonathan joined | 06:49 |
| ← sambarino left | 06:49 |
|
sitaram
| chadh: thanks; I'll bookmark it (youtube doesnt work at work) | 06:49 |
| → Utkarsh joined | 06:50 |
|
theoros
| sitaram: i try to do that to remember, but.. it just doesn't stick | 06:50 |
|
chadh
| sitaram: aww. It was a catch phrase of the character. | 06:50 |
|
theoros
| sitaram: maybe now that i've had you yourself tell me, it might stick | 06:50 |
| → sambarino joined | 06:50 |
|
chadh
| sitaram: btw, I just swapped out those \h's, and I am in business, so that was definitely the problem | 06:50 |
|
sitaram
| theoros: ah well; don't worry if it doesn't... | 06:51 |
|
| chadh: with what? [ \t] is the correct substitute | 06:51 |
|
theoros
| if i ever get around to actually using gitolite, that will definitely do it. | 06:52 |
|
sitaram
| chadh: brace, space, backslash, t, brace-close | 06:52 |
|
| theoros: :) | 06:52 |
| ← gretch left | 06:52 |
|
chadh
| sitaram: can you use \t in [] ? that's essentially what I used, though | 06:52 |
|
theoros
| blahdeblah: get it working? | 06:52 |
|
chadh
| sitaram: I used brace space tab brace-close | 06:52 |
|
blahdeblah
| blahdeblah: yep - beautiful. Thanks for your help. | 06:53 |
| ← giallu left | 06:53 |
|
blahdeblah
| s/blahdeblah/theoros/ | 06:53 |
|
theoros
| blahdeblah: good stuff. it's worth noting that diff has its own interpretation of the A...B syntax | 06:53 |
|
| git rev-parse will give you a different meaning | 06:53 |
|
blahdeblah
| I just need to understand the merge-base thingy a bit more. | 06:54 |
|
theoros
| which is, iirc, A B ^$(git merge-base A B) | 06:54 |
| ← saysjonathan left | 06:54 |
| ← eventualbuddha left | 06:54 |
| ← hyperair left | 06:54 |
|
theoros
| blahdeblah: i think of it as, merge-base A B is, pick either A or B, start following parents until you find a commit which is an ancestor of B | 06:55 |
|
blahdeblah
| ok | 06:55 |
|
sitaram
| chadh: yes you can use \t; that sequence is actually used in several examples in man perlre (on my version anyway) | 06:55 |
| → saysjonathan joined | 06:55 |
|
theoros
| (or A) | 06:55 |
| ← Eaven left | 06:55 |
|
blahdeblah
| theoros: Just RTFM-ing now | 06:55 |
|
theoros
| "Specifying revisions" in rev-parse --help will probably be useful | 06:56 |
| ← xiangfu left | 06:56 |
|
theoros
| and/or "specifying ranges", i forget | 06:56 |
| → hyperair joined | 06:56 |
| → eventualbuddha joined | 06:57 |
| ← xiong left | 06:58 |
| → Athox joined | 06:59 |
| ← blahdeblah left | 06:59 |
| ← Anti-X left | 06:59 |
| ← saysjonathan left | 06:59 |
| → saysjonathan joined | 07:00 |
| ← mention left | 07:02 |
| ← everyman_ left | 07:04 |
| ← saysjonathan left | 07:04 |
| → saysjonathan joined | 07:05 |
| ← albel727 left | 07:05 |
| ← spatulasnout left | 07:05 |
| → albel727 joined | 07:05 |
| ← SimonP86 left | 07:05 |
| → spatulasnout joined | 07:06 |
| → srcerer_ joined | 07:06 |
| ← abetaha left | 07:07 |
| ← v left | 07:07 |
| ← Utkarsh left | 07:08 |
| → v joined | 07:08 |
| ← srcerer left | 07:08 |
| ← nchaimov left | 07:09 |
| ← MattDiPasquale left | 07:09 |
| → mmoya joined | 07:09 |
| ← hyperair left | 07:09 |
| ← saysjonathan left | 07:10 |
| → levifig joined | 07:10 |
| → saysjonathan joined | 07:11 |
| ← goshawk left | 07:11 |
| ← mmoya left | 07:12 |
| → khmarbaise joined | 07:13 |
| → gretch joined | 07:14 |
| ← saysjonathan left | 07:16 |
| → saysjonathan joined | 07:16 |
| → mastroDani joined | 07:17 |
| ← khmarbaise left | 07:17 |
| → mtkd joined | 07:17 |
| → Adaptee joined | 07:18 |
| → opalka joined | 07:19 |
| ← dgtlmoon left | 07:19 |
| → cbreak_work joined | 07:21 |
| ← saysjonathan left | 07:21 |
| ← theoros left | 07:21 |
| → saysjonathan joined | 07:21 |
| ← lightcap left | 07:22 |
| → QinGW joined | 07:23 |
| → p3rg2z joined | 07:23 |
| ← saysjonathan left | 07:26 |
| → lucasvo joined | 07:26 |
|
dquestions
| how do i set my current repo to be the head of the master branch | 07:26 |
|
| (there is something wrong with my current master head | 07:26 |
| → saysjonathan joined | 07:26 |
|
dquestions
| and if i try to merge it messes things up | 07:26 |
|
| because the problem is with non source code files | 07:27 |
| ← bradleyayers left | 07:27 |
| → guardian joined | 07:27 |
| ← amerine left | 07:28 |
| → nchaimov joined | 07:29 |
| ← hasrb left | 07:30 |
| → giallu joined | 07:31 |
| ← saysjonathan left | 07:31 |
| → saysjonathan joined | 07:32 |
| ← MikhX left | 07:32 |
| → mmoya joined | 07:33 |
| → saschpe joined | 07:34 |
| ← JasonWoof left | 07:34 |
| → JasonWoof joined | 07:34 |
| ← JasonWoof left | 07:34 |
| → JasonWoof joined | 07:34 |
| ← saysjonathan left | 07:36 |
| → saysjonathan joined | 07:37 |
| ← urkud left | 07:37 |
| ← mmoya left | 07:39 |
| → acs` joined | 07:39 |
| ← acs` left | 07:40 |
| ← acs left | 07:40 |
| → mishok13 joined | 07:40 |
| → ph^ joined | 07:40 |
| → acs joined | 07:41 |
| ← saysjonathan left | 07:41 |
| ← ponto_ left | 07:41 |
| → mmoya joined | 07:42 |
| → sivy joined | 07:42 |
| → saysjonathan joined | 07:42 |
| → rraasch joined | 07:43 |
| ← guardian left | 07:43 |
| ← Fullmoon left | 07:44 |
|
digitalfiz
| when i create a tag does that stay the current tag till i set another one? | 07:44 |
| → Fullmoon joined | 07:44 |
| ← Bombe left | 07:44 |
| → Bombe joined | 07:44 |
|
rohanpm
| digitalfiz: I don't think there is any concept of a "current tag" | 07:44 |
| ← Fullmoon left | 07:45 |
|
digitalfiz
| ok i can just tag the commits after? | 07:45 |
| ← phantomcircuit_ left | 07:45 |
| ← saysjonathan left | 07:46 |
|
rohanpm
| I don't get what you mean | 07:46 |
|
| you can make a tag pointing to a commit | 07:46 |
| ← ss23 left | 07:46 |
|
rohanpm
| once you've done that, the tag shouldn't change | 07:46 |
|
digitalfiz
| ok im sorry im just trying to grasp how this all works | 07:47 |
| → saysjonathan joined | 07:47 |
|
digitalfiz
| i think i understand | 07:47 |
| → hyperair joined | 07:47 |
| ← CrypTom left | 07:48 |
| → galderz joined | 07:48 |
| ← saysjonathan left | 07:52 |
| → saysjonathan joined | 07:52 |
| → dc5ala joined | 07:53 |
| ← jarrod_ left | 07:54 |
| → lightcap_ joined | 07:56 |
| ← saysjonathan left | 07:56 |
| ← lightcap_ left | 07:56 |
| → saysjonathan joined | 07:57 |
| ← Tianon left | 07:58 |
| ← joel_falcou_lab left | 07:59 |
| ← p3rg2z left | 07:59 |
| → xiangfu joined | 07:59 |
| ← mmc left | 08:00 |
| → joel_falcou joined | 08:01 |
| → MikhX joined | 08:01 |
| → napster_123 joined | 08:02 |
| → bentob0x joined | 08:02 |
| ← saysjonathan left | 08:02 |
| joel_falcou → joel_falcou_lab | 08:02 |
| → saysjonathan joined | 08:02 |
| → dgtlmoon joined | 08:03 |
| → ExtraSpice joined | 08:05 |
| → khmarbaise joined | 08:05 |
| → mrtazz joined | 08:06 |
| ← saysjonathan left | 08:07 |
| → nevyn^_ joined | 08:07 |
| → saysjonathan joined | 08:07 |
| ← shiba_yu36 left | 08:08 |
| ← dreiss left | 08:10 |
| ← saysjonathan left | 08:12 |
| → saysjonathan joined | 08:12 |
| ← fujin left | 08:14 |
| ← dquestions left | 08:16 |
| ← saysjonathan left | 08:17 |
| → dquestions joined | 08:17 |
| → saysjonathan joined | 08:17 |
| → numbah joined | 08:18 |
| ← Mage left | 08:19 |
| → skoop joined | 08:19 |
| → cilly joined | 08:21 |
| ← saysjonathan left | 08:22 |
| → saysjonathan joined | 08:22 |
| ← lucasvo left | 08:23 |
| → VadtecWork joined | 08:24 |
| ← bentob0x left | 08:24 |
| VadtecWork → Guest61475 | 08:24 |
| → pantsman joined | 08:26 |
| ← saysjonathan left | 08:27 |
| → jpnurmi joined | 08:27 |
| ← hyperair left | 08:27 |
| → saysjonathan joined | 08:27 |
| ChanServ set mode: +v | 08:28 |
| ← dgtlmoon left | 08:28 |
| → ochosi joined | 08:28 |
| → psoo joined | 08:30 |
| ← saysjonathan left | 08:32 |
| → saysjonathan joined | 08:32 |
|
divVerent
| I have a tricky problem... | 08:32 |
| ← gretch left | 08:33 |
|
divVerent
| my project is a fork from onerepo/branch_A | 08:33 |
|
| onerepo/trunk is unrelated development line... MOSTLY | 08:33 |
|
| but, I want to merge changes from onerepo/trunk that affect directory X | 08:33 |
| → gretch joined | 08:33 |
|
divVerent
| basically, I want to do merges that are restricted to a subdirectory... how to? | 08:33 |
|
| (or actually, to three subdirectories) | 08:34 |
| → dibber joined | 08:34 |
| → tewecske joined | 08:34 |
|
divVerent
| I suppose it can be somehow done with nasty filter-branch magic... but then git svn cannot fetch updates to it | 08:34 |
|
cbreak_work
| git can't merge half histories | 08:34 |
|
divVerent
| sure, but is there a simple way to get what I want? | 08:34 |
|
| filter-branching the repo down to the three subdirs, and merges should work fine | 08:35 |
|
cbreak_work
| create alternate history with filter branch and merge that | 08:35 |
| ← khmarbaise left | 08:35 |
|
divVerent
| but then how can I fetch updates from the upstream repo? | 08:35 |
|
| or do I have to run the ages long filter-branch every time? | 08:35 |
|
cbreak_work
| of course | 08:35 |
|
divVerent
| there is no way to do that incrementally? | 08:35 |
|
cbreak_work
| there's nothing to increment uppon | 08:36 |
| ← beasty left | 08:36 |
| → beasty joined | 08:36 |
|
cbreak_work
| you could do some cherry picking | 08:36 |
|
divVerent
| no, often commits affect lots of places | 08:36 |
|
| hm... one idea: | 08:36 |
|
| assume I have a branch "master" | 08:36 |
|
| can I make a branch "master-strippeddown" that is master stripped down to the three directories? | 08:36 |
|
| and incrementally update that? | 08:36 |
| ← saysjonathan left | 08:37 |
|
cbreak_work
| as I said | 08:37 |
| → davep joined | 08:37 |
|
cbreak_work
| there's nothing to increment uppon | 08:37 |
|
divVerent
| there is | 08:37 |
|
cbreak_work
| it's completely independent history | 08:37 |
|
| no common commit | 08:37 |
|
divVerent
| sure | 08:37 |
|
cbreak_work
| but as I also said | 08:37 |
|
davep
| im having https issues. can git function without it? it doesnt appear to be trying to use the proxy i set. | 08:37 |
|
divVerent
| assume I know the commit hash the tip of master-strippeddown is based on | 08:37 |
|
cbreak_work
| you could cherry pick | 08:37 |
|
divVerent
| I can track that in an extra file | 08:37 |
|
cbreak_work
| davep: git doesn't need network connections | 08:37 |
| → saysjonathan joined | 08:37 |
| → dytrivedi joined | 08:37 |
|
divVerent
| how would cherry pick help me? | 08:38 |
|
davep
| okay, assume i want to get a local copy of a remote repository over a network :P | 08:38 |
|
divVerent
| IIRC it cannot be restricted to paths | 08:38 |
|
cbreak_work
| sure | 08:38 |
| → guardian joined | 08:38 |
|
cbreak_work
| add -n, just commit the stuff you want | 08:38 |
|
| davep: use a different protocol | 08:38 |
|
divVerent
| problem is, cherry pick will usually fail | 08:38 |
|
| as commits will change files I do not want | 08:38 |
|
davep
| i changed the https in the url to http, but it fails | 08:38 |
|
| i try a git pull and it reports a TLS error | 08:39 |
|
cbreak_work
| just ignore the failures | 08:39 |
| ← Keruspe left | 08:39 |
|
davep
| it ended up with an empty folder | 08:39 |
|
cbreak_work
| only commit the stuff you want and reset the rest away | 08:39 |
|
divVerent
| then I commit merge conflict markers :P | 08:39 |
|
davep
| :( | 08:39 |
|
divVerent
| hm... possibly doable with a complex ls-files and grep magic | 08:39 |
|
cbreak_work
| why? | 08:39 |
|
divVerent
| to reset all other files | 08:39 |
|
cbreak_work
| just only git add that directory | 08:39 |
| → Keruspe joined | 08:40 |
|
divVerent
| OH... cherry-pick does not add | 08:40 |
|
| good | 08:40 |
| ← iravid left | 08:40 |
|
divVerent
| (when -n) | 08:40 |
|
cbreak_work
| davep: I meant "use a different protocol that git supports: | 08:40 |
|
| like git, ssh, file" | 08:40 |
| → iravid joined | 08:40 |
| ← dytrivedi left | 08:40 |
|
cbreak_work
| divVerent: it puts it to the index, but you can easily reset the index away | 08:41 |
|
| and then add the stuff you want again | 08:41 |
|
davep
| cbreak: git:// seems to have worked. thanks! | 08:41 |
|
divVerent
| right | 08:41 |
| ← acs left | 08:41 |
|
divVerent
| requires the work tree to be perfectly clean, so I'll have to use a separate local repo for thsi | 08:41 |
|
| but yes, that sounds better | 08:41 |
|
cbreak_work
| why? | 08:41 |
|
| are you someone who lives and works in dirt? :D | 08:42 |
|
divVerent
| sure :P | 08:42 |
|
cbreak_work
| a clean repo is to be expected... | 08:42 |
|
divVerent
| .o files for example | 08:42 |
| ← saysjonathan left | 08:42 |
|
divVerent
| most ops work fine in a nonclean repo :P | 08:42 |
|
| and if not, they tell me | 08:42 |
| → Kenjin joined | 08:42 |
|
divVerent
| but, making that separate repo for these merging tasks sounds useful anyway | 08:42 |
| → saysjonathan joined | 08:42 |
| ← dc5ala left | 08:42 |
|
divVerent
| so I can keep state information somewhere | 08:43 |
|
| so it knows what is the last "picked" commit | 08:43 |
| → gebi joined | 08:43 |
| ← gebi left | 08:43 |
| → gebi joined | 08:43 |
| → acs joined | 08:43 |
|
cbreak_work
| untracked files are not "dirty" | 08:43 |
|
| they are just ... there | 08:43 |
|
| and I seriously hope you don't track object files | 08:44 |
|
divVerent
| no, not tracking them | 08:44 |
|
| but I mean | 08:44 |
| → lhunath joined | 08:44 |
|
divVerent
| git add -A or such stuff may add these | 08:44 |
|
| or .swp files from vim :P | 08:44 |
|
lhunath
| how do I list all files in a directory from another branch? | 08:44 |
|
| (without checking that branch out) | 08:45 |
| → ignatp joined | 08:45 |
|
divVerent
| that's why I would prefer cherry-pick, then reset all in wrong directory" | 08:45 |
|
| instead of "cherry-pick, reset all, add these dirs" | 08:45 |
| → hyperair joined | 08:45 |
| → engla joined | 08:46 |
| ← engla left | 08:46 |
| → engla joined | 08:46 |
| → dc5ala joined | 08:46 |
| ← saysjonathan left | 08:47 |
|
cbreak_work
| lhunath: git show somebranch:somepath/ | 08:48 |
| → saysjonathan joined | 08:48 |
|
lhunath
| cheers. | 08:48 |
| ← Kenjin left | 08:51 |
| ← saysjonathan left | 08:52 |
| ← yhager left | 08:52 |
| ← psankar left | 08:53 |
| → saysjonathan joined | 08:53 |
| → jetienne joined | 08:56 |
| ← digitalfiz left | 08:56 |
|
jetienne
| q. i got a submodule in my repo, and i want to change the version in it. aka set the submobule to a given tag | 08:56 |
| ← saysjonathan left | 08:57 |
| → saysjonathan joined | 08:58 |
|
avar
| cd submodule && git checkout tag | 08:59 |
| → amh345_ joined | 08:59 |
| → digitalfiz joined | 09:00 |
| → spaceonline joined | 09:00 |
|
jetienne
| avar: thanks | 09:01 |
| ← iravid left | 09:02 |
| ← saysjonathan left | 09:02 |
| → iravid joined | 09:02 |
| ← amh345 left | 09:03 |
| amh345_ → amh345 | 09:03 |
| → saysjonathan joined | 09:03 |
| → dr_lepper joined | 09:04 |
| → elmob joined | 09:05 |
| ← dquestions left | 09:05 |
| → dquestions joined | 09:06 |
| ← tchan left | 09:06 |
| ← skoop left | 09:07 |
| → tchan joined | 09:07 |
| ← saysjonathan left | 09:08 |
| → cordoval_ joined | 09:08 |
| → saysjonathan joined | 09:09 |
| → Bruce_Wayne joined | 09:09 |
| ← cordoval_ left | 09:09 |
| ← shorg left | 09:10 |
| → bpo joined | 09:10 |
| → lucasvo joined | 09:11 |
|
bpo
| I'm sure this is a frequent question, but a couple of searches didn't turn up the answer for me. What is the best way to distribute git hook scripts with a repository? | 09:12 |
|
cbreak_work
| inside a repo with an install script maybe. or separately. | 09:12 |
| ← saysjonathan left | 09:13 |
|
jast
| git doesn't ever do it automatically for security reasons | 09:13 |
| → saysjonathan joined | 09:14 |
|
bpo
| makes sense. I'll just put a symlink in our makefile. thanks. | 09:14 |
| ← _Vi left | 09:15 |
| ← sh1mmer left | 09:16 |
| ← pantsman left | 09:16 |
| ← saysjonathan left | 09:18 |
| → saysjonathan joined | 09:19 |
| ← ivank left | 09:19 |
| → sh1mmer joined | 09:22 |
| → dpino joined | 09:23 |
| ← saysjonathan left | 09:23 |
| → saysjonathan joined | 09:24 |
| → Tianon joined | 09:24 |
| ← Tianon left | 09:24 |
| → Tianon joined | 09:24 |
| → shruggar joined | 09:26 |
| ← lhunath left | 09:26 |
| → Schmallon joined | 09:27 |
|
shruggar
| I accidentally typed "git bisect bad" when I meant "git bisect good". How do I reverse my decision? | 09:27 |
| ← mmoya left | 09:27 |
| ← hyperair left | 09:27 |
| ← saysjonathan left | 09:28 |
| → saysjonathan joined | 09:29 |
| ← Schmallon left | 09:31 |
| → thehcdreamer joined | 09:32 |
| ← thiago left | 09:32 |
|
engla
| shruggar: maybe you can just tap in a new desicion if you use the <rev> argument to bisect? I never tried. git bisect good <the revision> | 09:32 |
|
charon
| shruggar: iirc you have to use log&replay | 09:33 |
|
shruggar
| tried that, it complains "<yadayada> was both good and bad" | 09:33 |
|
charon
| (and edit out that bad command of course) | 09:33 |
|
thehcdreamer
| Hi, I made a couple of commits on a branch. Is it possible to transfer these commits to a new branch? one solution I thought is to checkout on a new branch so that I have the latest commits, then go back to the original branch and do a reset. I wonder if there is another solution? | 09:33 |
| ← tildeequals left | 09:34 |
| ← saysjonathan left | 09:34 |
| → saysjonathan joined | 09:34 |
| → dels joined | 09:34 |
| → tvw joined | 09:35 |
|
engla
| thehcdreamer: it's simple to "duplicate" branches. git checkout -b <newname> and you have a new branch. then you can use rebase -i or similar tools to on each/any of them | 09:35 |
|
jast
| thehcdreamer: can't think of a shorter one | 09:36 |
|
bob2
| 'git branch xxx HEAD~n ; git rebase master ; git co master ; git rset --hard HEAD~n' or so | 09:36 |
| → tildeequals joined | 09:36 |
|
thehcdreamer
| engla, jast, thanks | 09:36 |
| → tatsuya joined | 09:37 |
| → koltroll joined | 09:37 |
| → SvenDowideit joined | 09:38 |
| ← SvenDowideit_ left | 09:38 |
| → _Vi joined | 09:38 |
| ← saysjonathan left | 09:39 |
| → saysjonathan joined | 09:39 |
| → mklappstuhl joined | 09:41 |
| → parasti joined | 09:41 |
| ← dels left | 09:42 |
|
Rickardo1
| git commit -a --amend <<--- Does this undu the last commit? | 09:42 |
|
jast
| it changes the last commit | 09:42 |
|
Rickardo1
| jast: Define change | 09:42 |
|
jast
| it uses the current state of files and updates the last commit with it | 09:42 |
|
Rickardo1
| jast: ok, ty | 09:43 |
| ← BiggFREE left | 09:43 |
| ← saysjonathan left | 09:43 |
|
Juri_Agarin
| It's also a good way to fix a lacking commit message of the most recent commit.. :-) | 09:44 |
|
bob2
| or if you forgot to commit a file' | 09:44 |
| → saysjonathan joined | 09:44 |
| ← stliu left | 09:48 |
| ← OOPMan left | 09:49 |
| ← saysjonathan left | 09:49 |
| → saysjonathan joined | 09:50 |
| ← xiangfu left | 09:52 |
| ← mklappstuhl left | 09:53 |
|
dunpeal
| hi | 09:53 |
|
| What's the recommended way to define shell aliases from the command line? | 09:54 |
|
| I tried: git config --global alias.foo !"bar" | 09:54 |
|
| and got: bash: !"git: event not found | 09:54 |
| ← saysjonathan left | 09:55 |
|
jast
| dunpeal: escape the '!' | 09:55 |
| → saysjonathan joined | 09:55 |
|
dunpeal
| jast: that results in "foo = !git bar && git baz" | 09:56 |
|
jast
| that's what you want, isn't it? | 09:56 |
|
dunpeal
| jast: I'd kind of like it to be `foo = !"git bar && git baz"` | 09:57 |
| → ramlev joined | 09:57 |
|
dunpeal
| if at all possible :) | 09:57 |
|
jast
| why? | 09:57 |
|
| anyway, just put escaped quotes in there | 09:57 |
|
dunpeal
| jast: more redable | 09:57 |
|
| *readable | 09:57 |
|
jast
| git config [...] \!"\"bar \"" | 09:57 |
| → lanthan_afh joined | 09:57 |
|
jast
| or git config [...] '!"bar"' | 09:57 |
| ← shruggar left | 09:58 |
|
jast
| but personally I'd expect the quotes to mess things up | 09:58 |
|
| nah, works | 09:59 |
|
dunpeal
| How do I make jast hm? | 09:59 |
|
| err | 09:59 |
|
| the first syntax doesn't seem to work? | 09:59 |
|
jast
| that's not a very detailed error description, you know :) | 10:00 |
| ← saysjonathan left | 10:00 |
| → saysjonathan joined | 10:00 |
|
dunpeal
| jast: $ git config --global alias.foo \!"\"bar \"" #=> foo = !\"bar \" | 10:00 |
| ← alnewkirk left | 10:00 |
|
dunpeal
| I want !"bar" | 10:01 |
| ← _sh3 left | 10:01 |
|
jast
| huh. interesting. | 10:01 |
|
| well, try the other one | 10:01 |
|
dunpeal
| jast: same thing :/ | 10:01 |
|
jast
| exactly the same result? | 10:01 |
|
dunpeal
| yes | 10:02 |
|
jast
| hmm | 10:02 |
| ← Athox left | 10:03 |
|
jast
| probably git is doing the escaping | 10:03 |
| ← JKL__ left | 10:03 |
| → OOPMan joined | 10:04 |
| ← saysjonathan left | 10:05 |
|
dunpeal
| jast: yeah, don't worry about it | 10:06 |
|
| it works, which is what's important. | 10:06 |
| → saysjonathan joined | 10:06 |
| ← jspiros left | 10:07 |
| → Anti-X joined | 10:07 |
| → ayanes joined | 10:07 |
| ← ayanes left | 10:07 |
| → ayanes joined | 10:07 |
| → little_owl1 joined | 10:09 |
|
dunpeal
| jast: OK, another question: | 10:09 |
| ← saysjonathan left | 10:10 |
| ← bauruine left | 10:10 |
|
dunpeal
| I have a simple single-commit merge scenario with a graph that looks like this: http://dpaste.com/276768/ | 10:10 |
| → shruggar joined | 10:11 |
| → curtana joined | 10:11 |
|
dunpeal
| On 3, what's the name of 2? | 10:11 |
| → saysjonathan joined | 10:11 |
|
jast
| I have no idea which direction the history goes in that picture :) | 10:11 |
|
dunpeal
| right | 10:11 |
|
cbreak_work
| what do you mean? | 10:12 |
|
| call it child commit I guess | 10:12 |
|
dunpeal
| (parent) | 10:12 |
|
| (it's RTL | 10:12 |
| → bluenovember joined | 10:12 |
|
dunpeal
| Basically, I need some symbolic name for all the commits that were merged into master. | 10:12 |
| ← QinGW left | 10:12 |
|
jast
| HEAD^1, HEAD^2 and so on | 10:12 |
| → Murr_ joined | 10:12 |
|
dunpeal
| jast: HEAD^1 can sometimes be 1 | 10:12 |
|
| I need only the branch commits. | 10:13 |
|
jast
| I have no idea what you're talking about now :) | 10:13 |
| ← hohoho left | 10:13 |
|
dunpeal
| To generalize (and hopefully finally make myself clear :) | 10:13 |
| → yt_ror joined | 10:13 |
| → chris_n` joined | 10:13 |
| → hohoho joined | 10:13 |
|
dunpeal
| A branch foo was merged to master. How do I get a list of foo commits that were merged? | 10:13 |
| ← iravid left | 10:14 |
|
jast
| git rev-list $(git merge-base mergepoint^1 mergepoint^2)..mergepoint | 10:14 |
|
| if there is a simpler solution, I can't think of it right now | 10:14 |
|
cbreak_work
| dunpeal: HEAD^2 and it's parents | 10:15 |
|
divVerent
| jast: I think he wants git rev-list megrepoint^1..mergepoint | 10:15 |
| ← OOPMan left | 10:15 |
|
divVerent
| which would JUST be the commits merged from one of the two sides | 10:15 |
|
jast
| oh yeah, that's simpler :) | 10:15 |
| → iravid joined | 10:15 |
| ← chris_n left | 10:15 |
| → akamike joined | 10:16 |
| ← shruggar left | 10:17 |
| ← tg left | 10:17 |
| → dgtlmoon joined | 10:17 |
| ← saysjonathan left | 10:17 |
| → tg joined | 10:17 |
| → skoop joined | 10:18 |
| ← skoop left | 10:18 |
| → _sh3 joined | 10:18 |
| → saysjonathan joined | 10:18 |
| → ToreadorVampire joined | 10:19 |
| → dr_win joined | 10:19 |
| → skoop joined | 10:20 |
| ← nchaimov left | 10:21 |
| → airborn joined | 10:21 |
| ← saysjonathan left | 10:22 |
| → Kenjin joined | 10:23 |
| ← mishok13 left | 10:23 |
| → saysjonathan joined | 10:24 |
| → drizzd joined | 10:24 |
| ← Murr_ left | 10:25 |
| → mishok13 joined | 10:25 |
| → nadim joined | 10:26 |
| → Schmallon joined | 10:27 |
| ← drizzd_ left | 10:27 |
| ← saysjonathan left | 10:28 |
| → saysjonathan joined | 10:29 |
| → shruggar joined | 10:29 |
| ← sec^nd left | 10:30 |
| → JonasF joined | 10:31 |
| ← galderz left | 10:33 |
| → galderz joined | 10:33 |
| ← saysjonathan left | 10:34 |
| → sec^nd joined | 10:34 |
| → saysjonathan joined | 10:34 |
| ← elmob left | 10:36 |
| ← dunpeal left | 10:37 |
| ← tvw left | 10:37 |
| → aep joined | 10:38 |
|
aep
| hey, can git somehow convert all timestamps to _my_ timezone in git log? | 10:38 |
| ← saysjonathan left | 10:39 |
| → thierryp joined | 10:39 |
| → tampakrap joined | 10:39 |
| → mmc joined | 10:39 |
| ← Kenjin left | 10:39 |
|
cbreak_work
| aep: man git-log | 10:40 |
|
jast
| aep: the 'git-log' manpage can be found at http://git.or.cz/man/git-log [automatic message] | 10:40 |
|
cbreak_work
| check out --date=local | 10:40 |
| → saysjonathan joined | 10:40 |
| → tvw joined | 10:41 |
| ← steph021 left | 10:42 |
| ← thehcdreamer left | 10:42 |
| ← dquestions left | 10:43 |
| ← shruggar left | 10:45 |
| ← saysjonathan left | 10:45 |
| → dunpeal joined | 10:46 |
| → saysjonathan joined | 10:46 |
| ← sh1mmer left | 10:46 |
| ← cilly left | 10:48 |
| → cillybabe joined | 10:48 |
| ← skoop left | 10:48 |
| ← saysjonathan left | 10:50 |
| ← iravid left | 10:51 |
| → saysjonathan joined | 10:51 |
|
ochosi
| hi, i'm looking for an easy way to put git diffs in a webpage(preferably php), i don't need a real web-frontend or anything. any recommendations for that? | 10:51 |
| → iravid joined | 10:52 |
|
FauxFaux
| ochosi: gitweb or gerrit or just fork git? | 10:52 |
| ← dunpeal left | 10:53 |
| → dunpeal joined | 10:53 |
| → lorenzosu joined | 10:53 |
|
ochosi
| hm, gitweb seems to be pretty sophisticated, i'll give gerrit a try, thanks FauxFaux | 10:54 |
|
ToreadorVampire
| Ohai - I have some commits into my repos that were made by a developer who seems they don't know how to use git. Their commits are marked with author "unknown <somesillyusername@.(none)". These commits are published to the git repository and three developers have cloned these commits into their own repos'. Say I wanted to "fix" the author name of those commits - should I bother (this is rewriting history across multiple repositori | 10:54 |
|
| es isn't it, thus a headache?) or is there a way I can do it and then propagate those author-name changes in some sane fashion? | 10:54 |
|
lorenzosu
| Pretty newb question: When using autotools, is it best practice to include all the generated files in a push or not? | 10:54 |
|
jast
| ToreadorVampire: not without manual intervention by everyone who has the history | 10:54 |
|
ToreadorVampire
| jast: Yeah, that's what I thought ... I'll just chastise the guy who failed to configure their author details and make sure they do it in the future ... | 10:55 |
| ← speakman left | 10:55 |
|
jast
| lorenzosu: personally I keep automatically generated files out of my repositories, or I put them in a separate branch. I've seen people do it differently, though. | 10:55 |
| ← saysjonathan left | 10:55 |
| → khmarbaise joined | 10:55 |
| ChanServ set mode: +v | 10:55 |
| → nchaimov joined | 10:55 |
|
acs
| test | 10:56 |
|
| I downloaded the sources of emacs, I changed the code, and I want now to revert the sources exactly like in the moment they were when I downloaded. How can I do it ? | 10:56 |
|
ToreadorVampire
| A test? I never had time to study! | 10:56 |
|
acs
| i have voice now :) | 10:56 |
|
jast
| acs: did you commit anything? | 10:56 |
|
curtana
| acs, all the sources? or a particular file | 10:56 |
| → saysjonathan joined | 10:56 |
|
acs
| test of voice | 10:56 |
|
| a few files | 10:56 |
|
| i changed a few files, and did nothing else | 10:57 |
| ← ToreadorVampire left | 10:57 |
|
jast
| git reset --hard destroys all uncommitted changes | 10:57 |
|
lorenzosu
| jast, I see.. I guess having only the ones required by autoreconf would be enough | 10:57 |
|
acs
| jast: thanks | 10:57 |
| → steph021 joined | 10:57 |
|
curtana
| 'git checkout HEAD file1 file2' will just check out those files | 10:57 |
| → shruggar joined | 10:57 |
| → sh1mmer joined | 10:57 |
|
acs
| curtana: what does checkout do concretely ? | 10:57 |
|
jast
| lorenzosu: at any rate, including those files in source releases is very helpful for people, hence the idea of keeping the tree *including* auto-generated files in a separate branch | 10:58 |
|
ochosi
| FauxFaux: even gerrit is really complex and feature-rich, anything more crude? | 10:58 |
| ← EdwardIII left | 10:58 |
|
jast
| ochosi: just viewing diffs should take about a minute to implement in PHP :) | 10:58 |
| ← dunpeal left | 10:58 |
|
lorenzosu
| jast, interesting.. how would I go about setting that up? | 10:58 |
|
curtana
| acs, several things depending on the arguments. it switches branches, or replaces files in the working tree with their counterparts in the index (by default) or, if you name a commit-ish object, in that commit (e.g., HEAD here) | 10:58 |
|
ochosi
| jast: true, i just wanted to check whether i could save me those minutes ;) | 10:58 |
|
acs
| curtana: i see. | 10:59 |
|
jast
| ochosi: it probably takes less time to write it than to wait for answers ;) | 10:59 |
|
| lorenzosu: I don't have a canned solution | 10:59 |
|
lorenzosu
| jast, ok :) | 10:59 |
| ← jetienne left | 11:00 |
| → dunpeal joined | 11:00 |
|
ochosi
| jast: well, i'm not very good in php and very new to git, so maybe not | 11:00 |
| → jelrikvh joined | 11:00 |
| ← gretch left | 11:00 |
| ← saysjonathan left | 11:00 |
| → saysjonathan joined | 11:01 |
| → hyperair joined | 11:01 |
| → Tricia joined | 11:03 |
| → dquestions joined | 11:03 |
| Tricia → Guest91296 | 11:03 |
| → shiba_yu36 joined | 11:05 |
| → gusnan joined | 11:05 |
| ← saysjonathan left | 11:06 |
| → schambers joined | 11:06 |
| → saysjonathan joined | 11:07 |
| → chrischambers joined | 11:07 |
|
jast
| ochosi: <?php $repo = '/path/to/repo'; if (preg_match('/[0-9a-f]{4,40}/i', $_GET['id'])) { passthru("git --git-dir=$repo show $_GET[id]"); exit; } echo "<html><body><ul>" foreach (`git --git-dir=$repo --rev-list --pretty=oneline HEAD` as $r) { $r = trim($r); list($rev, $title) = explode(' ', $r, 2); echo "<li><a href=\"$_SERVER[PHP_SELF]?id=$rev\">$rev: $title"; } echo "</ul></body></html>"; | 11:07 |
|
| (untested) | 11:07 |
|
| okay, almost. the regexp needs to be anchored: /^[0-9a-f]{4,40}$/ | 11:08 |
| → Kenjin joined | 11:09 |
|
ochosi
| jast: wow, thanks a bunch! | 11:09 |
|
jim
| stuff like that is why a good templating system is needed | 11:10 |
| ← Schmallon left | 11:10 |
|
ochosi
| jast: ya know, i'm just a poor scientist in the humanities and i'm starting to track my latex-changes via git | 11:10 |
|
jast
| stuff like this doesn't use templating systems by definition | 11:10 |
|
| otherwise it wouldn't be a proper dirty hack | 11:10 |
| ← saysjonathan left | 11:11 |
| ← shruggar left | 11:12 |
| → saysjonathan joined | 11:12 |
| ← davep left | 11:13 |
| → urkud joined | 11:13 |
| ← Kenjin left | 11:13 |
| ← khmarbaise left | 11:14 |
| ← amason left | 11:16 |
| → itamarjp joined | 11:16 |
| → Kenjin joined | 11:16 |
| ← saysjonathan left | 11:17 |
| → amason joined | 11:17 |
| ← zorzar__away left | 11:17 |
| → saysjonathan joined | 11:17 |
| → d0k joined | 11:20 |
| ← jelrikvh left | 11:21 |
| → jspiros joined | 11:22 |
| → alberto56 joined | 11:22 |
| ← saysjonathan left | 11:22 |
| → saysjonathan joined | 11:23 |
|
JasonWoof
| I've got this in my post-update hook: if git diff --quiet origin/master..master | 11:23 |
|
| but it doesn't seem to have fired then I pushed _to_ this repo | 11:24 |
|
| is "master" updated after post-update? | 11:24 |
| → shruggar joined | 11:24 |
|
JasonWoof
| how do I detect if I've now got commits that I've not pushed upstream yet? | 11:24 |
| ← Kenjin left | 11:25 |
| → goshawk joined | 11:27 |
| → yunosh joined | 11:27 |
| ← saysjonathan left | 11:28 |
|
yunosh
| how do i correctly drop a submodule? removing the submodule's directory, or removing the entry in .gitmodules? or both? | 11:28 |
| → saysjonathan joined | 11:28 |
|
albel727
| yunosh: both. | 11:29 |
|
yunosh
| thx | 11:29 |
| → tizbac joined | 11:29 |
| → raptor360 joined | 11:29 |
| → Schmallon joined | 11:29 |
|
raptor360
| Hi all, I'm using git-svn and when doing a git svn rebase I get the following error: Could not unmemoize function `lookup_svn_merge', because it was not memoized to begin with at /usr/lib/git-core/git-svn line 3178 | 11:30 |
| → zorzar__away joined | 11:31 |
| ← saysjonathan left | 11:32 |
| ← coldboot left | 11:33 |
| → bauruine joined | 11:33 |
| ← shruggar left | 11:33 |
| → coldboot joined | 11:33 |
| → Yuuhi joined | 11:33 |
| → saysjonathan joined | 11:33 |
|
albel727
| yunosh: you will also need to remove submodule entries in .git/config, though | 11:33 |
|
yunosh
| k | 11:34 |
|
| yunosh wonders why there is no "git submodule remove" command | 11:34 |
|
| albel727 too | 11:34 |
| ← hohoho left | 11:35 |
|
albel727
| JasonWoof: first off, are you sure you have that "origin/master" in the repo you push to? if it is a bare repo, then I find it highly unlikely. secondly, do you really need git diff? as man githooks can tell you, all modified refs are passed as arguments to the hook. you can just see, if "refs/heads/master" is in there. | 11:36 |
|
jast
| albel727: the 'githooks' manpage can be found at http://git.or.cz/man/githooks [automatic message] | 11:36 |
|
albel727
| wow. jast have set up gitbot =) | 11:37 |
|
cbreak_work
| albel727: if he does a git push --mirror, origin/master can appear there | 11:37 |
| ← jspiros left | 11:37 |
| ← saysjonathan left | 11:37 |
|
albel727
| cbreak_work: yeah I do realize that. but it's highly unlikely, that he wants difference between master and origin/master in that case. | 11:38 |
|
cbreak_work
| yeah... | 11:38 |
|
jast
| the update hook sounds like a better fit | 11:38 |
| → saysjonathan joined | 11:39 |
|
albel727
| very probably. ref name + "is/will be" hashes really sound good. | 11:39 |
|
JasonWoof
| albel727: it is bare, and didn't have an origin/master at first, but I did: git config remote.origin.fetch '+refs/heads/*:refs/remotes/origin/*' | 11:40 |
|
| maybe that was not a good idea | 11:41 |
|
albel727
| depends on where you did executed that git config, and what did you want to achieve by it. | 11:42 |
| ← bauruine left | 11:42 |
| → bauruine joined | 11:42 |
|
albel727
| JasonWoof: ^ | 11:43 |
| ← saysjonathan left | 11:43 |
|
JasonWoof
| albel727: very cool that updated refs are passed to post-update | 11:43 |
| → saysjonathan joined | 11:44 |
|
raptor360
| hi all again, removing the .git/svn/.caches seemd to fix it. | 11:44 |
| → Kenjin joined | 11:45 |
|
albel727
| raptor360: Thank you. Now I'll be able to help the next person with the same problem. =) | 11:45 |
| → shruggar joined | 11:46 |
|
JasonWoof
| albel727: I'm trying to set up a sort of proxy repo. I have about 20 clones of a repo (and regularly make more) and it seems silly keep waiting for gitorious on every clone and pull. | 11:46 |
|
raptor360
| albel727: you're welcome. | 11:46 |
| → marcob joined | 11:46 |
| → thiago joined | 11:47 |
|
JasonWoof
| also, I almost never push to gitorious from any computer besides this one, so I though I'd have one master/proxy clone (bare) that I set everything to push to, and set a hook on it to automatically push from there to gitorious | 11:47 |
|
| I thought (guessed) that I should do some kind of check before pushing, so I was trying (as shown above) to check if I actually had anything new before pushing | 11:48 |
|
| it works fine without this check | 11:48 |
|
| sounds like I should instead check for "master" in the hook args | 11:48 |
| ← saysjonathan left | 11:49 |
| → saysjonathan joined | 11:49 |
| → bitkiller joined | 11:50 |
| ← masonkramer left | 11:51 |
| ← ramlev left | 11:52 |
| ← raptor360 left | 11:52 |
|
albel727
| JasonWoof: well, as long, as you understand, that everything breaks down the moment you push from any computer besides this one, I see no problem. | 11:53 |
| ← saysjonathan left | 11:54 |
|
Arafangion
| I'm effectively doing something similar - albiet with users who have no idea about git. This "breakdown" can be ignored and assumed never to occur if every person only ever pushes to their own branch. | 11:54 |
| ← thiago left | 11:54 |
| ← kpreid left | 11:54 |
|
albel727
| Arafangion: hmm, yeah, that kind of workflow solves it. | 11:55 |
| → saysjonathan joined | 11:55 |
| ← napster_123 left | 11:55 |
| ← shruggar left | 11:55 |
| → yotaff joined | 11:55 |
| ← schambers left | 11:56 |
|
albel727
| (how did you end up with "users who have no idea about git", anyway? =D) | 11:56 |
|
Arafangion
| albel727: Contractors of contractors. | 11:56 |
|
| albel727: Or more simply, contractors. | 11:56 |
| → khmarbaise joined | 11:57 |
|
albel727
| grand-contractors, contractors of second order, complex contractors... I can see math ideas realizing in life, now =) | 11:58 |
|
Arafangion
| albel727: It's the kind of fun that happens when two companies cooperate to write a program... But the actual hiring of the programmers are left to HR guys. | 11:59 |
|
| albel727: With no input whatsoever from the programmers. | 11:59 |
| → zombor joined | 11:59 |
| ← saysjonathan left | 11:59 |
|
albel727
| meh. they didn't even run qualification tests there? | 11:59 |
| → saysjonathan joined | 12:00 |
| → nevyn^__ joined | 12:00 |
| ← nevyn^__ left | 12:00 |
| ← Kenjin left | 12:01 |
|
Arafangion
| albel727: Some people satisfy all the tests, regardless. | 12:01 |
| ← zombor left | 12:02 |
|
albel727
| bad tests, then. =/ | 12:02 |
| ← boombatower left | 12:02 |
|
albel727
| (anyway, tests or not... "no input whatsoever from the programmers"? insane =/) | 12:03 |
|
jim
| it's interesting that contractors are named for what you do in your body when thinking about hiring them... | 12:03 |
|
Arafangion
| albel727: I'm annoyed... I am probably overreacting. | 12:03 |
|
| jim: What? | 12:03 |
| ← nevyn^_ left | 12:03 |
|
jim
| contract | 12:03 |
|
albel727
| Arafangion: I don't think that you are overreacting. | 12:05 |
|
Arafangion
| jim: Many things contract, mucles being one of them. | 12:06 |
| → saysjona1han joined | 12:06 |
|
Arafangion
| jim: It's named after the contract - the type that you sign. | 12:06 |
| ← saysjonathan left | 12:06 |
| → nevyn^_ joined | 12:06 |
| ← nevyn^_ left | 12:06 |
|
cbreak_work
| people who have no idea about git can get an idea about git | 12:06 |
|
| easily | 12:06 |
|
| by reading the man pages, and git-for-computer-scientists | 12:07 |
|
Arafangion
| cbreak_work: He was struggling with subversion. | 12:07 |
|
cbreak_work
| that's normal. | 12:07 |
|
| I do that too... | 12:07 |
|
Arafangion
| cbreak_work: Did you struggle because it wasn't a lock-edit-commit cycle? | 12:08 |
| → shruggar joined | 12:08 |
|
cbreak_work
| no, because it doesn't do what it says it would be supposed to do | 12:08 |
|
Arafangion
| cbreak_work: And the fact that other people might be working on the same code? | 12:08 |
| ← hyperair left | 12:08 |
|
Arafangion
| cbreak_work: He'd have been right at home with VSS. | 12:08 |
|
cbreak_work
| and because I can't even easily branch off some feature for local development | 12:08 |
| ← khmarbaise left | 12:09 |
| → hyperair joined | 12:09 |
| → xiangfu joined | 12:09 |
| ← saysjona1han left | 12:10 |
| → khmarbaise joined | 12:10 |
| → shamrock joined | 12:10 |
| → nevyn^_ joined | 12:11 |
| ← alberto56 left | 12:11 |
| → saysjonathan joined | 12:11 |
|
Arafangion
| cbreak_work: Why would you want to branch? </sarcasm> | 12:12 |
| → artefon joined | 12:12 |
|
cbreak_work
| people always forget the start tags. | 12:12 |
|
albel727
| Arafangion: well, yeah, working with underqualified people means that you need to do the parts of work they cannot themselves, but hey... http://ecomodder.com/forum/member-cfg83-albums-shtuff-04-picture2486-you-gotta-do-what-you-gotta-do.jpg | 12:14 |
| → sftp joined | 12:14 |
|
jim
| start tags? what are those? | 12:14 |
| ← saysjonathan left | 12:16 |
| ← khmarbaise left | 12:16 |
|
jast
| it's an SGML/XML thing. | 12:16 |
| → saysjonathan joined | 12:16 |
| → vitor-br joined | 12:17 |
|
albel727
| jast: <sarcasm> so you need people to use proper sgml syntax in their speech. ok. </sarcasm> =D | 12:18 |
|
Arafangion
| albel727: Next cbreak_work is going to complain that you left out the doctype declaration. | 12:19 |
|
albel727
| (proper english would be of use, too, but that's too much for me =D) | 12:19 |
|
| haha | 12:19 |
|
cbreak_work
| nah. this is transitional | 12:19 |
|
albel727
| lol | 12:19 |
| ← nevyn^_ left | 12:20 |
| → jspiros joined | 12:21 |
| ← saysjonathan left | 12:21 |
|
| Arafangion can't believe that he's winding through custom error handling because he doesn't want to have his stack unwound automatically. | 12:22 |
|
cbreak_work
| !?! | 12:22 |
| → saysjonathan joined | 12:22 |
|
cbreak_work
| you working with morrons? | 12:22 |
|
Arafangion
| Well, in this case, I want to be able to optionally either raise a real error (ie, in my unit tests) - or pop up a warning message and try again later. | 12:23 |
| ← shruggar left | 12:23 |
|
albel727
| which language? | 12:24 |
|
Arafangion
| C# | 12:24 |
|
| As much as I hate its main platform (Windows), and loathe the lack of proper RAII, it's a nice language. | 12:25 |
| → Ryback_ joined | 12:25 |
| ← Ryback_ left | 12:25 |
| → Ryback_ joined | 12:25 |
|
albel727
| So, you kinda want sometimes to throw an exception, and sometimes you want to just print a message, and go on? | 12:26 |
| ← saysjonathan left | 12:26 |
|
cbreak_work
| why not just do it? :) | 12:26 |
|
Arafangion
| Yes. Basically, sometimes I want to acknowledge that there's an error, and see if it fixes up later on. (ie, it's not really an /exceptional/ exception), although sometimes it could well be and I need to alert the user to it. | 12:27 |
| → HG` joined | 12:27 |
|
Arafangion
| But if I'm unit testing... I'd rather it simply abort, and print a stack trace as early and as noisily as possible. | 12:27 |
|
cbreak_work
| just catch it? :) | 12:27 |
| → saysjonathan joined | 12:27 |
|
Arafangion
| _where_? | 12:27 |
|
cbreak_work
| where ever you want | 12:27 |
|
Arafangion
| I'm using a ton of databinding and deferred execution (thanks to Linq) | 12:28 |
| → akamike_ joined | 12:28 |
|
Arafangion
| And I don't want to have the "display the exception to the user" logic scattered throughout the application either. | 12:28 |
| → schambers joined | 12:28 |
|
cbreak_work
| you could put it into the exception class :D | 12:28 |
|
| when it's instanciated, it ... man, that's evil | 12:29 |
|
Arafangion
| Glad you realise. :) Mind you, I do excactly that when I'm doing logging... But that's completely different. | 12:29 |
| ← orafu left | 12:29 |
| → orafu joined | 12:29 |
|
Arafangion
| This is more for things such as "The http host is down". | 12:29 |
| → khmarbaise joined | 12:30 |
|
albel727
| Arafangion: I'd say, that needs just a single helper method/class, which will take a exception object, and either throw it, or output a message, depending on a value of a single static variable... | 12:30 |
|
Arafangion
| albel727: Exactly what I'm doing. :) | 12:30 |
| ← akamike left | 12:30 |
|
cbreak_work
| you could probably do something with template magic | 12:30 |
|
| or macro magic | 12:30 |
|
Arafangion
| albel727: I have two such classes, actually, sharing a common interface. Unit tests use one, and the main program uses another. :) | 12:30 |
|
| cbreak_work: Macro magic is evil, though - templates are much nicer. Alas, this is C#, not C++. | 12:31 |
| cillybabe → cilly | 12:31 |
|
| albel727 was preparing to be killed for horrible good-coding-style violation, but now, seeing that someone actually uses the same approach... =D | 12:31 |
| → skoop_ joined | 12:31 |
|
Arafangion
| albel727: Reduce the stench by using pure-DI. :) | 12:31 |
| ← saysjonathan left | 12:32 |
| → metasyntactic joined | 12:32 |
| ← akamike_ left | 12:32 |
| → saysjonathan joined | 12:33 |
|
Arafangion
| It's interesting that this ability to either throw an exception, or continue from that point on, is almost what SEH exceptions allow. | 12:34 |
|
| /almost/. | 12:34 |
| → Unknown[NF] joined | 12:34 |
|
Arafangion
| (The way SEH exceptions allowed it was too evil, though) | 12:34 |
| → shruggar joined | 12:35 |
| ← kunwon1 left | 12:35 |
|
albel727
| never worked with SEH directly =/ how do they allow it? | 12:36 |
| ← saysjonathan left | 12:37 |
| → saysjonathan joined | 12:38 |
| → ehabkost joined | 12:38 |
| → akamike joined | 12:38 |
| → chrisred joined | 12:39 |
|
Arafangion
| albel727: Easily - handle the exception as a first-class exception, with the stack preserved, and then jump back. | 12:39 |
|
| albel727: Usually with disasterious results b ecause teh code assumes that never happens. :) | 12:39 |
|
albel727
| Arafangion: I see. Well, Lisp "exception" handling allows doing that (stably) and more... why won't you convert to it? =D | 12:40 |
| → kpreid joined | 12:40 |
|
Arafangion
| albel727: So I've implemented yet another part of lisp, then. | 12:41 |
| ← ExtraSpice left | 12:41 |
|
albel727
| Arafangion: Yet another? What were the other parts of Lisp, you had to implement, just because of your poor development language choice? =D | 12:43 |
| ← saysjonathan left | 12:43 |
| ← kanru left | 12:43 |
| → saysjonathan joined | 12:43 |
|
Arafangion
| albel727: Type conversions. :( | 12:46 |
| ← urkud left | 12:47 |
| → ExtraSpice joined | 12:47 |
| → urkud joined | 12:47 |
| ← saysjonathan left | 12:48 |
| ← shruggar left | 12:48 |
| → saysjonathan joined | 12:48 |
| → tydeas joined | 12:49 |
|
Arafangion
| albel727: Recently the framework has linq... Which is almost one of the great parts of Haskell. | 12:49 |
|
albel727
| Arafangion: yeah, and even more recently it get PLINQ, which is no less useful to me. | 12:50 |
|
tydeas
| Hello i have made some modifications in some files. Now i want to move this modifications to a branch. | 12:51 |
|
albel727
| (not part of Haskell, but still... =D) | 12:51 |
|
| (and yes, I like Haskell, too =D) | 12:51 |
|
FauxFaux
| tydeas: stash, checkout otherbranch, stash pop. | 12:51 |
|
tydeas
| FauxFaux: thanks | 12:51 |
|
| albel727 is ashamed, since someone else actually helps here, while he is blabbing about C# =/ | 12:52 |
| ← normanrichards left | 12:52 |
| → OOPMan joined | 12:52 |
| ← khmarbaise left | 12:53 |
|
cbreak_work
| modifications are moved to a branch by committing them | 12:53 |
| → tlonim joined | 12:53 |
| ← saysjonathan left | 12:54 |
|
Arafangion
| If you want to write them to a *new* branch, merely 'checkout -b newbranch HEAD' followed by a commit would be sufficient. | 12:54 |
| → saysjonathan joined | 12:54 |
| ← chrischambers left | 12:55 |
| ← leroux left | 12:55 |
| ← iravid left | 12:55 |
| ← shiba_yu36 left | 12:55 |
| ← bauruine left | 12:55 |
| ← _Vi left | 12:55 |
| → iravid joined | 12:55 |
| ← gusnan left | 12:56 |
| ← devanjan left | 12:56 |
| → chrischambers joined | 12:56 |
| ← kpreid left | 12:56 |
| → kpreid joined | 12:58 |
| ← galderz left | 12:58 |
| ← saysjonathan left | 12:58 |
| → shiba_yu36 joined | 12:59 |
| → saysjonathan joined | 12:59 |
| ← kenneth_reitz left | 13:00 |
| → squentin joined | 13:01 |
| → shruggar joined | 13:01 |
| → snearch joined | 13:01 |
| skoop_ → skoop | 13:02 |
| ← Amorphous left | 13:03 |
| → bauruine joined | 13:03 |
| ← saysjonathan left | 13:04 |
| → saysjonathan joined | 13:05 |
| → Chaser joined | 13:06 |
| → rolfb joined | 13:06 |
| → alberto56 joined | 13:08 |
| ← saysjonathan left | 13:09 |
| → saysjonathan joined | 13:10 |
| ← bauruine left | 13:10 |
| → cirwin joined | 13:10 |
| → bauruine joined | 13:10 |
| → hohoho joined | 13:12 |
| ← skoop left | 13:12 |
| → bentob0x joined | 13:12 |
| → zomgbie joined | 13:13 |
| → mabrand joined | 13:13 |
| ← lamont left | 13:13 |
| ← saysjonathan left | 13:14 |
| → lamont joined | 13:15 |
| → saysjonathan joined | 13:15 |
| → pfrog joined | 13:16 |
| ← chris_n` left | 13:17 |
|
pfrog
| how would I sync up a local and remote branch? git reset ? | 13:17 |
|
zomg
| pull from the remote to get changes, push to the remote to send changes | 13:17 |
| ← q0rban|afk left | 13:17 |
|
zomg
| reset can be used if you want to discard all changes and just go directly to the state the remote is in | 13:17 |
|
tango_
| unless you mean that you pushed to a non-bare remote repo and the workdir on the remote repo was not updated, in which case it IS git reset | 13:17 |
|
| (on the remote repo) | 13:18 |
|
pfrog
| ok maybe what I'm asking instead is how do I get my local branch to track a remote one | 13:18 |
| → benishor joined | 13:18 |
| → Amorphous joined | 13:18 |
|
pfrog
| but the local one exists already | 13:18 |
| ChanServ set mode: +v | 13:19 |
| → madsy joined | 13:19 |
| ← madsy left | 13:19 |
| → madsy joined | 13:19 |
|
benishor
| Hello all. Is there a way to make git remember webdav password? | 13:19 |
|
cbreak_work
| git doesn't care about things like passwords | 13:19 |
|
| don't think it can do that | 13:19 |
| ← saysjonathan left | 13:19 |
|
benishor
| I'm using tortoisegit in order to push to a webdav remote repository | 13:20 |
|
| it is constantly prompting for password | 13:20 |
|
| and it's pretty tiresome | 13:20 |
| → q0rban joined | 13:20 |
|
benishor
| Is there any way to fix that? | 13:20 |
| → saysjonathan joined | 13:20 |
|
cbreak_work
| at least with ssh, git delegates things like authentication to the client | 13:21 |
|
benishor
| I just fixed it. I'm using http://user:pass@server/repo | 13:22 |
|
| embeded url authentication | 13:23 |
|
| works wonders \o/ | 13:23 |
| → ntoll joined | 13:23 |
| → Fullma joined | 13:24 |
| ← saysjonathan left | 13:25 |
| → PerlPilot joined | 13:26 |
|
pfrog
| nm I figured it out | 13:26 |
| → saysjonathan joined | 13:26 |
| → itamarjp1 joined | 13:26 |
| ← itamarjp left | 13:26 |
| → jaql joined | 13:27 |
| ← foocraft left | 13:28 |
| ← PerlJam left | 13:29 |
| → foocraft joined | 13:29 |
| ← amh345 left | 13:29 |
| ← saysjonathan left | 13:31 |
| → cannonball joined | 13:31 |
| ← cannonball left | 13:31 |
| → cannonball joined | 13:31 |
| → saysjonathan joined | 13:31 |
| ← bauruine left | 13:32 |
| → IslandUsurper joined | 13:32 |
| ← HG` left | 13:33 |
| → napster_123 joined | 13:34 |
| ← urkud left | 13:35 |
| ← saysjonathan left | 13:35 |
| → saysjonathan joined | 13:36 |
| ← ntoll left | 13:37 |
| → warlock_mza joined | 13:39 |
| → masonkramer joined | 13:40 |
| ← saysjonathan left | 13:41 |
| → saysjonathan joined | 13:41 |
| ← zomgbie left | 13:44 |
| ← saysjonathan left | 13:46 |
| → MattDiPasquale joined | 13:46 |
| → saysjonathan joined | 13:46 |
| ← richard28530 left | 13:47 |
| ← Guest61475 left | 13:48 |
| → Guest61475 joined | 13:48 |
| Guest61475 → VadtecWork | 13:48 |
| → elmob joined | 13:51 |
| ← saysjonathan left | 13:51 |
| → saysjonathan joined | 13:52 |
| ← Bruce_Wayne left | 13:52 |
| → mbroeker joined | 13:55 |
| ← saysjonathan left | 13:56 |
| → saysjonathan joined | 13:57 |
| ← sonnym left | 13:59 |
| ← artefon left | 14:00 |
| → rindolf joined | 14:01 |
| ← justin-george left | 14:01 |
|
rindolf
| Hi all, how do I get a git log -p on the entire repository? All branches. | 14:01 |
| ← saysjonathan left | 14:02 |
| engla → engla-on-the-wal | 14:03 |
| → saysjonathan joined | 14:03 |
|
cbreak_work
| rindolf: by passing --all... | 14:03 |
|
| it's in the man page | 14:03 |
|
rindolf
| cbreak_work: OK, thanks. | 14:03 |
| → nevyn^_ joined | 14:04 |
| → khmarbaise joined | 14:05 |
| ← khmarbaise left | 14:07 |
| ← saysjonathan left | 14:07 |
| → saysjonathan joined | 14:08 |
| → intripoon joined | 14:08 |
| engla-on-the-wal → engla | 14:09 |
| → malfy_ joined | 14:10 |
| ← malfy_ left | 14:10 |
| → malfy_ joined | 14:10 |
| ← malfy_ left | 14:10 |
| ← benishor left | 14:10 |
| ← shiba_yu36 left | 14:10 |
| → wuj joined | 14:11 |
| → SjB joined | 14:11 |
| ← cilly left | 14:11 |
| → cilly joined | 14:11 |
| ← saysjonathan left | 14:12 |
| ← epid left | 14:13 |
| → saysjonathan joined | 14:13 |
| ← alberto56 left | 14:14 |
|
molokoi
| hello. | 14:15 |
| ← acs left | 14:17 |
| ← rchavik left | 14:17 |
| → malfy_ joined | 14:17 |
| ← malfy_ left | 14:17 |
|
molokoi
| I keep track of central repository in origin/master thank to fetch. then, git checkout origin/master | 14:17 |
| ← saysjonathan left | 14:18 |
|
molokoi
| first of all, at git branch i get a *(no branch). Could I have a real branch instead ? | 14:18 |
|
cbreak_work
| sure | 14:18 |
|
| make one | 14:18 |
|
| or do a git checkout of one that exists | 14:18 |
| → felipe joined | 14:19 |
|
cbreak_work
| remote tracking branches do NOT exist locally | 14:19 |
|
| you can create one with git checkout -t origin/master | 14:19 |
| → saysjonathan joined | 14:19 |
|
molokoi
| nice. | 14:19 |
|
| then, can I merge only one file from master into origin/master ? | 14:19 |
|
cbreak_work
| that makes no sense, no | 14:19 |
|
molokoi
| ok. | 14:19 |
|
cbreak_work
| git's history is atomic, commit based | 14:20 |
|
| a commit can not be split | 14:20 |
| ← kpreid left | 14:20 |
|
molokoi
| I guess I should commit my local configuration into a local branch, then merge with that one ? | 14:20 |
| → Bisaram`office joined | 14:20 |
|
cbreak_work
| no | 14:21 |
|
| configurations should not be part of a repo | 14:21 |
|
molokoi
| oh ;-) | 14:21 |
| ← foocraft left | 14:21 |
| ← Bisaram left | 14:21 |
|
molokoi
| thanks for you answers. | 14:21 |
| ← Adaptee left | 14:22 |
| → fr0sty joined | 14:23 |
| ← saysjonathan left | 14:23 |
| → TeckniX joined | 14:24 |
| → saysjonathan joined | 14:24 |
|
cbreak_work
| no problem | 14:24 |
| ← lorenzosu left | 14:25 |
| → JKL__ joined | 14:26 |
| → edude03 joined | 14:26 |
| → coderdad joined | 14:26 |
| ← roop_ left | 14:27 |
| ← iravid left | 14:29 |
| → iravid joined | 14:29 |
|
bnovc
| msysgit is so buggy :( | 14:29 |
| ← rindolf left | 14:29 |
| ← Rickardo1 left | 14:30 |
| → kylehayes joined | 14:30 |
| → gemmes joined | 14:30 |
|
bnovc
| so normally at work we only do one level of branching off of master for features but someone has a rare case and wants a branch off his branch. While that's the right git way to do it, it doesn't really work with our versioning scheme and some tools, so it seems like it would be equally acceptable for him to mimic his branch (create another from the same point and cherry-pick all his changes).... can anyone see a problem w/doing that? | 14:31 |
| → kpreid joined | 14:32 |
| → mxmdrone joined | 14:32 |
| ← rolfb left | 14:33 |
| → rolando joined | 14:33 |
| ← saysjonathan left | 14:33 |
| → nonno joined | 14:34 |
| → saysjonathan joined | 14:34 |
|
cbreak_work
| bnovc: if c branches of b | 14:36 |
|
| and b branches of a | 14:36 |
| → EricInBNE joined | 14:36 |
|
cbreak_work
| then b and c share history, before they branched off | 14:37 |
|
| it belongs to both | 14:37 |
|
| both have branched of a at the same time :) | 14:37 |
|
| nothing wrong with just doing the normal thing | 14:37 |
|
bnovc
| are you saying that c and b both branch from the same commit? c isn't really even a branch of b at that point though | 14:38 |
| ← saysjonathan left | 14:38 |
|
bnovc
| the problem is that we have versioning and tools setup that assume one level off of master | 14:38 |
|
patrikf
| bnovc: well you said you wanted C to branch off B. | 14:38 |
| → saysjonathan joined | 14:39 |
| → osanaisho joined | 14:39 |
| → sonnym joined | 14:40 |
| ← frogonwheels left | 14:42 |
|
cbreak_work
| bnovc: branching is transitive | 14:43 |
|
| if c branches of b, and b branches of a, then c also branches of a. at the same commit b does. and it then has the same commits as b does, for some time. | 14:43 |
|
| it's like a tree | 14:43 |
|
| you can't say "ZOMG, This leaf is not connected to the stem!" | 14:43 |
| ← saysjonathan left | 14:43 |
| → mxmdrone_ joined | 14:44 |
|
bnovc
| ya, I understand that | 14:44 |
| metasyntactic → kunwon1 | 14:44 |
|
bnovc
| I was trying to find a free drawing program to show what I meant but oh well | 14:44 |
| → saysjonathan joined | 14:44 |
|
patrikf
| there's some fancy AJAX stuff out there, but I can't remember it's url | 14:44 |
| ← EricInBNE left | 14:45 |
| ← SvenDowideit left | 14:45 |
| → ooooPsss joined | 14:45 |
|
bnovc
| http://dev.bnovc.com/tmp/branches.txt | 14:45 |
|
| like that | 14:45 |
|
cbreak_work
| bnovc: http://www.dabbleboard.com/ | 14:46 |
| → ereslibre joined | 14:46 |
| ← ereslibre left | 14:46 |
| → ereslibre joined | 14:46 |
|
cbreak_work
| bnovc: it'd be stupid | 14:46 |
|
patrikf
| bnovc: cherry-picking X on its parent commit results in X. | 14:46 |
|
cbreak_work
| why do you not want e and e' to be the same? | 14:46 |
|
patrikf
| i.e. it's the same commit | 14:46 |
| ← mxmdrone left | 14:47 |
| → zombor joined | 14:47 |
|
bnovc
| patrikf: well I was designating that it is in two places | 14:47 |
|
| which I'm pretty sure it would be | 14:47 |
| → mfacenet joined | 14:47 |
| ← mfacenet left | 14:47 |
| → mfacenet joined | 14:47 |
|
bnovc
| I mean this seems hacky but I didn't see what problems it would cause | 14:48 |
|
cbreak_work
| bnovc: it's pointless | 14:48 |
|
| why do you care that e and e' is the same? | 14:48 |
|
bnovc
| because we version based on your branch position | 14:48 |
|
| sec | 14:48 |
| ← saysjonathan left | 14:49 |
|
cbreak_work
| but do you check if that commit is in an other branch? | 14:49 |
|
fr0sty
| bnovc: what does that even mean? | 14:49 |
|
bnovc
| http://dev.bnovc.com/tmp/feature_branches.png | 14:49 |
|
fr0sty
| the name of your branch? e.g. branch = 1.5.4 ? | 14:49 |
|
bnovc
| like that | 14:49 |
|
| (those are tags) | 14:49 |
|
| where red is master | 14:50 |
| → saysjonathan joined | 14:50 |
|
fr0sty
| what is the point of all the tagging? | 14:50 |
| ← airborn left | 14:50 |
|
cbreak_work
| man, that sounds bad... | 14:50 |
|
fr0sty
| are you tagging each commit? | 14:50 |
|
patrikf
| bnovc: so what's wrong if right now, the new branch still has "oldbranch" as it's most recent tag, and the next tag is "newbranch"? | 14:50 |
|
bnovc
| if someone has a release off of a feature branch, we want to know what fixes it included from master easily | 14:50 |
|
| fr0sty: no | 14:50 |
|
| fr0sty: I just was drawing boxes there are releases | 14:51 |
|
patrikf
| why would you release off a feature branch?! | 14:51 |
| → madewokherd joined | 14:51 |
|
bnovc
| they're not releases to customers...they're releases to SQ | 14:51 |
|
| to ensure stability before going back into master | 14:51 |
|
cbreak_work
| ever heard of git merge-base? | 14:52 |
|
bnovc
| patrikf: I'm not sure what you meant by your previous question | 14:52 |
| ← PerlPilot left | 14:52 |
|
patrikf
| bnovc: and "git describe" is not enough as a version number for qa? | 14:52 |
| → PerlJam joined | 14:52 |
|
bnovc
| cbreak_work: how does it that affect this? | 14:53 |
|
cbreak_work
| you don't need to make sure that e and e' are not the same | 14:54 |
|
bnovc
| I don't mean that they're actually different. I mean that e' is a cherry-pick of e onto the bottom branch | 14:54 |
|
cbreak_work
| because merge-base will always find the branch point | 14:54 |
|
| why? | 14:54 |
|
| well, as soon as you rebase one of the two branches, they will get rewritten anyway | 14:54 |
|
| but... what's the point wasting time with cherry picking? | 14:55 |
|
| just branch off what ever branch you want! | 14:55 |
|
bnovc
| because in the top situation, the branch that 'h' is on is two levels out, so it doesn't have a good signifier for its version number | 14:55 |
| ← saysjonathan left | 14:55 |
| → saysjonathan joined | 14:55 |
|
bnovc
| patrikf: I didn't know that existed, but that's interesting..... but if I had two levels of branches, it still wouldn't show what features were incorporated in the change that way | 14:56 |
|
cbreak_work
| bnovc: no | 14:56 |
|
| bnovc: branches do not have levels | 14:56 |
|
bnovc
| patrikf: it would show the last tag on master | 14:56 |
| → alberto56 joined | 14:56 |
|
cbreak_work
| they are all the same level | 14:56 |
|
| there's no difference between master and h | 14:57 |
|
| as far as git is concerned, you could just rename them | 14:57 |
|
bnovc
| there is in process though | 14:57 |
|
| master is significant, so its a count off of master | 14:57 |
| → rayners joined | 14:57 |
|
cbreak_work
| h is branched of master. | 14:57 |
|
| and g too | 14:58 |
|
bnovc
| h is branched off of f | 14:58 |
|
| sec let me refresh my diagram | 14:58 |
|
cbreak_work
| no, g is | 14:58 |
|
fr0sty
| bnovc: f is the point where h and g diverge | 14:58 |
|
| one is not 'branched' off the other. | 14:58 |
|
| bnovc: branches don't have 'starting points' | 14:59 |
|
bnovc
| ok refresh the .txt | 14:59 |
|
fr0sty
| talking about where a branch was 'created' is non-sensical in git's world. | 14:59 |
|
bnovc
| my point is that when I tag a release on "branch C", our scheme can't indicate that it has changes from "branch B" also | 14:59 |
|
| unless you guys have a better suggestion for versioning which I'm totally open to | 15:00 |
|
fr0sty
| bnovc: why is that important? | 15:00 |
| ← sambarino left | 15:00 |
|
bnovc
| because SQ wouldn't know that they're testing additional features that were added in B | 15:00 |
| ← saysjonathan left | 15:00 |
|
bnovc
| or supposed to be | 15:00 |
| → saysjonathan joined | 15:01 |
|
fr0sty
| but why is that important? the features 'from b' (not really from there, but I'll grant it for now) are required for C anyway. | 15:01 |
|
| and they will be tested when they test B as well. | 15:01 |
|
| I'm still failing to understand what the problem is beyond 'we have an inflexible tagging scheme' | 15:02 |
|
bnovc
| ya, that is the problem, basically | 15:02 |
| → Vampire0 joined | 15:02 |
| ← Vampire0 left | 15:02 |
| → Vampire0 joined | 15:02 |
|
fr0sty
| btw, still tagging the way you do should work fine. | 15:02 |
|
| the fact that branches have common commits should not cause anyone greif. | 15:02 |
| → Ruudjah joined | 15:03 |
| ← rolando left | 15:03 |
| → HG` joined | 15:03 |
|
bnovc
| I think it matters that the tag includes it though. In http://dev.bnovc.com/tmp/feature_branches.png, if I create featurename-1.0.1-1, then SQ knows that it should include all fixes from 1.0.1 | 15:03 |
|
| but in featurename-1.0.0-1, they realize it doesnt | 15:03 |
|
fr0sty
| bnovc: is SQ incapable of using git log --graph? | 15:04 |
| ← freimatz left | 15:04 |
|
fr0sty
| or gitk | 15:04 |
|
bnovc
| our SQ has no knowledge of git | 15:04 |
|
| they don't have checkouts/etc. | 15:04 |
|
| we have a lot of non-technical SQ | 15:04 |
|
| (not my decision and not defending that, but its how it is) | 15:04 |
|
fr0sty
| your branching strategy is the least of your worries it seems... | 15:05 |
|
bnovc
| well a lot of the tests they perform really don't require technical knowledge | 15:05 |
|
| we have some technical SQ too but it needs to be flexible for both | 15:05 |
|
fr0sty
| still, it would be trivial to write a little wrapper on 'git log --graph --decorate master..tag-to-test' to show them what is in play | 15:05 |
| ← tydeas left | 15:05 |
| ← saysjonathan left | 15:05 |
| → gusnan joined | 15:05 |
| ← Guest60181 left | 15:06 |
|
bnovc
| I think that would be overwhelming to them to see a lot of things they don't understand | 15:06 |
|
| that doesn't correlate to the testing plan | 15:06 |
|
| I was considering that before though | 15:06 |
|
fr0sty
| then just let them test things twice | 15:06 |
|
| never hint that branches share history | 15:06 |
|
| and get on with your work. | 15:06 |
| → saysjonathan joined | 15:06 |
|
bnovc
| well, we don't want them reporting issues for every branch they test | 15:06 |
|
| thats a lot of duplication | 15:06 |
|
fr0sty
| if they are neve looking at the history it doesn't matter how it is organized | 15:06 |
|
bnovc
| and we don't want them not reporting regressions that they think are duplicates | 15:06 |
|
| (and I'm really not trying to defend this versioning system but trying to see your thoughts on how to improve it) | 15:07 |
|
| it seemed like the issue of redoing the versioning system could be circumvented by just having a 2nd branch with cherry-picks from the other one, leaving it one level away | 15:07 |
|
| but I couldn't think of what issues that may cause | 15:07 |
|
cbreak_work
| just tell them that abc-1 and def-1 are the same. | 15:07 |
|
fr0sty
| bnovc: if you have a dependent branch don't send it to SQ until the original branch has been tested. | 15:08 |
| → mtkd_ joined | 15:08 |
|
fr0sty
| or set the branching point of B and C (from your txt) as a testing point and then test B and C after that. | 15:08 |
|
| this is where merge-base comes in later. | 15:08 |
| → SvenDowideit joined | 15:09 |
| ← Aaaarg left | 15:09 |
|
fr0sty
| if SQ can test the code up to each fork in the road then testing the branch-heads will not result in duplicate bugs. | 15:09 |
|
bnovc
| hm...that seems true | 15:09 |
|
fr0sty
| another alternative would be to merge your feature branches into an SQ branch and tag that for periodic testing. | 15:09 |
|
| that way they will test batches of changes and you can figure out the regressions yourself. | 15:10 |
| → boombatower joined | 15:10 |
| ← boombatower left | 15:10 |
| → boombatower joined | 15:10 |
| → Razz joined | 15:11 |
|
bnovc
| ok but just in the case of one branch... if it was from 1.0.0 and they test it, then anther release on that branch without merging up to master, how do they know whether to re-report the bugs thye find | 15:11 |
| ← saysjonathan left | 15:11 |
| → saysjonathan joined | 15:11 |
| → zomgbie joined | 15:12 |
|
Razz
| Does anyone know the current status of a Git library (pref. written in C). | 15:12 |
| ← mtkd left | 15:12 |
|
fr0sty
| bnovc: do you have an issue tracker? | 15:12 |
|
bnovc
| yes | 15:12 |
|
fr0sty
| just leave unresolved bugs/tickets 'open' | 15:12 |
| ← bluenovember left | 15:13 |
| ← mmc left | 15:13 |
|
fr0sty
| they can skip anything that wasn't marked as 'resolved' | 15:13 |
| ← Tianon left | 15:13 |
| → babusri joined | 15:13 |
| → nullvariable joined | 15:13 |
|
[exa]
| Razz: I'm kindof afraid that there's no such thing coming. Git is too simple to actually have a library, and commandline frontends/porcelains are a little bit hard to simulate in simple C | 15:13 |
|
bnovc
| fr0sty: but that only works if they're only ever testing feature branch releases that are after the last master they test | 15:14 |
| ← mlq left | 15:14 |
| → theflow joined | 15:14 |
| → mlq joined | 15:14 |
| ← mlq left | 15:14 |
| → mlq joined | 15:14 |
|
bnovc
| fr0sty: because if the issue is resolved on master but the feature hasn't pulled it in, it will look like a new bug to them | 15:14 |
| → alin-gym joined | 15:14 |
|
fr0sty
| Razz: what are you trying to accomplish? | 15:14 |
|
[exa]
| Razz: people usually take some of git sources and build them into their projects. Nice example of such thing is cgit, imho worthy reading | 15:14 |
|
fr0sty
| bnovc: then pull master in before testing. | 15:14 |
|
| bnovc: how big is your company? | 15:15 |
|
bnovc
| I'm not sure that thats always a reasonable requirement | 15:15 |
|
fr0sty
| # of devs # of SQ folk | 15:15 |
|
Razz
| [exa]: thx, I'll lookinto that. | 15:15 |
|
bnovc
| fr0sty: I don't know... hundreds of each. My department is (sort of) new...there are maybe 50 devs here and I don't know how many SQ | 15:15 |
|
Razz
| I'm trying to build a versioning file system (as an assignment) | 15:15 |
|
| fr0sty: ^ | 15:16 |
| ← saysjonathan left | 15:16 |
|
fr0sty
| Razz: most front ends just wrap the command line using the --porcelain options | 15:16 |
|
bnovc
| jgit is an API to git | 15:16 |
|
selckin
| copy-on-write: done? | 15:16 |
| → yairgo joined | 15:16 |
|
Razz
| fr0sty: I would prefer not using the cmdline but I'll keep it as an option | 15:17 |
| → saysjonathan joined | 15:17 |
|
fr0sty
| bnovc: unless you want SQ to go insane they should probably have an idea of what issues are supposed to be fixed by each revision they test (and which are still open). | 15:17 |
|
bnovc
| fr0sty: hence our versioning system! :) | 15:18 |
| → Aaaarg joined | 15:18 |
|
fr0sty
| Razz: man system you can invoke all the git goodness from C :-) | 15:18 |
| → xiong joined | 15:19 |
|
Razz
| fr0sty: right, but that's not a very pretty solution ;-) | 15:19 |
| → tstclair_ joined | 15:19 |
| ← tstclair left | 15:19 |
|
fr0sty
| or fork+exec | 15:19 |
|
| this is a class project. simple wins over pretty. | 15:20 |
|
| and wrapping the command line will be simpler than hooking into the source | 15:20 |
| ← napster_123 left | 15:20 |
|
Razz
| not sure, they want a nice design and some real research done into versioning fs's | 15:20 |
| ← unabonger left | 15:21 |
|
Razz
| also, they require the use of FUSE, but that should (AFAIK) not interfere with still using the cmdline | 15:21 |
| ← saysjonathan left | 15:21 |
| ← OOPMan left | 15:22 |
|
bnovc
| fr0sty: so it seems like I'm back to our vesrioning system and one level....and it really doesn't seem like cherry-picking and having duplicate changes on a 2nd branch causes problems except that its ugly to have duplication | 15:22 |
| → saysjonathan joined | 15:22 |
| ← mfacenet left | 15:22 |
|
doener
| Razz: the only lib I know of is libgit2, but I have no idea about its current status -- http://repo.or.cz/w/libgit2.git | 15:23 |
| ← osanaisho left | 15:24 |
|
Razz
| doener: thx | 15:24 |
| ← Mpenz left | 15:25 |
| ← opalka left | 15:25 |
|
fr0sty
| doener: that was defunct-ish last I heard. | 15:26 |
| → mr789 joined | 15:26 |
| → Mpenz joined | 15:26 |
| ← saysjonathan left | 15:26 |
| ← Knirch left | 15:26 |
| → mmc joined | 15:27 |
| → mfacenet joined | 15:27 |
| → saysjonathan joined | 15:28 |
| ← snearch left | 15:28 |
| → Bass10 joined | 15:28 |
| → chrislerum joined | 15:28 |
| → Bass2 joined | 15:29 |
| → drl joined | 15:29 |
|
shruggar
| from the look of things mailing-list side, I'd say that things are (glacially, and far from universally) being written with libization in mind | 15:29 |
| → fowlduck joined | 15:29 |
| ← Bass10 left | 15:30 |
| ← dquestions left | 15:30 |
| ← Bass2 left | 15:30 |
| → Bruce_Wayne joined | 15:30 |
| → j0shua joined | 15:30 |
| ← noktoborus_ left | 15:30 |
| → Bass10 joined | 15:30 |
| → dquestions joined | 15:31 |
| → mkramer joined | 15:31 |
| → Bass2 joined | 15:31 |
| ← Bass10 left | 15:31 |
| ← saysjonathan left | 15:32 |
| → lsls01 joined | 15:32 |
| → napster_123 joined | 15:32 |
| ← albel727 left | 15:32 |
| ← little_owl1 left | 15:32 |
| → saysjonathan joined | 15:33 |
| → mkramer1 joined | 15:33 |
| → pigdude joined | 15:34 |
| → simosx joined | 15:34 |
| ← burhan left | 15:34 |
|
bnovc
| fr0sty: I would love for you to convince me there's a better method, but I'm not seeing it, given our setup | 15:34 |
|
doener
| fr0sty: at least it took part in GSoC and had new commits just 2 weeks ago | 15:35 |
| ← mkramer left | 15:35 |
| → normanrichards joined | 15:35 |
|
fr0sty
| bnovc: in both cases you are going to be testing commits twice | 15:35 |
|
| which is what you wanted to avoid. | 15:35 |
|
| or so I thought. | 15:36 |
| ← mkramer1 left | 15:36 |
| ← saysjonathan left | 15:37 |
|
bnovc
| well that part is unavoidable...the thing is that I can still designate where it came off of master easily with this verisoning scheme and 1 level of branching | 15:37 |
|
| fr0sty: all of that aside, do you see any problems with doing the cherry-picking? | 15:37 |
|
| beside it seeming a bit ugly | 15:37 |
| → noktoborus_ joined | 15:37 |
|
fr0sty
| it's unnecessary | 15:37 |
| ← nevyn^_ left | 15:38 |
|
fr0sty
| whether the commits are cherry-picked or not, just use the same naming scheme and save yourself the trouble. | 15:38 |
| → OOPMan joined | 15:38 |
| → saysjonathan joined | 15:38 |
|
bnovc
| hmm | 15:38 |
| → nevyn^_ joined | 15:38 |
|
fr0sty
| in both cases the two branches will have 'duplicate' commits (from one point of view), but this way the repository only has one copy of the changes | 15:38 |
|
| this will also make your merging a little simpler. | 15:38 |
|
doener
| cherry-picking means duplication and indirection (when looking for the "original" commit) | 15:39 |
|
bnovc
| I guess that's true that maybe I could just version the same | 15:39 |
|
fr0sty
| you also lose the ancestry of changes. | 15:39 |
| → t0rc joined | 15:39 |
|
bnovc
| since applying this system to a second branch still won't represent the duplication | 15:39 |
| → gh34 joined | 15:40 |
|
doener
| and since you seem to be talking about testing: Testing a cherry-picked commit is not the same as testing the original commit | 15:40 |
|
| (unless they happen to be tree-same) | 15:40 |
|
bnovc
| it is if its cherry-picked to the same parent | 15:40 |
|
| ya | 15:40 |
| ← _sh3 left | 15:41 |
| ← ExtraSpice left | 15:41 |
| → alester joined | 15:42 |
| ← kpreid left | 15:42 |
| → albel727 joined | 15:42 |
| ← fr0sty__ left | 15:42 |
| ← mr789 left | 15:42 |
| ← saysjonathan left | 15:43 |
| → fr0sty__ joined | 15:43 |
| → epid joined | 15:43 |
| → saysjonathan joined | 15:43 |
| ← napster_123 left | 15:44 |
| IslandUsurper → IslandUsurperAFK | 15:44 |
| ← Schmallon left | 15:45 |
| → smuf joined | 15:46 |
| ← dc5ala left | 15:46 |
| ← warlock_mza left | 15:47 |
| → khmarbaise joined | 15:47 |
| ← saysjonathan left | 15:48 |
| → saysjonathan joined | 15:48 |
| → alex__c2022 joined | 15:48 |
| → Schmallon joined | 15:48 |
| → thm joined | 15:49 |
| ← nevyn^_ left | 15:49 |
| ← Anti-X left | 15:50 |
| ← sec^nd left | 15:50 |
| → beatak joined | 15:51 |
| → sec^nd joined | 15:52 |
| → jrmuizel joined | 15:52 |
| ← lsls01 left | 15:52 |
| → chrisshattuck joined | 15:53 |
| → Adaptee joined | 15:53 |
| → ExtraSpice joined | 15:53 |
| ← saysjonathan left | 15:53 |
| → saysjonathan joined | 15:53 |
| ← thierryp left | 15:54 |
| → thiago joined | 15:54 |
| thiago → thiago_home | 15:54 |
| ← yt_ror left | 15:55 |
| → Anti-X joined | 15:56 |
| ← khmarbaise left | 15:56 |
| → kpreid joined | 15:57 |
| ← saysjonathan left | 15:58 |
| ← dr_lepper left | 15:58 |
| → eto joined | 15:58 |
| → khmarbaise joined | 15:58 |
| → saysjonathan joined | 15:59 |
| → yt_ror joined | 15:59 |
| → gentooer joined | 15:59 |
| → Bruce_Wayne_ joined | 15:59 |
| → montylounge joined | 16:00 |
| ← gemmes left | 16:00 |
| → jmil joined | 16:00 |
| → jmil_ joined | 16:01 |
| → NET||abuse joined | 16:01 |
|
NET||abuse
| hi there folks. i was talking with a friend who's a web designer, he outsources developer work and project manages. He's a bit untechy so hadn't a clue about svn/bzr/git options. | 16:01 |
| IslandUsurperAFK → IslandUsurper | 16:01 |
| → kukks joined | 16:02 |
| ← edude03 left | 16:02 |
|
bnovc
| is there a follow-up to that | 16:02 |
|
NET||abuse
| i said i would think about and look into a way to setup a central multiproject server so he can have a hub where he version controls his projects, and allows remote dev's to work on his projects, while maintaining control of the overall system. | 16:02 |
| → yhager joined | 16:03 |
| ← tvw left | 16:03 |
|
cbreak_work
| git + gitolite sounds suitable. | 16:03 |
|
NET||abuse
| i'm thining of various vcs web ui front ends, and i'm trying to think what he'd be suited to . | 16:03 |
|
| gitolite.. hmm | 16:03 |
| ← saysjonathan left | 16:04 |
|
imMute
| NET||abuse: what about github? | 16:04 |
| → icwiener joined | 16:04 |
|
NET||abuse
| the other question was what to give him, could he handle git. | 16:04 |
| ← sraue left | 16:04 |
| → saysjonathan joined | 16:04 |
|
NET||abuse
| imMute, hmm, there's a paid version isn't there.. how much is it? | 16:04 |
| ← jmil left | 16:04 |
| ← gentooer left | 16:05 |
| → linusoleander joined | 16:05 |
| → tj joined | 16:05 |
|
NET||abuse
| is there a windows gui like tortoise for git? | 16:05 |
|
cbreak_work
| unfortunately | 16:06 |
|
NET||abuse
| i thought i'd tried tortoisegit and it was buggy as all hell | 16:06 |
|
cbreak_work
| it's called tortoise | 16:06 |
|
| and it's terrible | 16:06 |
|
NET||abuse
| hmm, | 16:06 |
|
| would love to promote adoption of the cli,, but not sure he'd accept and commit to that | 16:06 |
| ← jmil_ left | 16:07 |
| ← saschpe left | 16:08 |
| → sraue joined | 16:08 |
| ← saysjonathan left | 16:08 |
| → saysjonathan joined | 16:09 |
| ← flaguy48 left | 16:11 |
| ← hobodave_ left | 16:11 |
|
theflow
| Hi, I'm trying to understand the release management of git.git and if it makes sense to use something like that for a webapp. It seems a bit heavy for that, is there something in between what git.git is doing and everyone pushing directly to master? | 16:12 |
|
imMute
| TortoiseGIT is buggy as shite, but its still pretty new. TortoiseSVN is quite good, and I've had success teaching it to people enough to use it for VC | 16:13 |
| ← thiago_home left | 16:13 |
|
SethRobertson
| theflow: some people like http://nvie.com/posts/a-successful-git-branching-model It has an associated tool | 16:13 |
| → opalka joined | 16:13 |
| ← saysjonathan left | 16:13 |
|
imMute
| NET||abuse: also, github's "small" plan is 10 private repos, and 5 private collaborators, and thats $12/mo | 16:13 |
| → thiago_home joined | 16:13 |
| → Dave^| joined | 16:14 |
| → saysjonathan joined | 16:14 |
|
SethRobertson
| theflow: gitflow | 16:14 |
|
NET||abuse
| imMute, i'm wondering which of git or svn is the best choice for this guy. he's really not the best at grasping more technical stuff.. | 16:15 |
|
theflow
| SethRobertson: yeah, I looked at that, but it requires that you do everything in a topic branch, as far as I understand it | 16:15 |
|
imMute
| svn is probably going to be easier to grasp, although I say that because I used svn for much longer than git. | 16:15 |
|
NET||abuse
| imMute, also, with his outsourcing, i'm doubting many of the php dev's in india he deals with would be setup for git use. they're svn as far as I can see. | 16:15 |
|
imMute
| well then svn is probably the better bet | 16:15 |
| ← noktoborus_ left | 16:15 |
|
NET||abuse
| imMute, i've used svn for 5 years myslef, toyed with git and bzr on and off only last 2 years | 16:16 |
|
SethRobertson
| You mean if he switches to git, we get to infect the sub-continent with git? | 16:16 |
|
NET||abuse
| SethRobertson, hehe yeh, | 16:16 |
|
imMute
| SethRobertson: lets not. | 16:16 |
|
NET||abuse
| he deals with about 6 projects in a month, :) | 16:16 |
|
| so he's likely to impact the working habits of about 8 indian devs | 16:16 |
|
SethRobertson
| NET||abuse I do have to say that it is far easier to use git vs svn when talking about outsourced development and developers on a different continent | 16:17 |
| ← linusoleander left | 16:17 |
|
SethRobertson
| The central repository starts to break down seriously | 16:17 |
|
NET||abuse
| SethRobertson, i do feel like there's a lot to argue for git.. | 16:17 |
| ← xiangfu left | 16:17 |
|
imMute
| true, git is probably a better choice for dealing with devs across the world, but if they're already using svn and havnt touched git... | 16:17 |
|
NET||abuse
| but tortoise not being ready, the imcumbent use of svn, kind of are a barrier | 16:18 |
| → amh345 joined | 16:18 |
|
imMute
| could certainly use some kind of git-svn bridge.. | 16:18 |
| ← aah left | 16:18 |
|
imMute
| I dunno if there's anything that would present a git repository as an svn repo though... | 16:18 |
|
NET||abuse
| yeh, not sure. | 16:19 |
| → psankar joined | 16:19 |
| ← psankar left | 16:19 |
| → psankar joined | 16:19 |
|
SethRobertson
| The git wiki talks about gitsafe as a (non-free) git graphical interface | 16:19 |
| ← saysjonathan left | 16:19 |
|
NET||abuse
| how's trac as a git front end? | 16:19 |
| → pbeckingham joined | 16:19 |
| → saysjonathan joined | 16:19 |
| → Guest52674 joined | 16:19 |
| ← cbreak_work left | 16:20 |
|
imMute
| NET||abuse: AFAIU, trac is more of a thing to combine VC, issue tracking, a wiki, and stuff all under one roof. it's hardly a client side git client | 16:20 |
|
NET||abuse
| imMute, oh of course, i know. | 16:20 |
|
| imMute, part of this would be to have a web ui with the bug tracking, per project tickets and per project wiki, so that he can become more organised in his own project management.. | 16:21 |
|
| the guys was a mural painter and graphic designer by trade before adopting the web industry :) He's not a trained pm, or particularly together guy, but he's a good sales guy :) | 16:21 |
|
| And i just kind of want to help him. | 16:22 |
| → ntoll joined | 16:22 |
| q0rban → q0rban|lunch | 16:24 |
| ← saysjonathan left | 16:24 |
| → saysjonathan joined | 16:25 |
| → Tianon joined | 16:26 |
| ← Tianon left | 16:26 |
| → Tianon joined | 16:26 |
| → flaguy48 joined | 16:26 |
| ← Dave^| left | 16:26 |
| → kostja_osipov joined | 16:26 |
|
imMute
| NET||abuse: then trac is probably going to be a good suit | 16:27 |
| → amerine joined | 16:27 |
| ← Guest52674 left | 16:28 |
| q0rban|lunch → q0rban | 16:28 |
| → _sh3 joined | 16:29 |
| ← saysjonathan left | 16:29 |
| → Dave^| joined | 16:29 |
| → jmil joined | 16:30 |
| → saysjonathan joined | 16:30 |
| ← kunwon1 left | 16:30 |
| → Heimidal joined | 16:31 |
| ← monokrome left | 16:31 |
| → reuteras joined | 16:31 |
| → ooooPsss_ joined | 16:32 |
| ← ntoll left | 16:32 |
| → agile joined | 16:32 |
| ← ooooPsss left | 16:32 |
| ooooPsss_ → ooooPsss | 16:32 |
| → kunwon1 joined | 16:33 |
| → cylence joined | 16:34 |
| ← saysjonathan left | 16:34 |
| → saysjonathan joined | 16:35 |
| → urkud joined | 16:36 |
| ← khmarbaise left | 16:37 |
| → SimonP86 joined | 16:37 |
| → saschpe joined | 16:37 |
| ← giallu left | 16:37 |
| ← chrisshattuck left | 16:38 |
| ← ooooPsss left | 16:38 |
| ← Adaptee left | 16:38 |
| → zerium1 joined | 16:38 |
| → djh_ joined | 16:38 |
| ← djh_ left | 16:38 |
| → kanru joined | 16:39 |
|
zerium1
| having some difficulty figuring out how to delete a remote branch, git branch -r shows me a bunch of stuff outside of "origin" how would I go about deleting those? | 16:39 |
|
| ie: there is a just a "trunk" (imported from SVN) | 16:40 |
|
jast
| delete it in the remote repository or delete your 'local remote branch'? | 16:40 |
| ← saysjonathan left | 16:40 |
|
zerium1
| in the remote | 16:40 |
|
| ie git push origin :branchname | 16:40 |
|
| works for anything under origin... | 16:41 |
| → saysjonathan joined | 16:41 |
|
zerium1
| but how would I do something outside of origin? | 16:41 |
| → ooooPsss joined | 16:41 |
|
tango_
| git push otherremote :branchname ? | 16:41 |
|
jast
| well, 'trunk' doesn't exist in any upstream git repository, does it? :) | 16:41 |
|
zerium1
| maybe you are right... however it shows up when i do a "git branch -r" | 16:41 |
|
jast
| well, you could just remove it from there :) | 16:42 |
|
| if you no longer want to work on the SVN trunk, that is :) | 16:42 |
|
zerium1
| yeah i don't | 16:42 |
|
| so that is only a "git svn" thing? | 16:42 |
|
| leftover from the import i suppose? | 16:42 |
| ← ereslibre left | 16:42 |
|
jast
| yep, should be | 16:42 |
|
zerium1
| ok | 16:42 |
|
| i should have just checked out the repo to a new directory | 16:43 |
| → thierryp joined | 16:43 |
|
zerium1
| so do i just "git svn -d branchname" ? | 16:43 |
|
jast
| no, git svn doesn't really give you any tools for that | 16:44 |
|
| if a simple 'git branch -r -d trunk' doesn't work, try 'git update-ref -d refs/remotes/trunk' (not quite sure that's the name used internally, but I think so) | 16:44 |
|
zerium1
| yep that worked | 16:44 |
| ← koltroll left | 16:44 |
|
jast
| right :) | 16:44 |
| ← kanru left | 16:45 |
|
zerium1
| thanks | 16:45 |
| → codeslinger joined | 16:45 |
| ← saysjonathan left | 16:45 |
| → punkoff joined | 16:45 |
| → saysjonathan joined | 16:46 |
|
codeslinger
| I tried to do 'git commit foo.php' but the log message template it asks me to edit sounds like it is going to commit all other files that have changes as well. How do I just commit a few files that I am done with? | 16:46 |
|
punkoff
| How do I find closest unmergen branch for a given commit-ish? | 16:46 |
|
| *unmerged | 16:46 |
|
FauxFaux
| codeslinger: That sounds right. | 16:46 |
| ← Tianon left | 16:46 |
|
offby1
| I'd just eyeball "gitk --all" | 16:46 |
|
punkoff
| e.g. if someone makes commits A,B,C in branch 'feature', it should be 'feature' | 16:46 |
|
| and if 'feature' gets merged into master, it becomes master | 16:47 |
|
codeslinger
| I am a newbee for git, but have used cvs and svn heavily before | 16:47 |
| ← jmil left | 16:47 |
|
codeslinger
| I am now using git 1.5.5.6 | 16:47 |
|
zerium1
| codeslinger: best $12 you'll spend is on the peepcode git tutorial | 16:47 |
| → hobodave joined | 16:48 |
|
offby1
| But I can buy two cheesesteaks for $12 | 16:48 |
|
jast
| codeslinger: git commit -o <files>. and update your version of git. that one is practically ancient. | 16:48 |
| → ereslibre joined | 16:48 |
| → djh_ joined | 16:48 |
| → khmarbaise joined | 16:48 |
| ← djh_ left | 16:48 |
| ← ereslibre left | 16:48 |
| → ereslibre joined | 16:48 |
|
codeslinger
| jast: interesting. Are there specific arguments besides it being ancient that I could use to convince my admin to upgrade? | 16:48 |
|
zerium1
| offby1: your arteries will thank you for not though... ;) | 16:48 |
|
codeslinger
| And is there a risk to the repo by updating git. | 16:49 |
| ← sh1mmer left | 16:49 |
| ← ooooPsss left | 16:49 |
| ← khmarbaise left | 16:49 |
|
jast
| codeslinger: perhaps that that old version was substantially harder to use than the current ones. and no, git is pretty good about being backward-compatible. | 16:49 |
| → djh_ joined | 16:49 |
| ← zerium1 left | 16:49 |
|
thm
| there's no way to get a remote log other than fetching stuff to a local repo? | 16:49 |
| ← djh_ left | 16:50 |
|
codeslinger
| if I could qualify those statements I would convince them, i.e. what makes it easier for the newer version | 16:50 |
|
jast
| thm: that's correct | 16:50 |
| ← saysjonathan left | 16:50 |
|
jast
| codeslinger: there are ~149 KB worth of release notes since then that you're free to work your way through ;) | 16:51 |
|
codeslinger
| jast: lol | 16:51 |
| → saysjonathan joined | 16:51 |
|
codeslinger
| thanks | 16:51 |
| → tvw joined | 16:51 |
|
jast
| truth be told, it's hard for me to recall which things we were missing back then | 16:51 |
| ← Vampire0 left | 16:51 |
|
jast
| I only remember that a fair deal of the "hey, this makes things lots easier" moments were in 1.5.6 or later | 16:52 |
|
| but to summarize from the bigger releases... | 16:52 |
| ← psoo left | 16:52 |
| ← fowlduck left | 16:54 |
| → LiamH joined | 16:55 |
| → Adaptee joined | 16:55 |
| ← saysjonathan left | 16:55 |
| → saysjonathan joined | 16:56 |
| → ooooPsss joined | 16:56 |
|
jast
| git init automatically initializes repositories properly on e.g. windows. you can view history in graph form. several segfaults fixed. better memory usage when decompressing deltas. tons of messages made more understandable. (cont'd) | 16:56 |
| → Vampire0 joined | 16:56 |
| → steph021_mac joined | 16:57 |
| ← steph021_mac left | 16:57 |
| → steph021_mac joined | 16:57 |
|
FauxFaux
| Surely I'm being dumb and there's a short version of $(git rev-parse HEAD). | 16:58 |
|
codeslinger
| jast: not using windows in 2010 :) | 16:58 |
| → TorstenB joined | 16:58 |
|
codeslinger
| this is the year of os-x and linux | 16:58 |
| → shiba_yu36 joined | 16:58 |
|
FauxFaux
| Hahahahha, very funny. | 16:58 |
|
codeslinger
| or really of iOS and android :) | 16:59 |
|
bnovc
| FauxFaux: what're you trying to do? you can probably just use HEAD | 16:59 |
| → Yuffster joined | 16:59 |
| → aspotashev joined | 16:59 |
| → DrNick2 joined | 17:00 |
|
FauxFaux
| bnovc: It's going into grafts (or any other 3rd party system needing the full id). | 17:00 |
| ← DrNick left | 17:00 |
| ← saysjonathan left | 17:00 |
| → saysjonathan joined | 17:01 |
| → rgr joined | 17:02 |
| ← shiba_yu36 left | 17:02 |
|
bnovc
| ah, well, then how would you get something shorteR? | 17:02 |
| → khmarbaise joined | 17:02 |
| ← khmarbaise left | 17:02 |
|
bnovc
| I mean you could cat .git/refs/heads/<branch> but thats not really 'shorter' | 17:03 |
| → koltroll joined | 17:03 |
| srcerer_ → srcerer | 17:03 |
| → abetaha joined | 17:04 |
|
jast
| diffs and some other things are pagered by default on terminals. more robust packfiles. temporary data for am/rebase can no longer accidentally be added to a repository. per-line staging of changes. better at dealing with corrupt objects. branch --contains/--merged. easy mirroring. stash with index. various rebase -i fixes. (cont'd) | 17:04 |
| ← _sh3 left | 17:05 |
| ← cilly left | 17:05 |
| ← saysjonathan left | 17:05 |
| ← mabrand left | 17:06 |
| ← alex__c2022 left | 17:06 |
| → saysjonathan joined | 17:06 |
| ← eletuchy left | 17:07 |
| ← alberto56 left | 17:09 |
| ← koltroll left | 17:09 |
| ← normanrichards left | 17:09 |
| ← saysjonathan left | 17:11 |
| → kipras joined | 17:11 |
| → saysjonathan joined | 17:11 |
|
fr0sty
| jast: many thanks for your Gitbot homage. | 17:11 |
|
| (I would have thanked you earlier but this is the firest I have seen of the non-automated you) | 17:11 |
|
| faq non-bare | 17:12 |
|
jast
| fr0sty: Pushing to non-bare repositories is discouraged: please see https://git.wiki.kernel.org/index.php/GitFaq#non-bare [automatic message] | 17:12 |
|
| fr0sty is disproportionately happy about that. | 17:12 |
| → nakkor joined | 17:13 |
| → letas joined | 17:13 |
| ← akamike left | 17:13 |
| ← Yuffster left | 17:13 |
| → Yuffster joined | 17:14 |
| → alberto56 joined | 17:14 |
| → aah joined | 17:14 |
|
letas
| hey I was wondering what kind of good stuff you have defined on your gitconfig, like shortcuts or colors | 17:14 |
| → _sh3 joined | 17:14 |
| ← punkoff left | 17:15 |
| ← saysjonathan left | 17:16 |
| ← amh345 left | 17:16 |
|
fr0sty
| color.ui=auto | 17:16 |
| → Tianon joined | 17:16 |
| ← Tianon left | 17:16 |
| → Tianon joined | 17:16 |
|
nakkor
| letas: I have an alias for log: lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative | 17:16 |
| ← schambers left | 17:17 |
| ← Bruce_Wayne_ left | 17:17 |
|
letas
| nakkor nice! | 17:17 |
| → cilly joined | 17:18 |
| → amh345 joined | 17:18 |
| ← mastroDani left | 17:18 |
| ← ereslibre left | 17:18 |
| ← simosx left | 17:18 |
| → sebastorama joined | 17:20 |
|
jast
| easier syntax for setting up branch tracking. easier syntax for getting stages of files. option to prevent remote people from deleting branches via push. prevent adding submodule contents to supermodule. hard limit of 2 GB objects removed. checks for the common problematic case of pushing to a non-bare repository. automatic threaded packing. password prompts for user@ HTTP URLs. all kinds of performance optimizations. sparse checkout. HTTP digest auth. easier syntax f | 17:20 |
| ← chrislerum left | 17:20 |
| ← Bruce_Wayne left | 17:21 |
| → jmil joined | 17:21 |
|
nakkor
| is there a way to check how far ahead/behind a branch is from its remote without doing the full fetch? | 17:22 |
| → simosx joined | 17:22 |
|
jast
| hmm, the release notes seem to be missing a few things. | 17:22 |
| ← cylence left | 17:22 |
| ← smuf left | 17:23 |
|
jast
| nakkor: you can only list the current top commits of all refs of a remote, and that doesn't give you complete ahead/behind information | 17:23 |
| ← alberto56 left | 17:23 |
|
jast
| to fully determine 'aheadness'/'behindness' you have to match both sides' histories against each other, and for that you need the full history of both sides anyway | 17:23 |
|
patrikf
| nakkor: do you mean "fetch" or do you mean "pull" | 17:24 |
|
sec^nd
| hi | 17:24 |
|
nakkor
| patrikf: no because a pull would merge in the remotes changes | 17:24 |
|
sec^nd
| I have git repos and I'm having a problem pushing to them | 17:24 |
|
patrikf
| nakkor: there's also "git remote update", which is essentially a fetch for all branches and all remotes | 17:24 |
|
| nakkor: so you don't even want fetch? why not? | 17:24 |
|
sec^nd
| I want to be able to work on one repo (clone) and push changes back and forth between reepos | 17:25 |
|
| I have a local and remote computer, but I work on boht | 17:25 |
|
nakkor
| patrikf: mostly just curious, I would love to be able to see what I am missing on the server before I pull it down | 17:25 |
|
sec^nd
| *both | 17:25 |
|
nakkor
| epecially if the remote has a big changeset | 17:25 |
| ← lucasvo left | 17:25 |
|
patrikf
| nakkor: so you're all about traffic concerns | 17:25 |
|
nakkor
| patrikf: yeah | 17:25 |
| → d2dchat joined | 17:26 |
|
sec^nd
| I'm getting push errors | 17:26 |
|
jast
| sec^nd: push is problematic if both sides have an associated working tree. use pull from the other side instead. details at http://git.or.cz/gitwiki/GitFaq#non-bare | 17:26 |
| → lucasvo joined | 17:26 |
|
patrikf
| nakkor: well, you could do a git log on the remote side | 17:26 |
|
nakkor
| I was just wondering (and hoping) that there was a utility to see how many changesets are going to be fetched prior to actually transmitting the data | 17:26 |
|
patrikf
| nakkor: either through ssh, or through e.g. gitweb | 17:26 |
| → kanru joined | 17:27 |
|
patrikf
| nakkor: apart from that there's not much you can do | 17:27 |
| ← urkud left | 17:27 |
|
nakkor
| patrikf: cool, that is a strait forward answer I can go with :) | 17:27 |
|
sec^nd
| jast: what is the best way to sync between repos ? | 17:27 |
|
jast
| sec^nd: didn't I just say that? git pull | 17:27 |
|
| or use a bare repository as a go-between if you really want to push | 17:27 |
|
sec^nd
| jast: I created a repo and git cloned it, and then I tried push | 17:27 |
|
| jast: I want to be able to push it | 17:28 |
|
| jast: how do I create a bare repo ? | 17:28 |
|
jast
| what's the big advantage of push over pull? | 17:28 |
|
| git init --bare, git clone --bare | 17:28 |
|
patrikf
| jast: publicizing your own repo, for example. | 17:28 |
|
sec^nd
| jast: I dont have to log into the other server and enter my pass | 17:28 |
|
patrikf
| jast: or simple workflows involving 2 to 3 people | 17:28 |
|
fr0sty
| jast: you can't merge. it's a feature... | 17:28 |
|
jast
| patrikf: yes, but when you publicize the target is usually bare already | 17:28 |
|
sec^nd
| patrikf: that is what i'm trying todo | 17:28 |
| ← ayanes left | 17:29 |
|
sec^nd
| I keep having to log in and enter my password on a server I dont completly strust | 17:29 |
|
| *trust | 17:29 |
|
patrikf
| sec^nd: yeah, you should only push to bare repos, and then pull from them. | 17:29 |
|
sec^nd
| kk | 17:29 |
|
jast
| sec^nd: well, you said you were working on both, so I assumed you were logged in on both anyway :) | 17:29 |
| ← montylounge left | 17:29 |
|
letas
| wow jast I just read what I think you have in your .gitconfig and I have no clue how to set most of them - Google mode on! | 17:30 |
|
jast
| letas: uh, what? | 17:30 |
|
nakkor
| jast: so you are looking at his config huh... kind of private stuff... ;) | 17:30 |
| ← lucasvo left | 17:31 |
|
nakkor
| x that, I mean you letas | 17:31 |
| → jarrod_ joined | 17:31 |
| → psoo joined | 17:31 |
| → brntbeer joined | 17:31 |
|
jast
| here is my .gitconfig file: http://git.pastebin.com/BFAu9YRi | 17:32 |
| ← brosner left | 17:32 |
| → ereslibre joined | 17:33 |
| ← jmil left | 17:33 |
| → unabonger joined | 17:34 |
| DrNick2 → DrNick | 17:34 |
| → dreiss joined | 17:35 |
|
kostja_osipov
| hi, i'm trying to add a commit trigger that sends an email when a person commits changes to their local repository. | 17:35 |
|
| As far as I can see .git/hooks files are not versioned. | 17:35 |
|
| I wanted to add the trigger to the master branch to make sure the trigger is fired in all clones | 17:36 |
|
| what's the proper way to accomplish that with git? | 17:36 |
|
| where do I put my trigger so that's it's versioned and whoever clones a repo gets it? | 17:36 |
| ← theflow left | 17:36 |
|
kostja_osipov
| if you know that it's documented anywhere, just give me a hint, and i'll google it up. | 17:37 |
|
helo
| i did a bad cherry-pick that has now left a bunch of untracked files that are preventing me from checking out the branch i was cherry-picking from | 17:38 |
|
| is there an easy way to blow those all away? | 17:38 |
| → justin-george joined | 17:38 |
|
jast
| kostja_osipov: active hooks are never automatically distributed to other repositories for security reasons. you can include a script in your repository that will set up the hooks for people who decide to run it. | 17:38 |
|
fr0sty
| helo: git reset --hard HEAD | 17:38 |
|
jast
| fr0sty: for untracked files? :) | 17:39 |
|
mmattice
| git status -s | grep '^??' | awk '{print $2}' | xargs rm | 17:39 |
|
jast
| helo: "git clean" removes *all* untracked files | 17:39 |
| ← ph^ left | 17:39 |
| ← chrisred left | 17:39 |
|
helo
| hmmm.... i'm not sure that i want to do that | 17:39 |
|
fr0sty
| jast: good point, but git clean is a dangerous beast... | 17:39 |
|
jast
| I know :) | 17:39 |
| → sh1mmer joined | 17:39 |
|
kostja_osipov
| jast: thanks for your answer, but i think this is just nasty. both bk and bzr allow that | 17:40 |
|
helo
| i think i'll just keep rerunning git checkout <branch> and manually removing the files it complalins about | 17:40 |
| → warbee joined | 17:40 |
|
jast
| helo: git checkout -f to force overwriting files that are in the way | 17:40 |
|
fr0sty
| there is always checkout -f | 17:40 |
| ← dreiss left | 17:40 |
|
kostja_osipov
| i think someone is trying to be too smart and make a decision for me. | 17:40 |
|
fr0sty
| gah, beat me to it. 2nd place is the first loser... | 17:40 |
|
helo
| yeah, thats the ticket | 17:40 |
|
jast
| kostja_osipov: you're free to believe that. I personally believe that this design decision is not about you, it's about everyone you work with. | 17:40 |
| ← xiong left | 17:41 |
|
bremner
| kostja_osipov: you might be interested in gitolite, which can support global hooks | 17:41 |
| → kenichi joined | 17:41 |
| ← ekontsev1y left | 17:41 |
|
kostja_osipov
| jast: exactly. i need to make the decision for everyone i work wiht, and i have an authority to make it. but i don't have the tool support. | 17:41 |
|
| lame | 17:41 |
|
fr0sty
| kostja_osipov: and to protect them from feeling like 'someone is trying to be too smart and make a decision for me.' | 17:41 |
|
kostja_osipov
| fr0sty: have you heard about BZR_NO_TRIGGERS switch? | 17:41 |
|
fr0sty
| kostja_osipov: yes you do, add it to a hooks directory and tell everyone to link that directory to .git/hooks/ | 17:42 |
|
kostja_osipov
| which anyone can set in their shell to disable these hoosk? | 17:42 |
|
fr0sty
| if you have authority, use it. | 17:42 |
|
jast
| if you feel that strongly about it, why not use bk or bzr instead? this is one thing that I'm almost positive will *never* change in git. | 17:42 |
|
kostja_osipov
| i could just as well request everyone to manually run a diff and send an email before commit | 17:42 |
|
| which i have an authority to do | 17:42 |
|
fr0sty
| and if your coworkers are disinclined to listen to you then you are hosed either way. | 17:42 |
|
kostja_osipov
| but this is not automation, which i am asking for | 17:42 |
| ← flaguy48 left | 17:43 |
|
kostja_osipov
| jast: right, i am personally strongly considering it. my 3d day with git and looks like someone is trying to be too smart. | 17:43 |
|
fr0sty
| kostja_osipov: you have been told how to automate this. | 17:44 |
|
| it is not hard | 17:44 |
|
kostja_osipov
| always imposing some workflow on me, not helping me have it the way i want it | 17:44 |
|
| fr0sty thanks a bunch | 17:44 |
| ← goshawk left | 17:44 |
|
bmalee
| git imposes a workflow? :/ | 17:44 |
|
kostja_osipov
| thanks for telling me there is no other way, saves time | 17:44 |
| → keith_p joined | 17:44 |
|
fr0sty
| kostja_osipov: you can use whatever workflow you want | 17:44 |
| ← keith_p left | 17:44 |
|
bremner
| never argue with people who want to go use software you don't have to support | 17:44 |
| → matjas joined | 17:45 |
| ← bpo left | 17:45 |
|
fr0sty
| bremner: good point. | 17:45 |
|
matjas
| I `git clone`’d a repo on GitHub to which I don’t have write access and made some commits. Later, I forked the repo. How can I tell git to push my commits to MY fork and not to the original origin? | 17:46 |
|
kostja_osipov
| bremner: the issue is only that there is no perfect revision control system | 17:46 |
|
| unfortunately | 17:46 |
|
| in 2010 | 17:46 |
|
| fr0sty thinks there needs to be a 'git dealbrakers' webpage somewhere. | 17:46 |
|
jast
| there is never anything perfect, whether in 2010, 2020 or 5690 | 17:46 |
|
bremner
| kostja_osipov: like I said, gitolite adds in that particular feature, but people will always be able to edit their local hooks | 17:47 |
| ← yairgo left | 17:47 |
|
jast
| not least because perfection is inherently subjective | 17:47 |
|
| bremner: how does it do that? gitolite has no client-side part | 17:47 |
|
| and I don't git letting itself getting swindled into fetching hooks from who knows where | 17:47 |
|
| *see | 17:47 |
| ← guardian left | 17:47 |
|
bremner
| jast: hmm. good question. maybe it is default hooks in remote repos created by gitolite | 17:48 |
|
jast
| much more likely | 17:48 |
|
bremner
| which also avoids the local editing issue | 17:49 |
|
kostja_osipov
| jast: btw, if one is so concerned about security with hooks, one could just always fail to automerge them when pulling from upstream | 17:49 |
|
jast
| uh, what? | 17:49 |
|
kostja_osipov
| that would force users to look at the hook before letting it work in the local tree | 17:49 |
|
jast
| so users would be forced to look at the hook during clone? | 17:49 |
|
kostja_osipov
| yes. | 17:50 |
|
jast
| I don't see that mamking things more convenient | 17:50 |
|
kostja_osipov
| wait. | 17:50 |
|
| not during clone | 17:50 |
|
| during pull | 17:50 |
|
[exa]
| :] | 17:50 |
|
jast
| well, so during clone we should allow repositories to run arbitrary commands on people's machines? | 17:50 |
|
| such as rm -rf ~ | 17:50 |
| ← petran left | 17:50 |
|
bremner
| finally, a clean homedir | 17:50 |
| ← chrischambers left | 17:50 |
|
jast
| well, I guess it's up to personal preference :) | 17:50 |
|
| I like my homedir messy | 17:51 |
| ← kanru left | 17:51 |
|
matjas
| I `git clone`’d a repo on GitHub to which I don’t have write access and made some commits. Later, I forked the repo. How can I tell git to push my commits to MY fork and not to the original origin? | 17:51 |
|
[exa]
| matjas: you need to mofify origin remote information. see git remote manpage | 17:51 |
|
| like git-remote | 17:51 |
|
sitaram
| bremner: kostja_osipov wants client side hooks. Gitolite does nothing to the client and cannot. Which is good :) regardless of what kostja_osipov thinks | 17:52 |
|
matjas
| [exa] git remote, thanks | 17:52 |
|
kostja_osipov
| jast: ok. one other option would be to write a git plugin and ask all who wants these hooks to be run to install it. | 17:52 |
|
[exa]
| not sure how github handles forks, but setting 'origin' to your new push url should just work | 17:53 |
|
kostja_osipov
| that would be safe from security pov, don't y0 | 17:53 |
|
| ou think? | 17:53 |
|
jast
| hmm, I find no source that tells me how to get bzr to copy hooks from the server | 17:53 |
|
sitaram
| kostja_osipov: the correct place for hooks is on the receive side of a push. The local repo on the developers own machine is just that -- a local repo. He can do what he wants, but when he touches the central server, you "hook" him | 17:53 |
| → nevyn^_ joined | 17:53 |
|
kostja_osipov
| jast: you can use plugins in bzr | 17:53 |
|
jast
| yes, but you have to install the plugins yourself, don't you? | 17:53 |
| → goshawk joined | 17:53 |
|
kostja_osipov
| jast: right | 17:53 |
| → saysjonathan joined | 17:53 |
|
kostja_osipov
| can i do the same with git? | 17:53 |
| → Chillance joined | 17:54 |
|
jast
| it's not too difficult to install a git script that wraps around the real git binary and adds other operations on top | 17:54 |
|
| I do that myself for a bunch of things | 17:54 |
|
kostja_osipov
| jast: see mysql_plugins project for a bzr plugin that runs local hooks | 17:54 |
| → koltroll joined | 17:54 |
|
SethRobertson
| So do I, and it even automatically installs git hooks for me! | 17:54 |
|
kostja_osipov
| ok, i see. messy though | 17:54 |
|
| thanks! | 17:54 |
| → chrisshattuck joined | 17:54 |
| → petercoulton joined | 17:55 |
| → yairgo joined | 17:55 |
|
jast
| there were some efforts for adding global hooks quite a while ago, but they never really made it into anything | 17:55 |
|
bremner
| kostja_osipov: note that people could still call "the real git" to circumvent your script/plugin | 17:55 |
|
kostja_osipov
| bremner: | 17:56 |
|
| that would be fine | 17:56 |
| ← sh1mmer left | 17:56 |
|
kostja_osipov
| i'm looking for automation, so that users of the project don't have to run a bunch of messy commands to participate | 17:56 |
|
[exa]
| kostja_osipov: I still wonder what practical purpose would that have, can you point me to some? | 17:56 |
|
kostja_osipov
| and the project workflow is around commits. | 17:56 |
| ← nonno left | 17:56 |
|
kostja_osipov
| one does a commit, a mail is sent to the list, this mail can be used for code review | 17:57 |
|
jast
| [exa]: well, in some teams developers are not supposed to be able to do experimental work without everyone seeing it ;o) | 17:57 |
| ← dpino left | 17:57 |
|
[exa]
| jast: oh I'm starting to see. | 17:57 |
|
kostja_osipov
| jast: you can disable the hook if you're shy and don't want others to see it. | 17:58 |
|
jast
| so instead of using something like gerrit and keeping local commits local, people will tend to stop committing experimental stuff, just like in subversion | 17:58 |
|
kostja_osipov
| but the deefault is that everyone sees what everyone else does | 17:58 |
|
jast
| yes, technically you can | 17:58 |
| ← elmob left | 17:58 |
|
jast
| but that means you're making it harder for people with good workflow to do the right thing... I do see what you're after, though. | 17:58 |
|
kostja_osipov
| jast: i can change the worflow so that a mail is sent only when htere is a push to a branch | 17:58 |
|
[exa]
| kostja_osipov: there's a way better way to do that, just make a script that keeps an eye on your HEAD and notifies everyone on changes. Anything else is absolutely ineffective | 17:58 |
|
kostja_osipov
| but every new branch we create will require manual setup anyway | 17:59 |
|
jast
| kostja_osipov: well, you can process pushes centrally on the server :) | 17:59 |
| ← epid left | 17:59 |
|
kostja_osipov
| exa: we have dozens of branches, and they are created and dropped easily. | 17:59 |
|
| it's not about the head | 17:59 |
| ← tlonim left | 17:59 |
| → adamm joined | 17:59 |
|
jast
| [exa]: so people will get mails for amends, rebases, resets, switched branches, etc., too? ;) | 17:59 |
|
kostja_osipov
| yep | 17:59 |
|
| not bad in a midsize project | 17:59 |
|
bremner
| that should be fun | 17:59 |
|
kostja_osipov
| you can filter all this | 18:00 |
|
[exa]
| that forces people to create a mail folder that they totally ignore | 18:00 |
| ← madewokherd left | 18:00 |
|
fr0sty
| bremner: just wait until the rebasing starts... | 18:00 |
|
kostja_osipov
| exa: if done wrong, yes | 18:00 |
|
[exa]
| kostja_osipov: much better way is to ask (or order, if you can) people to push all of their stuff often, and make a nice visualisation | 18:01 |
|
jast
| well, I have mentioned my thoughts about this. ultimately it's not our decision how kostja_osipov sets up his team workflows, and we don't really know whether it's not going to work wonderfully. I consider my work here done. :} | 18:01 |
|
[exa]
| eye candy makes wonders | 18:01 |
|
bremner
| kostja_osipov: I think working with pushes rather than commits is a better plan. | 18:01 |
|
jast
| kostja_osipov: anyway, for reviews, you might want to look at gerrit. it's a git review tool. | 18:01 |
| → sh1mmer joined | 18:01 |
|
kostja_osipov
| exa: for an example of this kind of workflow, please take a look at postgres project | 18:02 |
|
| they do send a mail on every commit | 18:02 |
| ← albel727 left | 18:02 |
| → _Vi joined | 18:03 |
| → albel727 joined | 18:04 |
|
fr0sty
| "The project has decided, more-or-less, to use Git like it was CVS" | 18:04 |
|
| from the postgres git-migration page ^ | 18:04 |
|
helo
| better than using CVS like it was git | 18:04 |
|
jast
| postgresql is a really special project as far as workflows go | 18:04 |
| ← psoo left | 18:04 |
|
fr0sty
| and that is one email per mainline, authoritative, central repository commit. | 18:05 |
|
[exa]
| :D | 18:05 |
|
fr0sty
| not one email for every checkpoint, amend and rebase step. | 18:05 |
| → joel_falcou joined | 18:05 |
|
fr0sty
| just finished products. | 18:05 |
| ← rgr left | 18:05 |
| → bpo joined | 18:06 |
|
| helo tries to imagine a world where git is taught in first- or second-year CS programs | 18:06 |
| → cylence joined | 18:07 |
| → rgr joined | 18:07 |
| ← nevyn^_ left | 18:07 |
| → tlonim joined | 18:07 |
| → goldbergus joined | 18:09 |
|
bremner
| helo: I planned to, but ran out of time. | 18:10 |
| ← bpo left | 18:10 |
| → bpo joined | 18:11 |
|
bremner
| so I think that world is not as far away as you think | 18:11 |
| → p3rg2z joined | 18:11 |
| ← NET||abuse left | 18:12 |
| ← Schmallon left | 18:12 |
| ← mmc left | 18:13 |
|
helo
| seems like it would reinforce a lot of good development considerations | 18:13 |
| ← albel727 left | 18:14 |
| ← itamarjp1 left | 18:16 |
| ← chrisshattuck left | 18:16 |
| ← tizbac left | 18:16 |
| → tizbac_ joined | 18:16 |
| → itamarjp joined | 18:16 |
| ← codeslinger left | 18:16 |
| ← letas left | 18:19 |
| → chrisshattuck joined | 18:19 |
| ← itamarjp left | 18:21 |
| → dreiss joined | 18:21 |
|
sgronblo
| fr0sty: but wasn't that just to get CVS-devs slowly used to git? | 18:23 |
| ← tatsuya left | 18:23 |
|
sitaram
| bremner: you and Mpenz should get together; he's also a prof :) | 18:23 |
|
| shake the world of CS with git! | 18:24 |
|
fr0sty
| sgronblo: exactly. it is nowhere close to a 'best practice' approach. | 18:24 |
| → __name__ joined | 18:24 |
| ← __name__ left | 18:24 |
| → __name__ joined | 18:24 |
|
sgronblo
| fr0sty: yeah but after a while when all the oldies get used to it, don't you think they'll change that? | 18:25 |
|
fr0sty
| without a doublt. | 18:25 |
|
| doubt, even. | 18:25 |
|
| from the article: "It's possible, even likely, that eventually the PostgreSQL project will move towards the "normal Git workflow" where branches and merges would be used for feature work. But it definitely won't happen this year. " | 18:26 |
| → brosner joined | 18:26 |
|
sgronblo
| I was using git like a dummy for at least a year too before really starting to learn how you can use it | 18:27 |
| → albel727 joined | 18:27 |
|
kostja_osipov
| fr0sty, jast: i'm reading up more. It seems what I am really trying to achieve, which is better peer collaboration with code reviews, is done in git using Signed-off mechanism. | 18:27 |
|
jast
| signoffs don't really have any fixed meaning | 18:27 |
| ← tizbac_ left | 18:28 |
| → troyt joined | 18:28 |
|
jast
| in git they are used by contributors to certify that the code is legally clean | 18:28 |
|
kostja_osipov
| jast: basically I am looking for a controlled way to push into the master branch. | 18:28 |
| → ttelford joined | 18:28 |
| → theoros joined | 18:28 |
| ← theoros left | 18:28 |
| → theoros joined | 18:28 |
|
kostja_osipov
| total publicity of commits is one way to do it. | 18:28 |
|
sgronblo
| kostja_osipov: gitolite with branch level permissions? | 18:28 |
| ← NotreDev left | 18:28 |
|
jast
| kostja_osipov: that sounds like a job for an update or pre-receive hook on the server | 18:28 |
| ← yotaff left | 18:28 |
| → tizbac_ joined | 18:28 |
| ← p3rg2z left | 18:28 |
|
kostja_osipov
| jast: it's a hell to maintain. | 18:29 |
|
jast
| hence my suggestion of gerrit | 18:29 |
| ← goldbergus left | 18:29 |
|
kostja_osipov
| i want a flexible configuration when a team or group or any assignee can be responsible for a given patch | 18:29 |
|
| git is too centralized. | 18:29 |
|
sgronblo
| lol? | 18:29 |
|
jast
| http://code.google.com/p/gerrit/wiki/Background | 18:29 |
| → Elfe joined | 18:29 |
| ← koltroll left | 18:29 |
|
sgronblo
| git is a dvcs = DISTRIBUTED version control system | 18:30 |
|
kostja_osipov
| Google developed Mondrian, a Perforce based code review tool to facilitate peer-review of changes prior to submission to the central code repository | 18:30 |
|
| sgronblo: you can read the above | 18:30 |
|
| central code repository | 18:30 |
|
| in git there is also central code repository. | 18:30 |
|
jast
| not necessarily | 18:30 |
|
zombor
| no there isn't | 18:30 |
|
sgronblo
| nope | 18:30 |
|
kostja_osipov
| not necessarily, but in any real life project there is. | 18:30 |
|
zombor
| only by assignment, not by definition | 18:30 |
|
sgronblo
| by convention there usually is | 18:30 |
|
jast
| you can have several repositories, each of which is deemed authoritative for a different part of the project, for example | 18:30 |
|
zombor
| kostja_osipov: there doesn't ahve to be | 18:31 |
|
| linux doesn't use any central repository | 18:31 |
|
kostja_osipov
| I bloody know i can have many repository | 18:31 |
|
| ies | 18:31 |
|
zombor
| the "central repsository" is Linus's repo | 18:31 |
| ← Elfe_ left | 18:31 |
|
kostja_osipov
| zombor: exactly | 18:31 |
| ← goshawk left | 18:31 |
| → acs joined | 18:31 |
|
kostja_osipov
| most projects have the mainline | 18:31 |
|
zombor
| but it's not a central repository | 18:31 |
|
| by definition | 18:31 |
|
| it's *his* repo | 18:31 |
|
kostja_osipov
| and git seems to have been built around a single person controlling the mainline | 18:31 |
|
zombor
| not at all | 18:31 |
| ← matjas left | 18:31 |
|
sgronblo
| yeah thats not how i see it | 18:32 |
|
PerlJam
| kostja_osipov: I don't see how you can come to that conclusion | 18:32 |
|
zombor
| at our company , many employees control the mainline | 18:32 |
|
jast
| me neither | 18:32 |
|
sgronblo
| its just one possible workflow | 18:32 |
| ChanServ set mode: +v | 18:32 |
|
zombor
| we all have push access to the "central repository" | 18:32 |
|
acs
| test | 18:32 |
|
PerlJam
| kostja_osipov: or perhaps you mean "multiple single people, each controlling their own mainline" | 18:32 |
|
sitaram
| kostja_osipov: it's an *administrative* decision in git, ont a *technical* one | 18:32 |
|
PerlJam
| ? | 18:32 |
|
sitaram
| not* | 18:32 |
|
sgronblo
| anyway, if git is centralized by your definition, I don't think you'll find any "de-centralized" VCS anywhere | 18:32 |
|
zombor
| heh | 18:33 |
| ← hyperair left | 18:33 |
| → goldbergus joined | 18:33 |
| ← mtkd_ left | 18:33 |
|
kostja_osipov
| sgronblo: it's not centralized, just read the exact link I got: http://code.google.com/p/gerrit/wiki/Background it's saying the same i am trying to say | 18:34 |
|
zombor
| i wouldt even know what "de-centraled" would mean :) | 18:34 |
|
fr0sty
| kostja_osipov: if you want people to review each other's code it is a simple as 'git fetch <url> <refspec>; pand then eek at FETCH_HEAD' | 18:34 |
|
sgronblo
| kostja_osipov: that's a link to gerrit, not git | 18:34 |
|
zombor
| kostja_osipov: it says "assumed" | 18:34 |
|
fr0sty
| *and then peek at | 18:34 |
|
zombor
| thats a workflow decision, not a technical one | 18:34 |
|
jast
| gerrit enhances one particular workflow you can use with git | 18:35 |
| → phantomcircuit joined | 18:35 |
|
jast
| in any case, I'd say that with more than, say, three contributors, it gets combinatorially infeasible to not have a single mainline | 18:36 |
|
| git allows you not to have one, but I'm not sure you'll still be sane a few months down the road | 18:37 |
|
kostja_osipov
| hm... damn, if I use stuff like gerrit there is no post-moderation | 18:37 |
|
jast
| post-moderation? | 18:37 |
|
kostja_osipov
| and in most cases a post-push OK is just as fine.. | 18:37 |
|
| jast: some patches do need to be formally approved before a push to the mainline | 18:37 |
|
| zombor doesnt see the problem | 18:37 |
|
kostja_osipov
| others just can be pushed without an approval, but an email needs to go out to the engineer so that he can see what was pushed. | 18:37 |
| ← phantomcircuit left | 18:38 |
|
jast
| as far as I know, gerrit allows you to have things pushed to a side branch and have them merged to mainline when they get approved | 18:38 |
|
| but I haven't used it myself | 18:38 |
| ← flupke_ left | 18:38 |
|
sitaram
| jast: that is how it works; the "side" is spelled "for/" or something that's all | 18:40 |
|
| like "commits-for/master" | 18:40 |
| ← abetaha left | 18:40 |
| → alvaro_o joined | 18:40 |
|
sgronblo
| so it's like branch-level permissions with an e-mail notification system? | 18:41 |
| ← mxmdrone_ left | 18:42 |
| ← shruggar left | 18:42 |
|
jast
| no. it's a review system. | 18:42 |
|
| see it in action here: https://review.source.android.com//#q,status:open,n,z | 18:42 |
| ← MikhX left | 18:43 |
|
sgronblo
| ok so it also has a web app for reviewing, accepting and commenting on patches? | 18:43 |
| ← jds left | 18:43 |
|
sitaram
| yes | 18:44 |
| → abetaha joined | 18:44 |
|
sitaram
| the whole workflow is web based, if I understand right | 18:44 |
| ← alvaro_o left | 18:45 |
| → alvaro_o joined | 18:45 |
| ← werdan7 left | 18:46 |
| → mmc joined | 18:48 |
| ← wuj left | 18:50 |
| ← t0rc left | 18:52 |
| ← jrmuizel left | 18:53 |
| → jrmuizel joined | 18:53 |
| → MikhX joined | 18:53 |
| ← aspotashev left | 18:53 |
| → davidfetter_vmw joined | 18:53 |
| → lhz joined | 18:54 |
| → pantsman joined | 18:55 |
| ← yt_ror left | 18:55 |
| ← nullvariable left | 18:58 |
| ← goldbergus left | 19:01 |
| → bronson joined | 19:01 |
| ← bitkiller left | 19:02 |
| ← nakkor left | 19:02 |
| → bitkiller joined | 19:03 |
| ← curtana left | 19:04 |
| → goldbergus joined | 19:06 |
| → burhan joined | 19:06 |
| → mxmdrone joined | 19:06 |
| → alberto56 joined | 19:08 |
| ← mxmdrone left | 19:08 |
| → matjas joined | 19:09 |
| → ph^ joined | 19:09 |
| ← ereslibre left | 19:16 |
| ← doener left | 19:16 |
| → flaguy48 joined | 19:18 |
| ← rgr left | 19:20 |
| ← psankar left | 19:21 |
| → nakkor joined | 19:21 |
| → sako joined | 19:22 |
|
sako
| how do i compare the HEAD version of a file to an older commit? | 19:23 |
|
| im trying git diff HEAD commitSHA file/name | 19:23 |
|
IslandUsurper
| git dif <commit>..HEAD -- file/name | 19:23 |
|
sako
| thanks | 19:24 |
|
IslandUsurper
| though...I guess I'm surprised your version didn't work | 19:24 |
| → xtagon joined | 19:24 |
|
sako
| i tried that and its comparing to /dev/null | 19:25 |
|
| ---- or ++++ are giving me /dev/null?/? | 19:25 |
|
| something is not right :/ | 19:25 |
| ← nakkor left | 19:25 |
|
thiago_home
| did the file exist in both commits? | 19:25 |
|
sako
| yea | 19:26 |
|
| i found it via gitk | 19:26 |
|
IslandUsurper
| named the same in both? | 19:26 |
|
sako
| ya, hasnt changed hmm | 19:26 |
|
| ok nvm | 19:27 |
|
| it was named different | 19:27 |
|
| sorry im helping another developer... just double checked | 19:27 |
|
| how would i handle the name change? | 19:27 |
| → normanrichards joined | 19:27 |
|
albel727
| sako: not sure, but try "git diff HEAD:<filename1> <commitSHA>:<filename2>" | 19:27 |
|
sako
| file/name1..file/name2? | 19:27 |
|
| oh i see | 19:27 |
| → scompt joined | 19:28 |
| → hobodave_ joined | 19:28 |
|
IslandUsurper
| if that doesn't work, try -M | 19:29 |
| → fedesilva joined | 19:29 |
|
albel727
| sako: or rather, the other way round =) i.e <commitSHA>:.. first, HEAD:... - second. | 19:29 |
| → foocraft joined | 19:30 |
|
sako
| that worked :) | 19:30 |
|
| thanks alot | 19:30 |
| ← hobodave left | 19:30 |
|
albel727
| sako: yw =) | 19:31 |
|
scompt
| how do I create a copy of repository B inside of repository A? | 19:31 |
| → psoo joined | 19:31 |
|
albel727
| scompt: man git-submodule | 19:31 |
|
jast
| scompt: the 'git-submodule' manpage can be found at http://git.or.cz/man/git-submodule [automatic message] | 19:31 |
|
scompt
| I don't want to use clone because then the remote is still repo B | 19:31 |
|
| I don't want to use submodules because then the remote is still repo B, right? | 19:31 |
|
| repo B is a 'skeleton' of a project that I want to make a part of repo A | 19:32 |
| → fedesilva_ joined | 19:32 |
|
scompt
| something 'svn export repoB' and then adding all of the exported files to repo A | 19:32 |
| ← hobodave_ left | 19:33 |
| → hobodave joined | 19:33 |
|
albel727
| uhm, either I don't get your "remote is still repo B" line, or I don't see, what can be your problem with that. if you want just a copy, then make a copy. | 19:33 |
| → shennyg joined | 19:34 |
|
scompt
| albel727: I think I just want to make a copy, is there a way to do that with git? or should I clone it and then delete the .git? | 19:34 |
| ← ricky left | 19:35 |
| ← fedesilva left | 19:35 |
| fedesilva_ → fedesilva | 19:35 |
|
albel727
| scompt: well, git doesn't have a very convenient export unfortunately. you can either make a shallow clone (git clone --depth=1 <url>), or use "git archive --remote=<url> master", to get a tar file, which you'll then need to untar (there's an option for zip, iirc). | 19:36 |
|
scompt
| albel727: k, thanks, I'll give that a shot | 19:37 |
|
albel727
| scompt: "git archive --remote=<url> --output=<dest.tar> master", to be precise. "git archive --format=zip --remote=<url> --output=<dest.zip> master", for zip format. | 19:38 |
| → Rickardo1 joined | 19:38 |
|
albel727
| you're welcome. | 19:38 |
| → napster_123 joined | 19:38 |
| → letas joined | 19:38 |
| ← napster_123 left | 19:38 |
| ← scompt left | 19:39 |
| → nullvariable joined | 19:40 |
| ← tlonim left | 19:42 |
| ← psoo left | 19:44 |
| → EvanR-work joined | 19:45 |
|
EvanR-work
| is there a way to delete commits from the history of your branch? | 19:46 |
| → andyburke joined | 19:46 |
| ← marcob left | 19:46 |
|
albel727
| EvanR-work: you mean, besides git rebase? | 19:46 |
|
EvanR-work
| how would you use rebase to accomplish this? | 19:46 |
| ← AAA_awright left | 19:46 |
| ← ph^ left | 19:47 |
|
albel727
| EvanR-work: to delete a commit from branch: "git rebase --onto <commit>~1 <commit> <branch>" | 19:47 |
| → ph^ joined | 19:47 |
|
EvanR-work
| so far only came up with branch at the delete point and cherry pick the rest one by one | 19:47 |
|
| ok, checking that comman | 19:48 |
|
albel727
| EvanR-work: you need that on a big scale? why not git rebase --interactive, then? | 19:48 |
|
EvanR-work
| interactive lets you squash | 19:48 |
|
| but also delete? | 19:48 |
|
albel727
| EvanR-work: ...and delete altogether | 19:48 |
|
| yep | 19:48 |
|
EvanR-work
| ah | 19:48 |
|
albel727
| just remove a line with commit | 19:48 |
|
EvanR-work
| great | 19:49 |
|
albel727
| EvanR-work: but remember, that rebasing this way is dangerous. you not only remove a commit, you remove whatever changes it did introduce. | 19:49 |
| rayners → rayners_afk | 19:49 |
|
albel727
| EvanR-work: if you want to remove a commit, but retain the changes it introduces, squash is the way. filter-branch is the another way. | 19:50 |
| → Mannequin1 joined | 19:50 |
| → gshank joined | 19:50 |
|
EvanR-work
| what exactly would be the command? | 19:50 |
|
albel727
| EvanR-work: for? | 19:50 |
|
EvanR-work
| interactive | 19:50 |
|
| im not rebasing onto anything | 19:51 |
| ← Mannequin left | 19:51 |
|
albel727
| EvanR-work: basically, just "gir rebase --interactive <oldest commit you want to delete>~1". and then remove the lines for commits you want to delete. | 19:51 |
|
| EvanR-work: that works for current branch, ofc | 19:52 |
|
EvanR-work
| ok | 19:52 |
|
| whats ~1 ? | 19:52 |
|
albel727
| s/gir/git/ | 19:52 |
|
| EvanR-work: one commit back in history. | 19:52 |
|
SethRobertson
| EvanR-work: man git-parse | 19:52 |
|
EvanR-work
| thats not ^1 ? | 19:52 |
|
SethRobertson
| jast-bot? | 19:53 |
|
EvanR-work
| man git-rev-parse | 19:53 |
|
jast
| EvanR-work: the 'git-rev-parse' manpage can be found at http://git.or.cz/man/git-rev-parse [automatic message] | 19:53 |
|
SethRobertson
| Ah yes, thanks | 19:53 |
|
parasti
| commit^n syntax specifies parents, commit~n syntax specifies ancestors | 19:53 |
|
albel727
| EvanR-work: well, in this case it coincides with ~1, but generally - no. for instance, ^2 is not the same as ~2. ^2 - is the second parent. ~2 is the second older commit. the man says the rest. | 19:54 |
|
EvanR-work
| oh so its time based rather than parent based? | 19:54 |
|
albel727
| EvanR-work: yeah | 19:54 |
|
EvanR-work
| that sounds bad | 19:54 |
|
parasti
| no | 19:54 |
|
albel727
| ? | 19:54 |
|
EvanR-work
| well ill tell him this command and then | 19:55 |
|
| understand it | 19:55 |
|
albel727
| EvanR-work: ah. no, not in the sense you imagine. | 19:55 |
|
| EvanR-work: what I meant to say, is that ~2 is the first parent of the first parent. | 19:55 |
| ← ph^ left | 19:55 |
|
jast
| whoops, small bug in the script. fixed. | 19:55 |
|
albel727
| EvanR-work: no time involved whatsoever. | 19:55 |
| → ph^ joined | 19:55 |
|
EvanR-work
| oh ok | 19:56 |
| ← spaceonline left | 19:56 |
|
EvanR-work
| ^ lets you specify which parent | 19:56 |
|
| if theres more than one | 19:56 |
|
albel727
| EvanR-work: yeah. | 19:56 |
|
SethRobertson
| True only for merges, and your intuition on which parent is which may be wrong in the case of fast-forwarding | 19:56 |
|
albel727
| since when we have several parents after fast-forwarding? =) | 19:58 |
| → carutsu joined | 19:58 |
|
albel727
| a single parent doesn't require much intuition, does it? =) | 19:58 |
|
EvanR-work
| its possible to fast forward and have multiparents | 19:58 |
|
| since the latest commit could be a merge | 19:58 |
|
albel727
| haha. you got me. | 19:59 |
| ← petercoulton left | 19:59 |
|
SethRobertson
| Due to fast-forward merges you can have situations where you have multiple branches (A and B, eg) and while you "know" that you branched B from A and later merged it back in, git believes that the both branches A&B were on the human-knowledge-A branch of development, or vis-versa, both A&B were on the human-knowledge-B branch of development. It is very annoying | 20:00 |
| → petercoulton joined | 20:00 |
|
SethRobertson
| I have a recipe which will recreate this annoying situation. If you disable ff-merges it will never happen. | 20:01 |
| ← saschpe left | 20:01 |
|
SethRobertson
| I wish I could disable fast-forward manually initiated merges (e.g. always have -no-ff on the `git merge` command). Obviously I could create an alias, but... | 20:02 |
| → pedrobelo joined | 20:03 |
|
albel727
| SethRobertson: hmm, there might be a config key for that... let me look. | 20:03 |
|
SethRobertson
| I'd be happy to learn that. I've looked (well, searched for "fast") | 20:03 |
| ← ph^ left | 20:04 |
| ← nullvariable left | 20:05 |
| ← fedesilva left | 20:05 |
| ← _Vi left | 20:05 |
| → ph^ joined | 20:05 |
| → _Vi joined | 20:06 |
| → nullvariable joined | 20:06 |
|
albel727
| SethRobertson: well, at least there is "branch.<name>.mergeoptions" which allows to specify default options for merges into specified branch. let me look some more, to see if there is a global setting... | 20:07 |
|
mnemoc
| hi, I have 4 repositories imported from CVS making A A/B A/C A/D which I turned into a single repository using git-filter-branch and then pulling. how can I now reorder this super repository by date? | 20:08 |
| → bhowmisu joined | 20:09 |
| ← babusri left | 20:09 |
|
SethRobertson
| `gitk --date-order`? | 20:09 |
|
mnemoc
| SethRobertson: in the history | 20:09 |
| → Evious joined | 20:10 |
|
SethRobertson
| That shows you your history in date order | 20:10 |
| ← d2dchat left | 20:10 |
|
SethRobertson
| Perhaps I am missing something | 20:10 |
|
mnemoc
| yes, but i don't want to be shown in order, i want it to _be_ in order :) | 20:10 |
|
| i don't see something like --date-order in git-filter-branch help | 20:11 |
| → darkredandyellow joined | 20:12 |
|
albel727
| mnemoc: first I want you to confirm, that gitk --date-order, indeed shows commits in the desired order. | 20:12 |
| ← bhowmisu left | 20:12 |
| → jelmer joined | 20:12 |
|
mnemoc
| ow... i got the merge as single commit :'( | 20:13 |
|
albel727
| SethRobertson: I'm afraid, that there are no global settings for git pull/merge. sorry =/ | 20:13 |
| jelmer → Guest67633 | 20:13 |
|
SethRobertson
| albel727: Thanks for looking | 20:13 |
| → WebDragon joined | 20:13 |
| ← ph^ left | 20:14 |
| → detrate` joined | 20:15 |
|
detrate`
| can I undo a merge? | 20:15 |
| → ph^ joined | 20:15 |
|
SethRobertson
| detrate`: have you pushed? | 20:15 |
| ← brntbeer left | 20:15 |
| → Eaven joined | 20:15 |
|
detrate`
| no | 20:15 |
| ← brosner left | 20:16 |
| → nakkor joined | 20:16 |
| ← ph^ left | 20:16 |
|
SethRobertson
| detrate`: Then yes. Step one, take a backup of your repo (e.g. git clone or whatever). Step two: `git reset ORIG_HEAD`. See `man git-reflog` if you have done merges since then | 20:16 |
|
jast
| detrate`: the 'git-reflog' manpage can be found at http://git.or.cz/man/git-reflog [automatic message] | 20:16 |
|
albel727
| mnemoc: huh? sorry I don't get your last remark about single commit. what's the problem with having a merge as a single commit? (and how do you imagine a merge consisting from several commits?) | 20:17 |
| → ph^ joined | 20:17 |
|
cirwin
| SethRobertson: why do you advise taking a backup at that point? (just curious) | 20:17 |
|
albel727
| s/consisting from/consisting of/ | 20:17 |
| ← bentob0x left | 20:17 |
|
mnemoc
| albel727: there is zero conflict, I need it as I would cherry-pick every commit from the other respositories | 20:17 |
|
detrate`
| okey thank you SethRobertson and jast | 20:18 |
|
mnemoc
| albel727: instead of a "merge" | 20:18 |
|
SethRobertson
| cirwin: I always recommend newbees to take backups when running `git reset` | 20:18 |
| → schambers joined | 20:18 |
|
cirwin
| fair enough | 20:18 |
|
SethRobertson
| and filter-branch | 20:19 |
|
albel727
| mnemoc: hmm, that was my another guess. let me think... | 20:19 |
|
SethRobertson
| isn't that a job for rebase? | 20:20 |
| ← MattDiPasquale left | 20:20 |
|
SethRobertson
| Unless you need the donor branch to be unmolested | 20:20 |
|
mnemoc
| SethRobertson: to me? | 20:20 |
|
SethRobertson
| and/or albel727 | 20:21 |
|
albel727
| SethRobertson: hmm, that is actually a good idea! if rebase understands inserting commit lines, that is. | 20:22 |
|
mnemoc
| the original repository was made of 4 "virtual modules" ... I want the resulting git to reflect the work that was done at the same time in the different modules | 20:22 |
|
| the interim git repositories are irrelevant, all with get trashed | 20:22 |
|
albel727
| ok, I'm testing the git rebase approach. give me some time.... | 20:23 |
|
SethRobertson
| I wonder if sending it through `git-fast-export` and `git-fast-import` would do something useful | 20:23 |
|
| Perhaps with a sort in the pipe | 20:24 |
| → khmarbaise joined | 20:24 |
| ← TorstenB left | 20:24 |
|
mnemoc
| SethRobertson: that was my initial plan... but failed to get them working | 20:25 |
|
albel727
| SethRobertson: I don't think so. unless you know an easy way to take 4 fast-streams and reorder commits in them according to date order. | 20:25 |
|
mnemoc
| it can be done in two steps | 20:25 |
|
| first taking all commit from the other repositories, and later reorder the world by commit date | 20:25 |
|
SethRobertson
| He already has a unified repo, no? He just needs to `git fast-export` and then break it up into commit objects, sort, and then reassemble. | 20:25 |
| ← andyburke left | 20:26 |
|
mnemoc
| no, I de-unified it | 20:26 |
|
| because I got "merges" | 20:26 |
| ← hobodave left | 20:26 |
| → MattDiPasquale joined | 20:26 |
| → ceez joined | 20:26 |
|
SethRobertson
| Personally I just left my CVS repos as separate git repos and have a meta-repo-manager script, but it does seem like this would be a useful feature. | 20:27 |
| → hobodave joined | 20:27 |
|
albel727
| mnemoc: ok, a question. is what you have now a single merge (or maybe 3 of them) on top of your history, that unifies 4 development lines? | 20:28 |
|
mnemoc
| had that until git reset HEAD^3; git reset --hard | 20:28 |
|
albel727
| I see. | 20:29 |
| ← mmc left | 20:29 |
| → andyburke joined | 20:29 |
|
mnemoc
| so I have 4 repositories, and the content of the 3 sub repositories moved into a subdirectory | 20:29 |
| ← khmarbaise left | 20:29 |
|
mnemoc
| A/B/.git -> A/B/{.git,B/} | 20:29 |
| → johnw joined | 20:29 |
| ← johnw left | 20:30 |
| → rryouumaa joined | 20:30 |
|
albel727
| mnemoc: do files in those subrepos, reside in respective subfolders (e.g A/B/readme.txt)? | 20:30 |
| → Torsten joined | 20:30 |
|
mnemoc
| SethRobertson: tried keeping submodules, but the very first time a coworker used it got a file from A/B commited into A messing up the world | 20:30 |
| → ereslibre joined | 20:31 |
|
mnemoc
| albel727: yes, they are ready to "collapse" into a single repo | 20:31 |
|
albel727
| mnemoc: and they were ready to do so from the very start of history? or did you just do git mv at the last moment? | 20:32 |
|
mnemoc
| albel727: since day one different cvs submodules, no conflict at all | 20:32 |
| → chrischambers joined | 20:32 |
| Guest91296 → Whtiger | 20:33 |
| → khmarbaise joined | 20:33 |
| → ereslibre_laptop joined | 20:33 |
|
mnemoc
| A has no reference to B,C or D in it's history. all hidden by cvs | 20:33 |
| ← ereslibre left | 20:33 |
|
SethRobertson
| mnemoc: I don't use submodules, I have a different script. However, if you can get a unified repo (I cannot) that is the superior solution | 20:33 |
| ereslibre_laptop → ereslibre | 20:33 |
| → galderz joined | 20:33 |
|
albel727
| SethRobertson: ok, after asking my questions, I conclude, that your approach might indeed work. so, do you have an easy way to sort commits by date in a fast-import stream? | 20:34 |
| → hasrb joined | 20:35 |
|
mnemoc
| git fast-export ..master | wc -l | 20:35 |
|
| 3 | 20:35 |
| → rolando joined | 20:35 |
|
mnemoc
| ^---- snif snif snif | 20:35 |
| ← Evious left | 20:35 |
|
albel727
| SethRobertson: alternatively, I suggest using git rebase --interactive with output, generated by git log --oneline | 20:35 |
| → yt_ror joined | 20:36 |
|
mnemoc
| albel727: that's indeed a nice idea after I get the repositories "collapsed" into one (without merges) | 20:36 |
|
albel727
| "git log --oneline --date-order", to be precise. and we need to get each line prefixed with "pick " | 20:36 |
|
mnemoc
| sed s,^,pick , | 20:37 |
|
SethRobertson
| albel727/mnemoc: I was playing with multi-repos and git-fast-*port and now understand the scope of the problem. It isn't just that these need to be date ordered, you actually need to synthesize a combined tree on each commit. | 20:37 |
|
mnemoc
| sed "s,^,pick ," | 20:37 |
| → simosx_ joined | 20:37 |
| ← yt_ror left | 20:37 |
| → Evious joined | 20:37 |
| ← sonnym left | 20:38 |
| ← gusnan left | 20:38 |
|
albel727
| mnemoc: thing is, you actually need to run that rebase of mine on a repo with merges, and hopefully, it will provide a single branch without them. but that might take one hell of a time. | 20:38 |
| ← simosx left | 20:38 |
|
mnemoc
| uhm | 20:39 |
|
| i'll try adding a sub repositories as remotes and cherry-pick in a loop.... maybe i'm lucky | 20:39 |
|
SethRobertson
| Do you have multiple branches? | 20:40 |
|
mnemoc
| no, only one relevant | 20:40 |
|
| i can tag manually after finishing the dance | 20:41 |
|
SethRobertson
| That is very good for you | 20:41 |
|
mnemoc
| it's good to have poor development practices sometime :p | 20:41 |
| → johnw joined | 20:42 |
|
johnw
| sitaram: ping | 20:42 |
| → programble joined | 20:43 |
| → dl9pf_ joined | 20:43 |
| ← dl9pf left | 20:43 |
|
ScottO_
| what is the procedure for updating a feature branch to the master? | 20:44 |
|
helo
| i used a series of 'git mv ... ...' to move some files around, and then stashed the changes, and applied... now git status shows all of the destination files as 'new', instead of renamed from their previous location. will this be corrected when i actually commit? | 20:44 |
|
albel727
| SethRobertson: mnemoc: well, actually we can also use a combination of git filter-branch --tree-filter, with "git checkout -M 'older revision on another branch'" and "git-rev-list -1 --before GIT_AUTHOR_DATE". or some presumably faster alternative of --index-filter and git-read-tree -M... | 20:44 |
|
ScottO_
| helo: i think it does that when you add them before the commit | 20:44 |
| → stringoO joined | 20:45 |
|
ScottO_
| helo: when it notices that the file has same file has been removed from one location and added to another | 20:45 |
| ← sh1mmer left | 20:45 |
|
SethRobertson
| albel727: mnemoc: If someone gets a script/recipe working, they should post it to the git mailing list | 20:45 |
|
albel727
| SethRobertson: understood. | 20:46 |
| → dharrigan joined | 20:46 |
| ← dharrigan left | 20:46 |
| → dharrigan joined | 20:46 |
|
SethRobertson
| ScottO_: it depends. you can `git rebase master` or `git merge master` depending how you feel. Other people just like to leave it stale and resolve the problems on merge-back | 20:46 |
|
ScottO_
| well the branch has some changes that arent in master | 20:47 |
|
| should merging master into the feature branch be good enough? | 20:47 |
| ← goldbergus left | 20:47 |
|
ScottO_
| SethRobertson: ok thanks, i guess ill merge master back into the feature branch | 20:47 |
|
SethRobertson
| ScottO_: Yes. As long as you `git checkout feature` you can `git rebase master` or `git merge master` without problem | 20:47 |
| → slide joined | 20:48 |
|
SethRobertson
| I'd probably rebase, but that is just me. | 20:48 |
|
ScottO_
| rebase will make the commits on the branch get lost right? | 20:48 |
|
mnemoc
| albel727: your elegant proposal is far beyond my skills to implement :( | 20:48 |
|
| ScottO_: rebase puts your commits on top of the other | 20:48 |
|
ScottO_
| ah so rebase grabs master and then reapplies the commits on top of that | 20:49 |
|
mnemoc
| yes | 20:49 |
| simosx_ → simosx | 20:49 |
|
ScottO_
| cool tat might be better in the long run | 20:49 |
|
| acs loves git grep <options> file/s | 20:49 |
| → petran joined | 20:50 |
| → FabianB__ joined | 20:50 |
| ← rolando left | 20:51 |
| ← FabianB_ left | 20:51 |
|
sitaram
| johnw: pong; but it's 2:20am, and my night-bird days are long gone. If it's a quick question, fine | 20:51 |
|
| mnemoc loves git's power to mangle history :) | 20:51 |
|
ScottO_
| is there any automated way to get tag numbers isnerted into every file as a comment? | 20:51 |
|
SethRobertson
| ScottO_ What is a "tag number"? | 20:51 |
|
ScottO_
| like for version numbers | 20:51 |
|
| which i assume is usualy done with tags | 20:52 |
| → imMute joined | 20:52 |
|
SethRobertson
| ScottO_: man gitattributes and look for $Id$ | 20:52 |
|
jast
| SethRobertson: the 'gitattributes' manpage can be found at http://git.or.cz/man/gitattributes [automatic message] | 20:52 |
| → goldbergus joined | 20:53 |
|
SethRobertson
| Also smudge and clean | 20:53 |
|
| Generally people don't bother with git. | 20:53 |
| → kylehayes__ joined | 20:53 |
|
ScottO_
| why not | 20:54 |
|
SethRobertson
| Because git's SHA checksum of every file makes file identification pretty easy. | 20:54 |
| → dark joined | 20:54 |
| ← chrisshattuck left | 20:54 |
| → peterjmag joined | 20:54 |
|
ScottO_
| right now i have no clue which commit i last updated the production server to | 20:55 |
|
| i could find out with some effort, but might be an opportunity to change the way things are done to make it easier | 20:55 |
|
dark
| I was in a feature branch, and I needed to work on another branch. I did git stash, git checkout anotherbranch, and then did the work. I then did git stash pop to go back, but it applied my stash *on top of anotherbranch*, not the branch I were when I did git stash (I thought it would first do git checkout ..) | 20:55 |
|
| how to revert the stash, then go to the another branch and apply it?.. | 20:55 |
| ← kylehayes left | 20:56 |
| kylehayes__ → kylehayes | 20:56 |
| kylehayes → 30BAAGZB3 | 20:56 |
|
dark
| simply git stash, git checkout previousbranch, git stash pop? | 20:56 |
| → aaron01 joined | 20:56 |
|
peterjmag
| Hello all! I'm looking to set up colored git output on a coworker's OSX 10.5 machine. I have it on mine, but I believe it was automatically installed by the "repo" script when I was messing around with the android source code (following instructions at http://source.android.com/source/git-repo.html ). How can I set up colored git output manually? Rather, what does repo do to git to enable colored output in Terminal.app? | 20:56 |
|
SethRobertson
| ScottO_: People often have the server with a .git directory on it which you can directly query to find the current location | 20:56 |
|
ScottO_
| yeah maybe i need to have git installed on the roduction server | 20:57 |
|
| but my git repo isnt accessible to the production server | 20:57 |
|
aaron01
| How do I update refs/remotes/origin/master. I tried to fetch origin master, but the ref isn't being updated? | 20:57 |
|
cbreak
| peterjmag: man git-config | 20:58 |
|
jast
| peterjmag: the 'git-config' manpage can be found at http://git.or.cz/man/git-config [automatic message] | 20:58 |
|
SethRobertson
| peterjmag: man git-config Search for color.ui and friends | 20:58 |
|
jast
| peterjmag: the 'git-config' manpage can be found at http://git.or.cz/man/git-config [automatic message] | 20:58 |
|
cbreak
| there are a few color variables | 20:58 |
|
| also, take a look at gitx | 20:58 |
|
SethRobertson
| ScottO_: You can always blow the .git directory over there when you blow everything else | 20:58 |
|
ScottO_
| true | 20:59 |
|
mnemoc
| git log --oneline --date-order doesn't work :( | 20:59 |
| ← zomgbie left | 20:59 |
|
peterjmag
| cbreak: SethRobertson: ah, thanks! I was looking in the wrong config file, but now I can see the "[color] ui = auto" line | 20:59 |
|
SethRobertson
| ScottO_: Or just `git describe > .checkout-description` and send that one file | 20:59 |
|
mnemoc
| it seems to use commit date instead of the actual date | 20:59 |
|
dark
| actually git checkout previousbranch alone did the job (maybe because I just added an untracked file, and thus git stash was unnecessary?) | 20:59 |
|
| but anyway i would like to know how to undo git stash pop.. | 21:00 |
| ← goldbergus left | 21:00 |
| → basicxman joined | 21:00 |
| ← galderz left | 21:01 |
| → Aleks_Minton joined | 21:02 |
| ← Guest67633 left | 21:02 |
| ← Aleks_Minton left | 21:02 |
| → gusnan joined | 21:05 |
| → goldbergus joined | 21:05 |
|
albel727
| mnemoc: --yeah, --date-order probably uses commit timestamp. you can make the commit date to coincide with patch date by git filter-branch --environment-filter and something like "set GIT_COMMITTER_DATE=GIT_AUTHOR_DATE" for the actual filter. | 21:06 |
|
mnemoc
| oh, nice trick | 21:07 |
|
dark
| another question: i have two branches, stable and devel. i needed to add debug something on stable and wanted to port the result to devel. i commited, then got a patch with git format-patch, then deleted the commit with git reset --hard HEAD^. applied it on devel, then merged devel on stable. is this procedure reasonable? | 21:07 |
|
| s/add debug/debug/ | 21:08 |
| → drizzd_ joined | 21:08 |
|
fr0sty
| dark could have stashed the change and changed branches, git stash pop and then committed | 21:09 |
|
| you could have cherry-picked the commit from stable to devel and reset stable's head | 21:10 |
|
dark
| but the stable server lives on a different account o.o after merge into stable, i needed to go to that account and do a git pull | 21:10 |
|
fr0sty
| you could have created a teporary branch , commited, and done a rebase --onto devel HEAD~ | 21:11 |
|
dark
| the stable server does not hold devel branch at all | 21:11 |
| ← tvw left | 21:12 |
|
aaron01
| I'm trying to do the following: /opt/foo is a clone of a feature branch in /opt/main. I'm trying to check if there are changes in the master branch in /opt/main that are not contained in the feature branch in /opt/foo. So something like: git rev-list HEAD..refs/remotes/origin/master. What I'm not sure of is how to update the rev-list for refs/remotes/origin/master within /opt/foo. If that makes any sense... | 21:12 |
| → mmc joined | 21:12 |
| ← drizzd left | 21:12 |
|
fr0sty
| dark: where were you doing your work? | 21:12 |
|
dark
| stable | 21:12 |
|
fr0sty
| what server | 21:13 |
|
| what user | 21:13 |
|
dark
| user ts, on a different computer | 21:13 |
|
| in order to transmit some commit to devel, i sent a patch.. what i could do is to have the devel branch at the stable server, then do a git pull from the devel machine | 21:13 |
|
fr0sty
| if you are not on the same machine, and you won't add additional remotes and fetch other branches then passing around patches is pretty much your only option. | 21:14 |
|
dark
| but it seemed actually more awkward, not less | 21:14 |
|
cirwin
| aaron01: you want to fetch from /opt/main (I think) | 21:14 |
| ← Unknown[NF] left | 21:14 |
| → alpheus joined | 21:14 |
| ← peterjmag left | 21:15 |
|
fr0sty
| if you have the devel branch on your stable server so that you can commit to the devel branch on that machine you can push/pull to/from another machine without needing all this patch business. | 21:15 |
|
ScottO_
| any reason why this would be giving me all of the history instead of just since the commit? | 21:15 |
|
| git log --name-only 41b117fbe4c8b00b464153c215116cb34205a076 | 21:15 |
|
albel727
| mnemoc: anyway, what do you need this log for? you can achieve a log totally ordered by date in some other way, eg something like git log --format="%at %h %s" | sort | 21:15 |
| → aisipos joined | 21:15 |
|
bnovc
| whats the most effective way to find the last tag on the branch that I'm on | 21:15 |
|
slide
| I have a repo where I need to add my own project files in its directory structure but Id like to keep my files seperate, is there any way to do that? | 21:15 |
|
fr0sty
| Scott0: what were you expecting to see? | 21:15 |
|
aaron01
| cirwin: doing a: git fetch origin master only updates FETCH_HEAD (with the correct sha1), and doing: fetch --update-head-ok origin master, doesn't update the ref either. | 21:15 |
|
ScottO_
| i swear id id this the other day correctly, but the history for that disappeared | 21:15 |
| ← yunosh left | 21:15 |
|
fr0sty
| bnovc: man git-describe | 21:16 |
|
jast
| bnovc: the 'git-describe' manpage can be found at http://git.or.cz/man/git-describe [automatic message] | 21:16 |
|
ScottO_
| fr0sty: list of files changed since commit | 21:16 |
|
bnovc
| fr0sty: but that gives other stuff too and doesn't have a switch just for the tag (or maybe it does? I'll re-read) | 21:16 |
|
ScottO_
| fr0sty: just the filenames themselves | 21:16 |
|
fr0sty
| slide: do you want them tracked or not? | 21:16 |
| → chrisshattuck joined | 21:16 |
|
fr0sty
| ScottO_: you need commitid.. if you want 'since' behavior | 21:16 |
|
mnemoc
| albel727: if i can fix the order once, it will just work everytime in future, without any wrapping. so it's a kind of "investment" | 21:17 |
|
bnovc
| ya, it seems to always suffix it | 21:17 |
|
| I mean I could awk that part off but it seems nasty | 21:17 |
|
ScottO_
| fr0sty: commitid? | 21:17 |
|
bnovc
| or I guess sed because the tag could have a dash | 21:17 |
|
slide
| fr0sty, the other repo? I guess I could track the original repo, but how would I then import changes from it where my files wouldnt be? | 21:17 |
|
fr0sty
| Scotto_: do you want a list of files from each commit or just the endpoints. | 21:17 |
|
ScottO_
| endpoints? | 21:17 |
|
albel727
| mnemoc: this --environment-filter "fix" will disappear upon next filter-branch or cherry-pick anyway, so you might as well not bother yet. | 21:18 |
| ← __name__ left | 21:18 |
|
bnovc
| ah, --abbrev=0 | 21:18 |
|
fr0sty
| ScottO_: commit and HEAD or every commit in between. | 21:18 |
|
dark
| but, the question was more like, is this reasonable, to expect all new code to come from devel, and make sure all commits on stable are just merges? if the code actually came when working on stable, one could make an exception and merge stable onto devel | 21:18 |
|
ScottO_
| i just need a list of all the fiels that had a modification and it could span multiple commits, but i dont want them to be seperated by commit | 21:18 |
|
dark
| but i don't know if the history would become too weird | 21:18 |
|
fr0sty
| dark: better to create feature branches off of stable, merge them to devel and then merge devel back into stable. | 21:19 |
|
| less hacky. | 21:19 |
|
cirwin
| aaron01: I was under the impression that fetch gave you more than just an updated FETCH_HEAD | 21:19 |
|
mnemoc
| albel727: true, i'll have to do it again after getting rid of cvs | 21:19 |
|
fr0sty
| slide: I don't understand what you are trying to do. | 21:19 |
|
dark
| hmm. and them, transmit them to the devel machine using git fetch? | 21:19 |
|
| then* | 21:19 |
| → notjohn joined | 21:20 |
|
ScottO_
| fr0sty: so i guess the short answer is every file modification going from commit to HEAD | 21:20 |
|
albel727
| mnemoc: well, just remember, that filter-branch allows specifying several filters simultaneously, so if you wont forget to add that --environment-filter to whatever else you're filtering for, everything will be ok. | 21:21 |
| → zomgbie joined | 21:21 |
| → WebDragon|laptop joined | 21:21 |
|
ScottO_
| i swore it was git log --name-only but that spits out every file modification since the very first commit | 21:21 |
|
| rather than starting at the commit provided | 21:22 |
| ← WebDragon left | 21:22 |
| WebDragon|laptop → WebDragon | 21:22 |
|
fr0sty
| ScottO_: you need the two dots | 21:22 |
|
| are you thinking about git-whatchanged? | 21:22 |
|
ScottO_
| did that, it returns the right span of data, but groups them by commit | 21:23 |
|
| maybe.. | 21:23 |
|
aaron01
| cirwin: hmm. looks like explicitly specifying the ref is what was wrong. Simple 'git fetch' updated properly. | 21:24 |
|
cirwin
| interesting | 21:25 |
|
ScottO_
| fr0sty: but apprntly you cant use the commit hash with whatchanged | 21:25 |
|
dark
| aaron01, don't you need to have the ref on .git/config? | 21:25 |
|
ScottO_
| n/m | 21:25 |
|
slide
| fr0sty, I have a git repo that is owned and controlled by other people. My project files are intertwined in it. If I create my own repo with the original repo files and my new stuff can I then sync the original repo files without harming/removing my own? | 21:25 |
| → amackera_away joined | 21:25 |
| amackera_away → amackera | 21:25 |
|
ScottO_
| but it still returns the same data as git log --name-only | 21:25 |
|
fr0sty
| slide: define 'sync' | 21:25 |
|
slide
| fr0sty, pull down their changes in my repo | 21:26 |
|
dark
| here [remote ".."] enables me to use git fetch .. | 21:26 |
|
albel727
| mnemoc: I'm afraid I lied. filter-branch will preserve dates, unless instructed specifically. so, it's only cherry-pick that might be a problem. | 21:26 |
| → blackxored joined | 21:26 |
|
blackxored
| I always forget this | 21:26 |
|
| how to setup an existing branch to track a remote branch | 21:26 |
|
fr0sty
| ScottO_: git diff --name-only <commit> | 21:27 |
|
ScottO_
| fr0sty: maybe im thinking of git diff | 21:27 |
|
| lol | 21:27 |
| ← shennyg left | 21:27 |
|
fr0sty
| slide | 21:27 |
| → rgr joined | 21:27 |
|
ScottO_
| :D thanks though | 21:27 |
|
cbreak
| Blackguard: man git-branch, search for -u | 21:27 |
|
jast
| Blackguard: the 'git-branch' manpage can be found at http://git.or.cz/man/git-branch [automatic message] | 21:27 |
|
cbreak
| sorry, blackxored | 21:27 |
|
fr0sty
| slide: just create a private branch and do you work there ane then merge upstream changes in, or rebase your changes on top of theirs. | 21:27 |
|
rgr
| just need to double check. I have just made substantial changes to my code base. I have not checked it in. I forgot to branch before hand. Do I need to stash before making the new branch and then restore the stash after changing to the new branch or can I simply branch and then check in? Whats best procedure? | 21:28 |
|
esc
| whats the current trend in Terminology, Index, Staging Area, Cache or just Stage? | 21:28 |
| ← boombatower left | 21:28 |
| ← _Vi left | 21:28 |
| → shennyg joined | 21:28 |
|
blackxored
| anyone? | 21:29 |
|
fr0sty
| cirwin: aaron01: 'git fetch' or 'git fetch <remotename>' will update remote tracking branches, but 'git fetch <remote> <refspec>' will only update FETCH_HEAD | 21:29 |
|
cbreak
| rgr: just create it | 21:29 |
|
amackera
| hey all, any ideas about a git svn error: "Unable to determine upstream SVN information from working tree history" | 21:29 |
|
cbreak
| blackxored: just learn to read | 21:29 |
|
blackxored
| cbreak, --set-upstream doesn't work | 21:29 |
|
fr0sty
| esc: all of them, depending on who you talk to. | 21:29 |
|
cbreak
| sure it does. | 21:29 |
|
blackxored
| i want to track a remote branch from a local branch | 21:29 |
|
fr0sty
| 'index' is still the canonical name as far as I know. | 21:29 |
|
blackxored
| cbreak, you pass <remote> <local> to it right ;) | 21:29 |
|
| ??/ | 21:29 |
|
cbreak
| no | 21:30 |
|
blackxored
| or local remote | 21:30 |
|
esc
| fr0sty: yeah, thats what i use, but i find stage has a much nicer ring to it. | 21:30 |
|
cbreak
| just read the damn docs... | 21:30 |
|
| before complaining | 21:30 |
|
blackxored
| Branch origin/master set up to track local branch master. | 21:30 |
|
| i'm not complaining | 21:30 |
|
esc
| fr0sty: but then is it: "in the stage" or "on the stage"? | 21:30 |
| ← darkredandyellow left | 21:30 |
|
blackxored
| and you need to be a little more kind with people ;) i just don't remember | 21:30 |
|
aaron01
| fr0sty: thanks for the clarification | 21:30 |
|
cbreak
| just switch the args. | 21:31 |
|
fr0sty
| esc: 'in the index' ;-) | 21:31 |
| → darkredandyellow joined | 21:31 |
|
cbreak
| git branchs first argument is always the branch name of the branch you want to change. | 21:31 |
|
esc
| fr0sty: yeah i use it too | 21:31 |
|
blackxored
| ambigous object name origin/master | 21:31 |
|
| by typing | 21:31 |
|
| git branch --set-upstream master origin/master | 21:32 |
| ← gebi left | 21:32 |
| → Eridius joined | 21:32 |
|
fr0sty
| blackxored: if you actually received "Branch origin/master set up to track local branch master." before it is because you created a local branch called origin/master. | 21:32 |
| → MetaCosm joined | 21:32 |
|
fr0sty
| git branch -d refs/heads/origin/master | 21:33 |
|
blackxored
| fr0sty, I don't have origin/master local branch dude | 21:33 |
|
cbreak
| sure you do | 21:33 |
|
| you just created one above | 21:33 |
|
rgr
| just need to double check. I have just made substantial changes to my code base. I have not checked it in. I forgot to branch before hand. Do I need to stash before making the new branch and then restore the stash after changing to the new branch or can I simply branch and then check in? Whats best procedure? | 21:33 |
|
cbreak
| type git branch to list it :) | 21:33 |
|
blackxored
| cbreak, oh yeah ;) | 21:33 |
|
fr0sty
| blackxored: 'git branch' | 21:33 |
|
blackxored
| cbreak, was on the config ;) | 21:33 |
|
cbreak
| rgr: just learn to read, I already answered above | 21:33 |
|
rgr
| cbreak: your help would be much more appreciated without the snide comments. Thanks anyway. | 21:33 |
| ← rgr left | 21:33 |
|
fr0sty
| rgr: just create it. | 21:34 |
|
| and remember: git is very reluctant to destroy your work | 21:34 |
|
cbreak
| I help to help people, not to make them worship me. | 21:34 |
|
fr0sty
| and will only do so if you ask nicely. | 21:34 |
|
SethRobertson
| cbreak: Your help would be much more useful if people would listen | 21:34 |
|
blackxored
| I did it already, thanks so much guys, I've always blown the param order ;) | 21:34 |
|
cbreak
| SethRobertson: maybe I should try all caps? | 21:34 |
|
blackxored
| no no caps plz ;) | 21:34 |
| → s0ber_ joined | 21:35 |
| ← Mannequin1 left | 21:35 |
| → Mannequin joined | 21:36 |
|
acs
| what is the diff between checkout and clone ? | 21:36 |
|
Mannequin
| hi. I'd like to deploy to a remote server using git. | 21:36 |
|
acs
| or between checkout and branch ? | 21:36 |
|
Mannequin
| Problem: remote server doesn't have git installed, nor seems possible to install it. (remote server is just a shared hosting server) | 21:36 |
| ← manoot left | 21:36 |
|
cbreak
| acs: they do completely different things | 21:36 |
|
esc
| acs: checkout is for local versions or branches, clone for an entire git repository | 21:36 |
|
cbreak
| what do you think is NOT the difference? | 21:37 |
|
mnemoc
| clone does a checkout too :) | 21:37 |
|
acs
| esc: and between checkout & branch ? | 21:37 |
|
Mannequin
| I wonder: could it be possible to mount a remote server folder and use that folder as it is a local folder? | 21:37 |
|
cbreak
| Mannequin: git's not a deployment tool. Consider using hooks to start some deployment script | 21:37 |
|
Mannequin
| (and thus, be able to work with git) | 21:37 |
|
acs
| mnemoc: hmmm... | 21:37 |
| ← s0ber left | 21:37 |
|
esc
| acs: in a branch context, checkout will switch branches, and branch will create them | 21:37 |
| → manoot joined | 21:37 |
| s0ber_ → s0ber | 21:37 |
|
fr0sty
| Mannequin: git is not a deployment tool | 21:37 |
|
esc
| mnemoc: indeed :) | 21:37 |
|
Cacheaway
| Mannequin: possible, linux has various network-based mounting options, i am pretty sure there's an ftpmount, and probably an ssh mount | 21:38 |
|
| Mannequin: why not just use rsync though? | 21:38 |
|
cbreak
| branch can also destroy, change or rename branches | 21:38 |
|
acs
| esc: ah, checkout moves a pointer on that graph... and branch does not | 21:38 |
|
cbreak
| no | 21:38 |
|
fr0sty
| Mannequin: man git-archive which can get you a tarball of a particular revision. | 21:38 |
|
jast
| Mannequin: the 'git-archive' manpage can be found at http://git.or.cz/man/git-archive [automatic message] | 21:38 |
|
cbreak
| checkout does not move pointers in graphs | 21:38 |
| ← dunpeal left | 21:38 |
|
cbreak
| in it's normal mode it just changes HEAD | 21:38 |
|
Cacheaway
| Mannequin: do you have shell access to the host? you would need that anyway | 21:39 |
|
Mannequin
| cbreak, fr0sty: yes, I've read -not that much- about git not being a deployment tool. But I don't know/understand the downside of deploying with git. It seems to make deployment so easy... | 21:39 |
|
| (note: I'll keep the .git/ folder outside DocumentRoot) | 21:39 |
|
| Cacheaway: yes, I've shell access to the host | 21:39 |
|
fr0sty
| Mannequin: #1 for web deployment is that git does not track r/w permissions. | 21:40 |
|
| but there are many others... | 21:40 |
| ← petercoulton left | 21:40 |
|
cbreak
| git doesn't track any permission besides executability | 21:40 |
|
esc
| would it be reasonable to claim that checkout switches branches? | 21:40 |
|
Cacheaway
| Mannequin: then can you download and build git there yourself? | 21:40 |
|
acs
| it just changes HEAD : this is what esc wants to say "checkout will switch branches" ? | 21:40 |
|
cbreak
| in normal mode it does, indeed | 21:40 |
|
| you can also detach your head with it | 21:41 |
|
| but it has a few more special modes | 21:41 |
|
| IslandUsurper draws a finger across his throat menacingly. | 21:41 |
|
| mnemoc doesn't like to have the head detached | 21:41 |
|
esc
| yes, and restore files in your working tree that have been modified | 21:41 |
| ← schambers left | 21:41 |
|
cbreak
| not in normal mode | 21:41 |
| → fowlduck joined | 21:41 |
|
Mannequin
| Cacheaway: I've read about that, it looked a bit overkilling (and mounting a remote folder on my local machine seems easier...), but will look into it again. | 21:41 |
|
acs
| esc: ya | 21:42 |
|
| I try it now: | 21:42 |
|
| git checkout origin/gtk-tabs | 21:42 |
|
| (in emacs) | 21:42 |
|
esc
| acs: trying out commands is always best | 21:42 |
| → compnerd joined | 21:42 |
|
IslandUsurper
| err | 21:42 |
|
esc
| acs: but checking out a remote-trackin-branch will not be so helpful :( | 21:43 |
|
acs
| indeed, it switched to another branch, and destroyed the original master | 21:43 |
|
IslandUsurper
| reading what commands actually do is better | 21:43 |
|
Cacheaway
| Mannequin: one thing people seem to not get about unix systems is that there is no universal install that requires root permission. you should be able to build and "install" everything inside your home directory | 21:43 |
|
esc
| acs: the master is still there, its not destroyed | 21:43 |
|
Cacheaway
| unless your host has it mounted noexec. . . | 21:43 |
| ← HG` left | 21:43 |
|
Mannequin
| Cacheaway: thanks for the tip | 21:43 |
|
acs
| If you want to create a new branch from this checkout, you may do so | 21:43 |
|
| (now or later) by using -b with the checkout command again. Example: | 21:43 |
|
| git checkout -b <new_branch_name> | 21:43 |
|
| HEAD is now at dcb86ef... Tab keys are symbols. Tab switch is in elisp. Save/restore point in tabs also. | 21:43 |
|
esc
| acs: use git checkout master to "switch" back | 21:44 |
|
| acs: and use a pastebin for pasting, please :) | 21:44 |
|
acs
| (this is displayed after git checkout origin/gtk-tabs | 21:44 |
|
Cacheaway
| Mannequin: if there is an autoconf you probably want to start out with something like ./configure --prefix=~/ | 21:44 |
|
acs
| ok | 21:44 |
|
| LOL | 21:45 |
|
esc
| acs: what you did was checkout a remote-tracking-branch, you will not be able to commit there | 21:45 |
|
acs
| git grep tabs src/* reports lots of matches now | 21:45 |
|
esc
| acs: don't use emacs :) sorry. | 21:46 |
|
acs
| esc: hm ? | 21:46 |
| ← zombor left | 21:46 |
| → jonesy joined | 21:46 |
| ← d0k left | 21:46 |
| → linusoleander joined | 21:46 |
|
acs
| emacs is the greatest editor of all the times | 21:46 |
|
slide
| How do I pove a repo to my own server? do I just change the remote and push it back to the new bare git repo their? | 21:46 |
|
esc
| acs: try this one: http://www.gitready.com/beginner/2009/03/09/remote-tracking-branches.html | 21:46 |
|
jonesy
| is there a way to clone the *contents* of a git repo into the $CWD? In other words, I don't want it to create a directory for me. | 21:47 |
| ← joel_falcou left | 21:47 |
|
slide
| s/pove/move | 21:48 |
| → Athox joined | 21:48 |
| ← jonesy left | 21:49 |
| → Murr_ joined | 21:49 |
| ← manoot left | 21:49 |
|
SethRobertson
| slide: Sure, that is one way | 21:49 |
|
Mannequin
| cbreak, fr0zty: will research a bit more about using (or not) git for deployment. Besides the permission issues, it's too tempting to run a website directly from a git repository... | 21:49 |
|
slide
| is that the normal way? heh | 21:49 |
| → manoot joined | 21:49 |
|
Mannequin
| 1) it makes it easier to backport changes done directly in the production website (like images or other non-database content added by clients) | 21:49 |
|
| 2) you could do a `git checkout maintenance_mode` to switch to, well, a branch purposed to maintenance | 21:49 |
|
| 3) running `git status` would help to spot added/modified (hacked?) files | 21:49 |
|
SethRobertson
| slide: Another is to do a `git clone --bare --mirror oldupstream` and then repoint the remote | 21:49 |
| ← goldbergus left | 21:49 |
|
SethRobertson
| Mannequin: http://toroid.org/ams/git-website-howto if you did not see it before | 21:50 |
|
slide
| SethRobertson, do that on the server right? | 21:50 |
|
Mannequin
| SethRobertson: thanks | 21:50 |
|
SethRobertson
| slide: new server, yes | 21:50 |
|
| However, I agree that git is not a deployment tool | 21:50 |
| ← Anti-X left | 21:51 |
| ← blackxored left | 21:52 |
| ← manoot left | 21:52 |
| ← nullvariable left | 21:52 |
| → manoot joined | 21:53 |
| ← jaql left | 21:53 |
|
acs
| esc: I read it. I do not understand too much. What's the diff between a local branch and a remote branch ? | 21:54 |
| → mrFrog joined | 21:55 |
| ← mikeric left | 21:55 |
| → schambers joined | 21:56 |
| ← Dave^| left | 21:57 |
| ← manoot left | 21:57 |
| → manoot joined | 21:58 |
|
esc
| acs: i try to explain, remote-tracking-branches are pointers in your DAG that point to the same commits as those pointers in your remote repository, for example "origin" | 21:58 |
| ← chrisshattuck left | 21:58 |
| ← schambers left | 21:58 |
| → p3rg2z joined | 21:58 |
| → frogonwheels joined | 21:59 |
| ← WebDragon left | 21:59 |
| → aspotashev joined | 21:59 |
|
esc
| acs: so if master points to commit 1234abcd in the remote repository "origin", and you clone that repository, origin/master will point to 1234abcd in the clone | 21:59 |
| ← IslandUsurper left | 21:59 |
| ← cilly left | 21:59 |
| ← matjas left | 22:00 |
|
esc
| acs: is that clear? | 22:00 |
|
acs
| esc: i am pondering ... | 22:00 |
|
slide
| SethRobertson, when i try to clone the new repo on the server im getting "does not appear to be a git repository" | 22:01 |
| → d2dchat joined | 22:01 |
|
mrFrog
| Can someone explain something to me? I'm confused with how deleting files works. If I start a new branch and delete/move files and then switch back to the master branch, shouldn't those files still be there? | 22:01 |
|
SethRobertson
| slide: On the new server you are supposed to clone (bare/mirror) from the old server | 22:01 |
|
cirwin
| mrFrog: if they were committed, yes, otherwise no | 22:02 |
|
acs
| esc: by cloning, a remote repository lies on my own computer, even if it is "remote", isn't it ? | 22:02 |
|
SethRobertson
| slide: The old mirror obviously still has to be working for this technique to work. | 22:02 |
|
slide
| i ran, "git clone --bare --mirror theoriginalsource newdir" | 22:02 |
|
mrFrog
| I though I had. I'll check again though and try it. | 22:02 |
| rayners_afk → rayners | 22:02 |
|
esc
| acs: depends | 22:02 |
| → anathematic joined | 22:02 |
| → joel_falcou joined | 22:02 |
| ← mfacenet left | 22:02 |
| ← p3rg2z left | 22:03 |
|
SethRobertson
| slide: and theoriginalsource is the same as the `url shows in your original clone by `git remote -v show`? | 22:03 |
|
esc
| acs: if you have a repository in a directory locally, and you clone that into another directory, then you "remote" is effectively local | 22:03 |
| ← sundsted left | 22:03 |
|
slide
| SethRobertson, i used the public repo url that i would normally use with git clone | 22:03 |
|
acs
| esc: after I make a clone after a remote repo, and within that remote repo arrive other commits from the others, how can I update my clone, such that my "remote" repo to be syncronized with the remote repo ? | 22:04 |
|
esc
| acs: if you clone a repository over the net, the remote repository resides on the server from which you cloned it | 22:04 |
|
SethRobertson
| slide: but...is it exactly the same as the `git remote -v show`? | 22:04 |
|
slide
| SethRobertson, nope, but it did pull down all their code | 22:04 |
|
acs
| esc: I see... | 22:04 |
|
SethRobertson
| slide: you are confusing me. I thought you said it failed | 22:04 |
|
slide
| SethRobertson, oh no the server part worked fine. but when I try to clone that on my local computer it fails | 22:04 |
|
esc
| there are basically 3 commands you need to interact with remote repositories | 22:05 |
|
acs
| esc: however, when I clone a repo over the net, like emacs.git, it brings to me about 350MB. | 22:05 |
|
esc
| acs: fetch and pull -- and push | 22:05 |
|
| acs: yeah... its emacs | 22:05 |
|
SethRobertson
| slide: what command failed? | 22:05 |
|
esc
| acs: you get the emacs source code, with all its history | 22:05 |
|
mrFrog
| ciwin: It still doesn't do what I'm thinking it should. If I commit my master branch and then do 'git checkout -b testbranch' and then remove a folder in the project directory and then do 'git checkout master', the files aren't there anymore. | 22:06 |
|
acs
| fetch brings latest commits, and pull does the same ? | 22:06 |
|
slide
| "git clone urlfornewrepo" for the new repo | 22:06 |
|
esc
| acs: pull does some more magic | 22:06 |
| ← cannonball left | 22:06 |
|
acs
| probably push "pushes" my patches remotely (if I have access) | 22:06 |
|
SethRobertson
| slide: Is that url something like: ssh://hostname/path/to/repo? | 22:06 |
|
esc
| if the branch you are on, and this is where it gets confusing, is setup to track a remote branch, pull will do a fetch and a merge | 22:06 |
|
acs
| esc: what does pull in plus than fetch ? | 22:06 |
| ← Torsten left | 22:06 |
| → noahcampbell joined | 22:07 |
|
noahcampbell
| When I get this message: Untracked working tree file 'packaging/rundeck.spec' would be overwritten by merge. | 22:07 |
|
acs
| esc: i see. | 22:07 |
|
slide
| yes | 22:07 |
|
noahcampbell
| when I try a checkout...the interwebs says to do a git co -f | 22:07 |
|
mrFrog
| cirwin: It still doesn't do what I'm thinking it should. If I commit my master branch and then do 'git checkout -b testbranch' and then remove a folder in the project directory and then do 'git checkout master', the files aren't there anymore. | 22:07 |
|
esc
| acs: thats a bit tricky, unfortunately | 22:07 |
|
noahcampbell
| Is there something more elegant, then simply blowing away the file? | 22:08 |
|
SethRobertson
| slide: Then what does `ssh hostname ls /path/to/repo` print? | 22:08 |
|
noahcampbell
| Can I merge the two versions? | 22:08 |
| ← mlq left | 22:08 |
|
cbreak
| noahcampbell: delete it, rename it... | 22:08 |
|
cirwin
| mrFrog: bizarre — does git whatchanged show you that you committed them on master correctly? | 22:08 |
|
cbreak
| noahcampbell: or start tracking it | 22:08 |
| → quentusrex joined | 22:08 |
|
fr0sty
| mrFrog: that is because 'testbranch' and 'master' are at the same commit | 22:08 |
|
quentusrex
| How do I get git to stop pushing a particular branch. | 22:08 |
|
fr0sty
| git checkout shouldn't change anything in that case. | 22:08 |
|
quentusrex
| I no longer want that branch pushed to the central repo | 22:08 |
|
esc
| and push will push stuff, however by default it will push all local branches, which have a branch on the remote sind with the same name | 22:08 |
|
cirwin
| noahcampbell: not easily, unless you know what the parent was | 22:08 |
|
fr0sty
| noahcampbell: move the file aside. | 22:09 |
|
esc
| acs: you can configure that behaviour with push.default | 22:09 |
|
noahcampbell
| okay...thanks | 22:09 |
|
slide
| SethRobertson, i think i failed to add the repo to my list of allowed repos, (i havnt messed with this server code in a while) let me see.... | 22:09 |
|
mrFrog
| fr0sty: then what would I do to switch back and have my files back? | 22:09 |
|
fr0sty
| mrFrog: git status will tell you. | 22:09 |
|
esc
| acs: but the rule of thumb is that fetch just updates remote-tracking-branches, and pull will also do a merge | 22:09 |
|
fr0sty
| (presuming the directory was tracked by git. | 22:10 |
|
esc
| acs: but sometimes i can't get fetch to do what i want :( | 22:10 |
| ← ph^ left | 22:11 |
|
mrFrog
| git status just says 'deleted: filename.ext' (3 lines) | 22:11 |
|
acs
| esc: ya, I am too beginner | 22:12 |
| ← manoot left | 22:12 |
|
acs
| esc: I need to learn it, otherwise I cannot use emacs as I wish ... | 22:13 |
| → manoot joined | 22:13 |
| → jmil joined | 22:13 |
| ← jarrod_ left | 22:13 |
| ← dquestions left | 22:14 |
|
mrFrog
| fr0sty: what should I do to keep track of moved/deleted files so they come back when I switch branches? | 22:14 |
|
fr0sty
| esc: what is your problem? | 22:14 |
|
| use 'git mv' or 'git rm', commit the change, then switch branches. | 22:14 |
| → skalnik joined | 22:14 |
|
esc
| sometimes git fetch will not update my remote-tracking-branches | 22:14 |
|
fr0sty
| esc using what command? | 22:14 |
|
mrFrog
| so I have to use git to move the files or remove them? It doesn't just figure that out? | 22:14 |
|
acs
| esc: have you seen these videos : http://edgyu.excess.org/git-tutorial/2008-07-09/ | 22:15 |
|
esc
| fr0sty: git fetch $REMOTE | 22:15 |
| ← manoot left | 22:15 |
| ← Murr_ left | 22:15 |
| → dquestions joined | 22:15 |
|
esc
| fr0sty: git remote update will work | 22:15 |
| → manoot joined | 22:15 |
|
esc
| fr0sty: its whenever i am in a branch not set up to track anything | 22:15 |
|
| fr0sty: i *think* | 22:15 |
|
fr0sty
| esc which remotes are you giving? | 22:16 |
|
skalnik
| Is there anyway to refer to commits from the initial commit? Like master# is the original commit on master and master#1 is the second and so on? | 22:16 |
|
fr0sty
| and are you running 'git remote update' or 'git remote update <remotename>' ? | 22:16 |
|
esc
| i run plain 'git remote update' | 22:16 |
|
fr0sty
| skalnik: no. Git's graph is not bi-directional. | 22:16 |
|
| esc and which remote is not updating? | 22:16 |
| ← yairgo left | 22:16 |
|
esc
| fr0sty: no with 'git remote update' everything is fine | 22:17 |
|
| but a plain 'git fetch $REMOTE' will fail | 22:17 |
|
fr0sty
| how many remotes do you have. | 22:17 |
|
| ? | 22:17 |
|
esc
| one sec | 22:17 |
|
fr0sty
| I was asking about git fetch, sorry I wasn' | 22:17 |
|
| t clear | 22:17 |
|
skalnik
| fr0sty: Alright thanks. Is there any easy way to walk commits from the initial commit to master? | 22:17 |
|
esc
| i should create a cannonical example | 22:17 |
|
fr0sty
| skalnik: what are you trying to do? | 22:18 |
| ← rayners left | 22:18 |
| q0rban → q0rban|afk | 22:18 |
|
skalnik
| fr0sty: I'm trying to do a code demo where each commit is another step in the demo | 22:18 |
| ← opalka left | 22:18 |
| → sonnym joined | 22:18 |
|
fr0sty
| git log --oneline --reverse | 22:18 |
|
skalnik
| Sweet, that's a lot of help :) | 22:19 |
| → stanmancan joined | 22:20 |
|
esc
| fr0sty: i seem to be unable to recreate this now, i will pay more attention next time it happens | 22:21 |
| ← mrFrog left | 22:22 |
|
stanmancan
| Sorry for a lame question, I'm new with Git and in a bit of a crunch so I don't have time to look into it myself... If I have changes done locally and want to pull the latest version, git tells me I need to stash or commit. I don't want to commit, so is there a way to stash my changes, pull the latest ones from the repo, and then re-apply my old un-commited changes? | 22:22 |
|
cirwin
| man git-stash | 22:22 |
|
jast
| cirwin: the 'git-stash' manpage can be found at http://git.or.cz/man/git-stash [automatic message] | 22:22 |
|
stanmancan
| Missed my first sentence I take it? :( | 22:23 |
|
cirwin
| if you'd clicked the link you would already know the answer | 22:23 |
| ← simosx left | 22:23 |
|
stanmancan
| It's funny how some IRC channels like to be friendly and useful, and others like to be cirwin | 22:24 |
|
mnemoc
| git log --date-order still lists them in reverse commit order even after setting the commiter env equal to author env :( | 22:24 |
|
bronson
| stanmancan, you're asking someone to take type to type the git-stash manpage into irc? | 22:24 |
|
| that would take more of your time too. | 22:25 |
|
crab
| stanmancan: stash. pull. stash pop. | 22:25 |
| ← notjohn left | 22:25 |
|
cirwin
| bronson: it's too late, he already made me type more than I needed to to explain | 22:25 |
| ← MikhX left | 22:25 |
|
bronson
| cirwin, I know, it's weird. | 22:25 |
| → MikhX joined | 22:26 |
| ← gh34 left | 22:26 |
|
stanmancan
| Actualyl crab answered my question in four words. | 22:26 |
| ← manoot left | 22:27 |
|
cirwin
| mine would have been two if it had worked :) | 22:27 |
|
| you win some you lose some | 22:27 |
|
fr0sty
| esc: 'git fetch' with no remote argument will only work if tracking is set up (man git-fetch will explain). 'git fetch <remotename>' should do pretty much what 'git remote update <name>' would do. | 22:27 |
|
jast
| esc: the 'git-fetch' manpage can be found at http://git.or.cz/man/git-fetch [automatic message] | 22:27 |
| → Guest106371 joined | 22:27 |
| ← madsy left | 22:27 |
| → _Vi joined | 22:28 |
| ← ereslibre left | 22:28 |
| → manoot joined | 22:28 |
|
esc
| fr0sty: yeah i reckon so, i just remember being baffled a couple of times, cause it didn't :) | 22:28 |
| → mikeric joined | 22:29 |
| → psoo joined | 22:29 |
|
stanmancan
| "file.ext: needs merge | cannot apply to a dirty working tree, pelase stage your changes" | 22:30 |
|
fr0sty
| stanmancan: what did you do? | 22:30 |
| ← pantsman left | 22:30 |
|
stanmancan
| git stash, git pull, git stash pop | 22:30 |
|
fr0sty
| stanmancan: you need to resolve the conflicts from 'git pull' first | 22:30 |
|
stanmancan
| fr0sty: and I go about that .... how? | 22:31 |
|
fr0sty
| I have no way of knowing what conflicts your merge produced. | 22:31 |
|
| git status will tell you what files need to be dealt with. | 22:32 |
| → kar8nga joined | 22:32 |
|
fr0sty
| those files will have >>>>>> ======= <<<<<< conflict markers in them. | 22:32 |
|
| If you hadn't figured it out yet, "file.ext" is one of those files. | 22:32 |
|
mnemoc
| how can I pass an ordered file to git rebase -i? `git log "--pretty=format:%at %h %s" | sort -n | sed -e 's,^[^ ]\+,pick,'` | 22:33 |
| ← lhz left | 22:33 |
| → Mage joined | 22:33 |
|
cbreak
| mnemoc: evil! | 22:34 |
|
| tried copy&paste? | 22:34 |
|
fr0sty
| mnemoc: cut and paste into the editor | 22:34 |
|
mnemoc
| ouch | 22:34 |
|
fr0sty
| what were you expecting? | 22:34 |
| ← Eridius left | 22:34 |
| ← MattDiPasquale left | 22:34 |
|
mnemoc
| cbreak: yes, evil :) | 22:34 |
| ← MikhX left | 22:34 |
| → zwnj joined | 22:35 |
|
mnemoc
| fr0sty: an argument to pass a file instead of opening $EDITOR :) | 22:35 |
| ← Yuffster left | 22:35 |
|
stanmancan
| fr0sty: is it possible to just deelete the conflicting file from the stash? | 22:35 |
|
fr0sty
| mnemoc: GIT_EDITOR=my_evil_plan.sh | 22:35 |
|
mnemoc
| oh | 22:35 |
|
| fr0sty: thanks :) | 22:36 |
| ← pigdude left | 22:36 |
|
fr0sty
| stanmancan: this has nothing to do with the stash. you need to complete the pull. (or did you do that already?) | 22:36 |
|
stanmancan
| fr0sty: the pull went fine, it's not happy when i try to stash pop | 22:36 |
| ← khmarbaise left | 22:37 |
| ← manoot left | 22:37 |
|
fr0sty
| stanmancan: what does 'git status' tell you. | 22:37 |
|
stanmancan
| Unmerged Paths: both modified: file.ext | 22:38 |
| → manoot joined | 22:38 |
|
stanmancan
| i don't need the stashed version of file.ext though | 22:38 |
| ← rryouumaa left | 22:38 |
|
fr0sty
| that means your pull did not got 'fine' | 22:39 |
| ← stringoO left | 22:39 |
| → airborn joined | 22:39 |
|
fr0sty
| I will repeat, since you are short on time: your current problem has nothing to do with the stash and everything to do with your failed merge. | 22:39 |
| → Eridius joined | 22:39 |
| → pantsman joined | 22:41 |
| ← pantsman left | 22:41 |
| → pantsman joined | 22:41 |
| ← 30BAAGZB3 left | 22:41 |
| ← ehabkost left | 22:41 |
| → kylehayes joined | 22:42 |
| ← alin-gym left | 22:42 |
|
mnemoc
| GIT_EDITOR=../evil_editor.sh git rebase -i 3dc2588c4 | 22:42 |
|
| Successfully rebased and updated refs/heads/master. | 22:42 |
|
| :D | 22:42 |
|
| \o/ | 22:42 |
| → MikhX joined | 22:44 |
| ← tildeequals left | 22:44 |
|
fr0sty
| mnemoc: congratulations on whatever it is you just managed to do. | 22:44 |
| ← kylehayes left | 22:45 |
| → alin-gym joined | 22:45 |
|
| cirwin loves fr0sty's EDITOR= git rebase trick | 22:45 |
| ← amason left | 22:46 |
| → khmarbaise joined | 22:46 |
|
stanmancan
| thanks for the help fr0sty | 22:47 |
|
fr0sty
| did you figure it out? | 22:47 |
|
stanmancan
| i just ended up deleting the messedup files and restoring from a backup LD | 22:47 |
| → Slix` joined | 22:47 |
|
stanmancan
| all looks good now | 22:47 |
|
| well, good considering | 22:47 |
| → amason joined | 22:47 |
| ← anathematic left | 22:47 |
| → kylehayes joined | 22:48 |
|
fr0sty
| that is one way to do it... | 22:48 |
| → anathematic joined | 22:48 |
|
cbreak
| if you have a git repo, just restore them from the history | 22:48 |
|
stanmancan
| Yeah... I need to go through git a bit more thoroughly and really figure it out but I'm _swamped_ | 22:48 |
|
| my manager decided to disappear the last 3 days right as we're going live with a bunch of trials | 22:49 |
|
| so now i'm the one scrambling to get our servers up, bugs fixed, trials running ect. | 22:49 |
|
cbreak
| lucky you | 22:49 |
|
stanmancan
| :( | 22:49 |
|
cbreak
| managers just stand in the way anyway | 22:49 |
|
stanmancan
| yeah, but it's also a second set of hands | 22:49 |
|
cbreak
| a set with two left hands? :) | 22:50 |
|
stanmancan
| and he's the one that's developed 80% of the application so | 22:50 |
| → stringoO joined | 22:50 |
|
stanmancan
| :D, well put | 22:50 |
|
fr0sty
| cbreak: what do you have against left hands? | 22:52 |
|
cbreak
| in general? nothing. If they are attached to a right arm it gets anoying though. | 22:53 |
| ← khmarbaise left | 22:53 |
| ← kylehayes left | 22:54 |
|
fr0sty
| fair enough... | 22:54 |
| → kylehayes joined | 22:54 |
| → airborn_ joined | 22:54 |
|
mnemoc
| fr0sty: turn 4 cvs virtual modules into a single git repo with all individual commits ordered by date | 22:55 |
| → MattDiPasquale joined | 22:55 |
| → simplecoder joined | 22:56 |
|
SethRobertson
| fr0sty/mnemoc: and more specifically developed on the same branch (as I understand it) | 22:56 |
|
mnemoc
| yes, master-only | 22:56 |
|
| but it's good enough for my needs :) | 22:57 |
| ← flazz left | 22:57 |
|
SethRobertson
| I meant appearing as if they were developed on the same branch, as opposed to what sub-tree merge does | 22:57 |
|
| mnemoc nods | 22:57 |
|
fr0sty
| so you merged the four and then rebase -i to make it all linear by commit date, eh? | 22:58 |
| ← airborn left | 22:58 |
| airborn_ → airborn | 22:58 |
| ← dgtlmoon left | 22:58 |
|
mnemoc
| fr0sty: yes, but without a "merge" in the history | 22:58 |
|
fr0sty
| hence: 'linear' | 22:58 |
|
mnemoc
| right | 22:58 |
| → airborn_ joined | 22:58 |
|
mnemoc
| which i doubt can be done on any other VCS | 22:59 |
| → joel__ joined | 22:59 |
| ← airborn_ left | 22:59 |
|
fr0sty
| well, not in anything approaching an automated fashion. | 22:59 |
| ← manoot left | 22:59 |
| ← joel_falcou left | 22:59 |
| → manoot joined | 23:00 |
|
fr0sty
| you could probably pull patches and timestamps, mangle the paths, sort them and apply them, but that is for people with more time than sense. | 23:00 |
| ← zwnj left | 23:00 |
|
mnemoc
| =) | 23:00 |
|
fr0sty
| that doesn't count as 'using' a VCS though... | 23:00 |
| ← coderdad left | 23:02 |
| → guardian joined | 23:02 |
| q0rban|afk → q0rban | 23:03 |
| → mlq joined | 23:04 |
| ← mlq left | 23:04 |
| → mlq joined | 23:04 |
|
helo
| i used git fsck to find a stash i accidentally blew away... how do i recreate a stash from the sha? | 23:05 |
|
| just cherry-pick, reset HEAD^, and stash it? | 23:05 |
|
fr0sty
| helo: git stash apply <sha> doesn't work? | 23:06 |
| q0rban → q0rban|afk | 23:06 |
| → ricky joined | 23:06 |
|
fr0sty
| hmm, docs don't seem to mention that working... | 23:07 |
|
helo
| ahh, i'd never referred to a stash via sha... thanks :/ | 23:07 |
|
fr0sty
| can't hurt to try though. | 23:07 |
| → wuj joined | 23:07 |
| ← warbee left | 23:08 |
|
fr0sty
| otherwise a stash is just another commit, so your cherry-pick+reset+stash would work. | 23:08 |
| ← ricky left | 23:08 |
|
helo
| apparently must be cherry-picked as a merge | 23:09 |
|
| stash apply <sha> worked fine, thanks :) | 23:09 |
|
fr0sty
| good to know, that might warrant a mention in the docs... | 23:09 |
| → ricky joined | 23:10 |
| ← MikhX left | 23:10 |
| → AdmiralSausage joined | 23:10 |
| ← kipras left | 23:10 |
| ← jrmuizel left | 23:10 |
| → MikhX joined | 23:11 |
| ← ceez left | 23:12 |
| ← j0shua left | 23:12 |
| ← burhan left | 23:15 |
| → shiba_yu36 joined | 23:15 |
| ← stringoO left | 23:16 |
| ← dquestions left | 23:16 |
| → anathema_ joined | 23:16 |
| → dquestions joined | 23:16 |
| → beatak_tksh joined | 23:17 |
| ← beatak_tksh left | 23:17 |
| ← anathematic left | 23:17 |
| → mrFrog joined | 23:18 |
| ← sraue left | 23:19 |
| → sraue joined | 23:19 |
| ← beatak left | 23:20 |
|
mrFrog
| so I have git installed on my local computer as well as a remote server. How can I push the repo to the remote server? | 23:23 |
|
cbreak
| with git push... | 23:24 |
| ← guardian left | 23:25 |
|
cbreak
| create a bare repo at the destination, add the destination as remote in the source | 23:25 |
|
| then push | 23:25 |
| ← tizbac_ left | 23:25 |
| ← simplecoder left | 23:26 |
| ← albel727 left | 23:26 |
|
mrFrog
| ok so how do I add a url as remote? | 23:26 |
|
cbreak
| you add the repository as remote | 23:27 |
| ← Ryback_ left | 23:27 |
|
cbreak
| with, surprise surprise, git remote add | 23:27 |
|
| read the man page | 23:27 |
|
bremner
| mrFrog: have you considered man gittutorial ? | 23:27 |
|
jast
| mrFrog: the 'gittutorial' manpage can be found at http://git.or.cz/man/gittutorial [automatic message] | 23:27 |
| → simplechat joined | 23:28 |
| → brosner joined | 23:29 |
| ← mrFrog left | 23:30 |
| ← kylehayes left | 23:30 |
| → Khisanth joined | 23:32 |
| → xiong joined | 23:36 |
| → zorganae joined | 23:37 |
| → guardian joined | 23:38 |
| → dgtlmoon joined | 23:39 |
| ← TeckniX left | 23:41 |
| → guille_ joined | 23:42 |
|
guille_
| hi | 23:42 |
| ← thiago_home left | 23:44 |
|
fr0sty
| hi | 23:44 |
| → constantc joined | 23:46 |
|
fr0sty
| ... | 23:46 |
| → ignatp_ joined | 23:47 |
| → project2501a joined | 23:47 |
|
guille_
| I changed with a tree-filter the .gitmodules to point to a different url but github isn't linking the external repositories correctly. Any ideas? | 23:47 |
| → zombor joined | 23:48 |
| ← project2501a left | 23:48 |
|
guille_
| (is there any other place where the submodules info gets stored?) | 23:48 |
| → schambers joined | 23:48 |
|
coldboot
| Is there a git command to remove a file from the index and working tree completely? | 23:49 |
|
| It seems you need to "git reset; git checkout; git reset; git checkout" for some files with status 'UU', 'DU', and others. | 23:49 |
| ← pantsman left | 23:50 |
| ← constantc left | 23:50 |
|
SethRobertson
| guille_: see man git-submodule .gitmodules and .git/config have info | 23:50 |
|
jast
| SethRobertson: the 'git-submodule' manpage can be found at http://git.or.cz/man/git-submodule [automatic message] | 23:50 |
|
SethRobertson
| guille: However, I would like to take the opportunity to promote gitslave as an alternative to git-submodules. It can be better (or worse) depending on your desired workflow. | 23:51 |
| ← masonkramer left | 23:51 |
| → masonkramer joined | 23:51 |
| → eletuchy joined | 23:51 |
|
SethRobertson
| It also of course tracks submodule information in the internal git tree | 23:52 |
| → Tuller joined | 23:53 |
| → jarrod_ joined | 23:55 |
|
guille_
| SethRobertson: I'll check it out. Now trying doing a git submodule sync after .gitmodules have been sed'ed. | 23:55 |
|
| thanks | 23:55 |
| ← kar8nga left | 23:56 |
|
fr0sty
| guille_: did you force a push on your filtered branches? | 23:57 |
| ← manoot left | 23:58 |
| ← AdmiralSausage left | 23:58 |
| → manoot joined | 23:58 |