| 2011-11-07 |
| ← jamiemill left | 00:00 |
| ← ipalaus_ left | 00:00 |
| ← veganadian left | 00:02 |
| → cloudgroup joined | 00:03 |
| → jargon- joined | 00:05 |
| → RaceCondition joined | 00:07 |
| → EricInBNE joined | 00:08 |
| ← cloudgroup left | 00:13 |
| ← p3rror left | 00:14 |
| → gigamonkey joined | 00:15 |
| → jrnieder joined | 00:16 |
| → replore joined | 00:18 |
| → neurodrone_ joined | 00:21 |
| ← neurodrone left | 00:21 |
| neurodrone_ → neurodrone | 00:21 |
| → CpuID2 joined | 00:21 |
|
CpuID2
| hey pals…. I've been going through some guides regarding pushing a copy of my git tree to a remote server (as opposed to doing a clone/pull from the target server), just deciding if I'm best using git init or git init --bare on the remote end prior to doing a git remote / git push remotetarget master ? | 00:22 |
| ← airborn left | 00:22 |
|
jrnieder
| hi CpuID2 | 00:22 |
|
CpuID2
| one issue with git init is its considered "non-bare", so you get the "refusing to update checked out branch refs/heads/master" message on push | 00:23 |
| → airborn joined | 00:23 |
|
jrnieder
| "git init --bare" makes a repository with just the objects and refs | 00:23 |
|
| without the files checked out | 00:23 |
|
CpuID2
| yea | 00:23 |
|
| which defaults to the current working dir | 00:23 |
|
jrnieder
| so yeah, it's usually exxactly what one wants on a server | 00:23 |
|
CpuID2
| rather than creating a .git | 00:23 |
|
jrnieder
| "git init --bare foo.git" | 00:23 |
|
CpuID2
| ok so that gives me effectively what would be the contents of .git on a normal clone | 00:24 |
|
jrnieder
| if this repository is meant to be pushed to by multiple people, then "git init --shared --bare foo.git" and see gitcvs-migration(7) | 00:24 |
| ← easytiger left | 00:24 |
|
CpuID2
| basically… I'm looking to push out local copies of a package's source tree to boxes for deployment | 00:25 |
|
| and then bootstrap/build within them | 00:25 |
|
| but without hammering the pkg maintainers git server in doing so | 00:25 |
|
jrnieder
| ah, deployment :) | 00:25 |
|
CpuID2
| so on my staging server, i git clone first | 00:25 |
|
jrnieder
| I'm a fan of the "hook on the server side" model | 00:25 |
|
CpuID2
| and my staging box has ssh keys to all of the release targets | 00:25 |
|
| :) | 00:25 |
|
| initially i was going to bootstrap/build on the staging box | 00:26 |
|
| but I've chosen to do that on the release targets for now | 00:26 |
| → easytiger joined | 00:26 |
|
CpuID2
| it does mean more builds, but meh | 00:26 |
|
| theres benefits there as well | 00:26 |
|
| yea i see whatcha mean about hooks on the server side | 00:26 |
|
| (FYI, its freeswitch I'm pushing down) | 00:26 |
| ← kp^ left | 00:26 |
|
sandstorm
| is there any way to store repo on an ftpes account? | 00:27 |
| ← airborn left | 00:27 |
|
jrnieder
| sandstorm: sure, use your usual ftp client | 00:27 |
|
CpuID2
| so jrnieder in this scenario… do you see any problems with the mkdir /usr/src/freeswitch && cd /usr/src/freeswitch && git init route? | 00:27 |
|
jrnieder
| if your account has very limited space, I'd recommed using git-bundle(1) | 00:27 |
|
sandstorm
| jrnieder: can I do commits and checkouts over ftpes? | 00:27 |
|
CpuID2
| its not going to be a shared work environment on each release target | 00:28 |
|
jrnieder
| sandstorm: depends on lots of details --- how far away is your ftp server? is there a limited quota? any security requirements? why ftp and not something like git protocol, http, or ssh? | 00:28 |
| ← CannedCorn left | 00:28 |
|
CpuID2
| but for future releases i was going to just git push updates down to the targets (incrementally) then git reset --hard on them, rather than pushing full trees | 00:28 |
| → TheMoonMaster_ joined | 00:29 |
|
sandstorm
| jrnieder: very far, no limited quota, no security requirements(except tls) and how can I do via http? can I commit over http and so on ? | 00:29 |
|
jrnieder
| CpuID2: imho life is easier with just one central repo, with a hook to notify the targets to go fetch when when there are new changes to fetch | 00:29 |
|
sandstorm
| jrnieder: it is a shared hosting btw. | 00:29 |
|
CpuID2
| jrnieder: oh the issue here… is for initial new target deployments | 00:29 |
|
| once they have a tree to work off i can have them pull down updates fine :) | 00:30 |
|
jrnieder
| CpuID2: I see | 00:30 |
|
CpuID2
| (or ill actually git push them from my staging box, due to the preference of not wanting my targets to have keys to the staging box) | 00:30 |
|
jrnieder
| anyway, others can say something about pushing to deploy | 00:30 |
|
| I might be the only one who likes avoiding magic with worktrees :) | 00:31 |
|
CpuID2
| hehe :) | 00:31 |
|
| in essence there will be a central repo here | 00:31 |
|
| but i was avoiding running a git server to allow git:// clones | 00:31 |
|
nevyn
| gitolite! | 00:31 |
|
CpuID2
| the staging box will be the central repo | 00:31 |
|
| which is built off doing a clone and keeping it updated from the upstream pkg.'s tree | 00:32 |
|
jrnieder
| sandstorm: regarding your questions - | 00:32 |
| ← thiago left | 00:32 |
| ← kermit left | 00:32 |
|
jrnieder
| a. commits happen locally, so that part of the workflow doesn't care what protocol you use :) | 00:33 |
| → kermit joined | 00:33 |
|
sandstorm
| jrnieder: can I push the commits to ftpes? | 00:33 |
|
jrnieder
| b. yep, I think fetch over ftps works, but it's been a while since I checked. Make sure you run "git update-server-info" at the appropriate times to make index information available to the client, since the server won't be smart enough to generate it on the fly | 00:33 |
|
sandstorm
| jrnieder: and do checkouts over there? | 00:33 |
|
jrnieder
| c. I don't remember if anyone implemented push over ftp/ftps | 00:34 |
|
| but you can always use a normal file-synching program to just send the foo.git directory over there, and clients won't mind | 00:34 |
|
sandstorm
| hmm I see | 00:35 |
|
jrnieder
| you can certainly push over http | 00:35 |
|
sandstorm
| so file synching program will mimic pushes? | 00:35 |
|
jrnieder
| yep, yep | 00:35 |
|
sandstorm
| and pulls? | 00:35 |
|
jast
| yes, only much less efficiently | 00:35 |
|
jrnieder
| for pull, as I said, as long as you run "git update-server-info", the git client can handle it (slowly, as jast said) | 00:35 |
|
sandstorm
| I can push over http but since it is a shared hosting, they might not have set configurations for git to work | 00:35 |
|
jast
| the tricky part is updating the server info thingy | 00:36 |
|
| with shared hosting it might be difficult | 00:36 |
|
jrnieder
| right, push over http requires either a webdav setup on the server (slow, complicated) or the "smart HTTP" cgi script | 00:36 |
|
sandstorm
| what is the use of server info ? | 00:36 |
|
| I am very new to this repository thing | 00:36 |
|
jrnieder
| when git fetches, we don't want to just slirp up everything | 00:36 |
|
jast
| it's for "dumb HTTP" so that client can figure out what branches you've got and at what version they are | 00:36 |
|
jrnieder
| what jast said | 00:37 |
|
jast
| basically without the server info that HTTP transport doesn't really do you any good | 00:37 |
|
sandstorm
| got it | 00:37 |
|
jast
| the "smart HTTP", on the other hand, requires more stuff on the server to be set up | 00:37 |
| ← |Agent left | 00:37 |
|
sandstorm
| so I will probably give up :) | 00:37 |
|
jast
| you need a git binary somewhere, and some CGI-related setup | 00:37 |
|
| your project isn't, per chance, open source? | 00:37 |
|
sandstorm
| nope it is a small web project | 00:38 |
|
| commercial one | 00:38 |
|
jast
| ... there goes the free hosting alternative | 00:38 |
|
sandstorm
| we are 2 people so we wanted to use a nice versioning system | 00:38 |
| → glcrazy_ joined | 00:38 |
| → dv310p3r joined | 00:38 |
|
sandstorm
| to sync our works | 00:38 |
|
jast
| depending on how aggressive your respective firewalls are, you might be able to get by without a central repository | 00:39 |
|
jrnieder
| sandstorm: do you have ssh access to the shared host? | 00:39 |
|
jast
| since git is decentralized, in theory you can just swap stuff without a middle man | 00:39 |
|
sandstorm
| jrnieder: nope, ssh is disabled, it is a business hosting | 00:39 |
|
offby1
| *sigh* | 00:39 |
|
sandstorm
| unfortunately | 00:39 |
| ← k-man left | 00:40 |
|
offby1
| so "business" here must actually mean "lame" | 00:40 |
|
sandstorm
| hmm | 00:40 |
|
| what would be the best practice to swap things in order to sync 2 peoples work ? | 00:40 |
|
| copying over? | 00:40 |
|
jrnieder
| sandstorm: I'd exchange git bundles by email :) | 00:40 |
|
sandstorm
| oh very nice thinking sir | 00:40 |
|
| is that possible? | 00:40 |
|
jrnieder
| or patches, to be able to comment on them | 00:40 |
|
| yep | 00:40 |
|
jast
| bundles need some manual figuring out work | 00:41 |
|
jrnieder
| for bundles, see man git-bundle(1) | 00:41 |
|
jast
| *automatic message* the 'git-bundle' manpage can be found at <http://git.kernel.org/?p=git/git.git;a=blob_plain;f=git-bundle.html;hb=html> | 00:41 |
|
jrnieder
| for patches, see man git-format-patch(1) | 00:41 |
|
jast
| *automatic message* the 'git-format-patch' manpage can be found at <http://git.kernel.org/?p=git/git.git;a=blob_plain;f=git-format-patch.html;hb=html> | 00:41 |
|
sandstorm
| do patches include real work files? | 00:41 |
|
jast
| i.e. you need to tell git which commit range to pack into a bundle | 00:41 |
|
sandstorm
| I see | 00:41 |
|
jast
| textual patches, OTOH, are easily to read and thus review before applying them | 00:41 |
|
sandstorm
| ah very nice feature | 00:41 |
|
jast
| they're not so exciting if your repository involves binary files | 00:41 |
|
sandstorm
| for instance we create artwork, we create php files and etc. when we commit new files, the patch will include compressed versions of them right? | 00:42 |
|
jrnieder
| in a bundle, everything is compressed | 00:42 |
|
CpuID2
| hmm i have a feeling I'm rather close to where i want to be right now :) | 00:42 |
|
jast
| a patch is just a regular unified diff | 00:42 |
|
sandstorm
| for instance, .psd files etc | 00:42 |
|
jrnieder
| in a patch, everything is in a text form | 00:42 |
|
CpuID2
| i ended up just going git init && git config receive.denyCurrentBranch ignore | 00:42 |
|
| on the target | 00:42 |
|
jast
| a bundle, on the other hand, is compressed | 00:42 |
|
jrnieder
| binary files get converted to some kind of textual representation | 00:42 |
|
CpuID2
| then doing a git remote … … && git push … master | 00:43 |
|
jrnieder
| of the delta | 00:43 |
|
CpuID2
| from my staging | 00:43 |
|
sandstorm
| so I will go with bundles I guess to sync our work ? | 00:43 |
|
| ah I see | 00:43 |
|
| interesting | 00:43 |
|
| textual representation wow | 00:43 |
|
CpuID2
| but… now i have what looks like a lot of "deleted" files on my target according to git status, but they don't actually exist | 00:43 |
|
jast
| yeah, probably just base64-encoded or whatever | 00:43 |
| ← glcrazy_ left | 00:43 |
| → glcrazy_ joined | 00:44 |
|
jast
| CpuID2: *automatic message* an explanation of bare and non-bare repositories can be found here: http://bare-vs-nonbare.gitrecipes.de/ | 00:44 |
|
sandstorm
| textual or not, patches or bundles will be serving for our needs very good features | 00:44 |
|
| what happens if we concurrently changed same files and send bundles to each other? | 00:45 |
|
| will they be merged and new patch comes out ? | 00:45 |
|
CpuID2
| *reads* | 00:45 |
|
| \ | 00:45 |
|
jast
| then at least one of you is going to have to merge the bundle locally, and create a new bundle that contains the merge | 00:45 |
| → bonhoffer joined | 00:45 |
|
sandstorm
| got it | 00:46 |
|
jrnieder
| or rather, when you fetch from the bundle, you'll see the actual history | 00:46 |
|
| with a branch | 00:46 |
|
jast
| note that not the two bundles get merged, but rather devA's bundle gets merged to devB's local repository (including its history) | 00:46 |
|
| fine distinction, though :) | 00:46 |
|
jrnieder
| and then you can use "git merge" on it | 00:46 |
|
sandstorm
| but if both of us merge it the product will be the same but different SHA1's ? | 00:46 |
| ← TheMoonMaster left | 00:46 |
|
jrnieder
| that's right, so one of you should do the merge | 00:46 |
|
jast
| if you merge it the same way, yeah | 00:46 |
|
jrnieder
| and send a bundle with it to the other | 00:46 |
|
jast
| usually it's best to have one person merge and the other just watch and look busy | 00:46 |
|
sandstorm
| hehehe | 00:47 |
|
| I liked the watch and look busy part :P | 00:47 |
| ← glcrazy_ left | 00:48 |
|
jast
| if you trust the other developer to do good merges, you might want to think about convincing him to do the 'merge' part and focus on the 'look busy' part | 00:48 |
|
sandstorm
| I am trying to figure out the best practice complying with this 2 man scenario, that's why I am asking these, thanks alot for the information :) | 00:48 |
|
| hmm so as far as I get, merging requires skills :) | 00:48 |
|
| in terms of reliability and integrity | 00:49 |
|
| maybe I could go with the merging part :( | 00:49 |
|
jast
| yeah, we regularly get folks trying to salvage their messed up merges | 00:49 |
|
sandstorm
| I see | 00:49 |
|
jast
| the problem with messed up merges is that they're hard to undo (mostly due to communication overhead, so in a 2-dev team it's less of an issue but still extra work) | 00:49 |
|
sandstorm
| I just started reading about repositories and git yesterday | 00:50 |
|
| learning alot | 00:50 |
|
jast
| nice :) | 00:50 |
|
| some people come here and try to solve problems without learning. doesn't work nearly as well. | 00:50 |
| → TheMoonMaster joined | 00:50 |
|
jast
| at least that's the impression I get | 00:50 |
|
sandstorm
| true, it is the extra work but I wonder how merges are done in huge projects such as linux kerel, it should be done elegantly | 00:50 |
|
SethRobertson
| read !book | 00:50 |
|
jast
| *automatic message* 'Pro Git' is a complete book about git that is available online for free (there's a print version, too): http://progit.org/book/ | 00:50 |
|
| well, I can explain it briefly | 00:51 |
|
CpuID2
| jast: ok i can pretty much confirm i want a non-bare repo, as i do want a working tree to be able to do stuff in on the destination box | 00:51 |
| ← caseymcg left | 00:51 |
|
CpuID2
| tried mkdir /usr/src/repo && cd /usr/src/repo && git init | 00:51 |
|
bob2
| tl;dr don't blindly use 'git pull' | 00:51 |
|
CpuID2
| then dropped that post-update in there | 00:52 |
|
sandstorm
| okay I can listen | 00:52 |
|
jast
| CpuID2: the last sections address how you can make that happen | 00:52 |
|
CpuID2
| (in hooks, chmod +x etc) | 00:52 |
|
| it complained about receive.denyCurrentBranch on git push from my source, set it as ignore on the target | 00:52 |
|
| it ran | 00:52 |
|
| but i still don't have a working tree on the target? | 00:52 |
|
| its definitely propagating data across though, looking at the output of git push on the source | 00:52 |
| ← RaceCondition left | 00:52 |
| ← sorin left | 00:53 |
|
jast
| sandstorm: there is a sort-of counterpart to merge. suppose devA has a few commits that he wants to get included upstream. before he sends it, he gets the latest changes from upstream, then uses this other tool to remove the need for the merge to involve any work, *then* sends the updated commits. | 00:53 |
|
| it comes with its own gotchas, of course | 00:53 |
|
CpuID2
| interestingly enough on the target, git status shows them all as "deleted" files, like its awaiting a commit or something | 00:53 |
|
jast
| CpuID2: yeah, you need a hook script that syncs up the working tree with the new history | 00:53 |
| ← saschagehlich left | 00:53 |
|
CpuID2
| I've dropped the post-update script in there...? | 00:53 |
|
| (from that URL) | 00:54 |
|
jast
| CpuID2: it's showing them as 'deleted' because they are new in the history and they're not in the working tree, i.e. it looks as if you checked out that new history and then deleted them | 00:54 |
|
CpuID2
| yea fair call | 00:54 |
|
| can i verify if the hook was actually called? | 00:54 |
|
sandstorm
| jast: what if that commiting is trying to be done by 2 people at the exact time? they both got the latest codes but trying to do concurrent commits? | 00:54 |
|
jrnieder
| CpuID2: add "echo hellooooo there" to the hook :) | 00:54 |
|
sandstorm
| *same | 00:55 |
|
CpuID2
| ah :) | 00:55 |
|
bob2
| sandstorm, then one of them will end up with a very boring merge | 00:55 |
|
jast
| or have it create a dummy file | 00:55 |
|
bob2
| sandstorm, but you can just try and see for yourself | 00:55 |
|
CpuID2
| hah simple solution | 00:55 |
|
| git reset --hard | 00:55 |
|
| :) | 00:55 |
|
sandstorm
| hmm allright, I am learning :) | 00:55 |
|
CpuID2
| voila, working tree :) | 00:55 |
|
jast
| sandstorm: chances are still very good that if the submissions don't cover the same part of the codebase, they can be merged automatically | 00:55 |
| → Cipher-0 joined | 00:55 |
|
jast
| and if they can't, that's just rotten luck and one of them will have to redo the work :) or the maintainer will have to do it | 00:56 |
|
| in the end the maintainer is always responsible anyway | 00:56 |
|
sandstorm
| ah I see | 00:56 |
|
CpuID2
| I'm still getting my head around git… but i am starting to see while its complexed in its own ways its very flexible :) | 00:57 |
|
| (coming from an svn background) | 00:57 |
|
sandstorm
| so the maintainer will see 2 branches from the same codebase which were supposed to be done on top of eachother | 00:57 |
| ← tewecske left | 00:57 |
|
jast
| actually he'll probably see two branches that were supposed to be done "next to" each other | 00:57 |
|
jrnieder
| sandstorm: a good way to figure these things out is to experiment | 00:57 |
|
| and see what happens | 00:57 |
|
jast
| yeah, experiments rock :) | 00:58 |
|
sandstorm
| allright, I need to try on a test repository :) | 00:58 |
|
jast
| luckily test repositories are cheap | 00:58 |
|
CpuID2
| ok awesome I'm satisfied with this now | 00:58 |
|
sandstorm
| thank you very much for your time and consideration | 00:59 |
|
CpuID2
| effectively not cloning down every time, just propagating changes :) | 00:59 |
|
| jast and jrnieder: thanks for pointing me in the right direction/s :) | 00:59 |
| → flash3d8_ joined | 00:59 |
|
jrnieder
| yeah, thank you jast :) | 01:00 |
|
jast
| hey, what just happened | 01:00 |
| → qian joined | 01:00 |
|
jast
| three people thank me and my internet connection disappears :O | 01:00 |
| → sorin joined | 01:00 |
|
sandstorm
| thank you all, I really appreciate this community | 01:00 |
|
| :P | 01:00 |
| sorin → Guest73959 | 01:01 |
|
CpuID2
| hahaha | 01:01 |
|
jast
| yeah, you're laughing | 01:01 |
| → luxurymo_ joined | 01:01 |
|
jast
| while I'll have to hold a funeral for my late connection | 01:01 |
| → timmywil joined | 01:02 |
| ← glcrazy left | 01:02 |
|
CpuID2
| hehehe | 01:02 |
| → aidenhong joined | 01:02 |
|
CpuID2
| jast: thanks for your help (since you missed it the first time ;)) | 01:02 |
| → glcrazy joined | 01:02 |
|
jast
| no, I got it all right | 01:02 |
|
| *my* connection was gone... but my IRC client is on another connection | 01:02 |
| → glcrazy_ joined | 01:02 |
|
jast
| in another castle, even | 01:03 |
|
| anyway, you're welcome, guys | 01:03 |
| tizzo → tizzo-afk | 01:03 |
|
jast
| still considering charging for the help at some point in the future ;) | 01:03 |
|
CpuID2
| ah :) | 01:04 |
|
| nps | 01:04 |
|
| irc bounces ftw | 01:04 |
| → lunchub joined | 01:04 |
| → kl4m joined | 01:04 |
| ← MUILTFN left | 01:06 |
| → PovAddict joined | 01:06 |
| ← bitkiller left | 01:06 |
| ← JoeyA left | 01:06 |
|
PovAddict
| I have a bunch of repositories with *many* common objects (they are the different attempts of conversions from the same SVN repository) | 01:07 |
|
| is there any way to "merge" the packfiles together so they take less space? | 01:07 |
|
| ie. end up with a single packfile with the objects of all | 01:07 |
| ← kriegerod left | 01:07 |
|
kevlarman
| PovAddict: if they really are the same, git repack will do it | 01:08 |
|
CpuID2
| ok heres a good question, whats the best method for using per-target SSH keys with git remote? | 01:08 |
|
| .ssh/config ? | 01:08 |
|
| i assume i can't really provide one in the url or as a param to git remote | 01:09 |
|
PovAddict
| CpuID2: yes, .ssh/config | 01:09 |
|
CpuID2
| np | 01:09 |
|
PovAddict
| kevlarman: how would I do that? if I copy the packfile of one repo into the objects/pack/ of another, and run git repack, it would just decide that none of the objects in that pack is referenced by refs in the repo | 01:10 |
| ← nudb2 left | 01:10 |
|
kevlarman
| PovAddict: why are you trying to share objects between different repositories? | 01:10 |
|
mystik
| s | 01:10 |
|
kevlarman
| (that tends to lead to some really unexpected things happening) | 01:10 |
| → endy_c joined | 01:12 |
|
jrnieder
| kevlarman: might be on a machine with limited disk space | 01:12 |
| ← flaguy48 left | 01:12 |
|
CpuID2
| hmm theres not something equivalent to rsync -e for git remote is there? | 01:12 |
|
| that would be so much more preferable to using .ssh/config right now :) | 01:12 |
|
SethRobertson
| GIT_SSH? | 01:12 |
|
jast
| PovAddict: look at the alternates mechanism, and heed its warnings (documented for the -s option of git clone, for example) | 01:12 |
|
CpuID2
| o0 | 01:12 |
|
| that sounds promising | 01:13 |
|
jrnieder
| PovAddict: consider making them a single repository | 01:13 |
|
CpuID2
| aha :) http://www.reddit.com/r/git/comments/hdn1a/howto_using_the_git_ssh_variable_for_private_keys/ | 01:13 |
|
| perfect | 01:13 |
|
| this will work, thx SethRobertson :) | 01:13 |
|
PovAddict
| kevlarman: they have *lots* of common data (in some cases there may be a single tree object differing between two), since they are different conversions of the same svn repo, with tweaked conversion settings | 01:13 |
|
endy_c
| Anybody here use bitbucket? How do I upload my already running local repo? | 01:13 |
| → cooloney joined | 01:14 |
|
PovAddict
| endy_c: I use bitbucket but only for Mercurial repos | 01:14 |
|
jrnieder
| PovAddict: what are these repos going to be used for? (just curious) | 01:14 |
|
SethRobertson
| git remote add bitbut, git push bitbut | 01:14 |
|
endy_c
| PovAddict: I'm trying for the first time bitbucket's git repo | 01:14 |
|
| SethRobertson: thanks! | 01:15 |
|
PovAddict
| jrnieder: archival; I already had problems in the past with a converted repo missing stuff, realizing one month after, and not having kept enough information to track down what went wrong | 01:15 |
| → kerrick joined | 01:15 |
| ← sandstorm left | 01:17 |
| → maletor joined | 01:17 |
| → sandstorm joined | 01:17 |
|
jrnieder
| PovAddict: thanks | 01:18 |
| → shiba_yu36 joined | 01:19 |
| ← wbednarski left | 01:20 |
| ← glcrazy left | 01:21 |
| ← glcrazy_ left | 01:21 |
| → nyeates joined | 01:21 |
|
kevlarman
| PovAddict: then yeah just fetch all the branches into a single repo | 01:22 |
|
nyeates
| any recommendations on how to remove an api key from a file (but not the entire file), from many commits? | 01:22 |
|
frogonwheels
| nyeates: look at man git-filter-branch | 01:23 |
|
jast
| nyeates: *automatic message* the 'git-filter-branch' manpage can be found at <http://git.kernel.org/?p=git/git.git;a=blob_plain;f=git-filter-branch.html;hb=html> | 01:23 |
| ← sandstorm left | 01:24 |
| → CannedCorn joined | 01:25 |
| ← shruggar left | 01:26 |
| ← endy_c left | 01:27 |
|
nyeates
| k thx | 01:28 |
| ← nyeates left | 01:28 |
| → baburdick joined | 01:28 |
| → tiagobutzke joined | 01:29 |
| ← novettam_ left | 01:31 |
| → xiehong joined | 01:31 |
| → herdingcat joined | 01:31 |
| → envi_ joined | 01:31 |
| Pilif12p → Pilif|stufy | 01:32 |
| Pilif|stufy → Pilif|study | 01:32 |
| ← ArseneRei left | 01:34 |
| → bonhoffer_ joined | 01:35 |
| ← Targen left | 01:36 |
| → thews joined | 01:36 |
| → caseymcg joined | 01:38 |
| ← envi_ left | 01:38 |
| ← bonhoffer left | 01:38 |
| → bonhoffer joined | 01:38 |
| → niloc132 joined | 01:39 |
| ← berserkr left | 01:39 |
| ← brian_g left | 01:40 |
| ← flash3d8_ left | 01:40 |
| → ziggles joined | 01:41 |
| ← bonhoffer_ left | 01:41 |
| Pilif|study → Pilif12p | 01:42 |
| ← bonhoffer left | 01:44 |
| → tomas_w joined | 01:45 |
| → andygrossman joined | 01:45 |
| ← andygrossman left | 01:46 |
| ← bigkm left | 01:47 |
| → eephillip joined | 01:48 |
| ← jrnieder left | 01:50 |
| → bonhoffer joined | 01:52 |
| ← Mannequin left | 01:52 |
| → cronin joined | 01:55 |
| ← luxurymo_ left | 01:56 |
| ← lisak left | 02:00 |
| → ouyes joined | 02:01 |
| → nightshift joined | 02:09 |
| ← Cipher-0 left | 02:12 |
| ← tomas_w left | 02:15 |
| ← nightshift left | 02:15 |
| ← the-fonz left | 02:21 |
| → alc joined | 02:22 |
| ← Guest73959 left | 02:27 |
| ← dreiss left | 02:28 |
| → Yuuhi`` joined | 02:30 |
| ← CannedCorn left | 02:31 |
| → wks joined | 02:31 |
| ← Yuuhi` left | 02:32 |
| → flaguy48 joined | 02:33 |
| → CannedCorn joined | 02:33 |
| → jrnieder joined | 02:35 |
| → regedit joined | 02:38 |
| → kimico joined | 02:40 |
|
regedit
| is there some general guideline about when to leave some file untracked and when to gitignore? | 02:42 |
|
| i have files which are specific to the site at which the particular clone of the origin repo resides (think .htaccess files or path-specifig config files) should those be untracked or gitignored? | 02:42 |
| ← herdingcat left | 02:43 |
|
jrnieder
| regedit: not sure I follow | 02:44 |
|
oc80z
| me either | 02:44 |
|
jrnieder
| .gitignore is a good place to describe the files that your project's build process will create | 02:44 |
|
regedit
| hm leme try again | 02:44 |
|
jrnieder
| for example, it can list patterns like "*.o", and then contributors will not end up "git add"-ing any .o files unless they use --force | 02:44 |
| → glennpratt joined | 02:45 |
|
jrnieder
| one contraversial question is whether a project's .gitignore should include entries like ".*.swp" for generated files that are not due to the build process | 02:45 |
|
regedit
| this project is not your typical application / tool programmed in C / C++ / Java, it's actually just a website. php. | 02:45 |
|
oc80z
| right. | 02:45 |
|
PovAddict
| I think files like .*.swp should be in gitignore | 02:45 |
|
oc80z
| yeah | 02:45 |
|
jrnieder
| on one hand, this means it is less likely that someone will accidentally add those files; on the other hand, a list of all possible files of that kind can get a bit absurd | 02:45 |
|
oc80z
| them vim files, eh? | 02:46 |
|
regedit
| which means that the checked out working directory is the final shipped product | 02:46 |
|
PovAddict
| but something that is eg. a log file by a tool a certain developer uses, and not something used by the buildsystem, then that dev should add it to info/exclude | 02:46 |
|
| which is local to his repo | 02:46 |
|
oc80z
| they are in my gitignore. | 02:46 |
|
jrnieder
| a principled answer would be to say, "always list those only in .git/info/exclude or the file mentioned in [core] excludesfile in ~/.gitconfig" | 02:46 |
|
frogonwheels
| .. or also local config is a good candidate for .gitignore.. where you have thingconfig.examplefile committed, and then thingconfig ignored | 02:47 |
|
| jrnieder: or better yet, a global ignore file as appropriate. | 02:47 |
|
| jrnieder: I mean for *.swp | 02:47 |
|
jrnieder
| frogonwheels: yeah, that's what I was vaguely gesturing at with the [core] excludesfile thing | 02:47 |
|
frogonwheels
| jrnieder: sorry - was typing it at the same time - so didn't read before <enter> :) | 02:48 |
| → ArseneRei joined | 02:48 |
|
PovAddict
| kevlarman, jrnieder: I won't bother merging the packfiles, I just found that rzip does wonders with the directory full of git repos | 02:48 |
|
frogonwheels
| oh .. no I mean I didn't read that far of your line jrnieder.. sorry | 02:48 |
|
PovAddict
| 956MB -> 193MB | 02:48 |
|
jrnieder
| frogonwheels: yeah, np | 02:48 |
| → Vampire0 joined | 02:48 |
|
jrnieder
| there's also room for less principled approaches, like "we've received enough patches that add .swp files, so let's just list it in .gitignore to document that we are never going to have a source file with that name" | 02:49 |
| → variable joined | 02:49 |
|
jrnieder
| [/end side-rant :)] | 02:50 |
|
frogonwheels
| jrnieder: huh. yeah. f* add . ;) | 02:50 |
| → niboshi joined | 02:50 |
|
PovAddict
| and there's a small chance that LZMA will do even better; 4 minutes left for compression to finish | 02:50 |
| ← Vampire0_ left | 02:51 |
|
PovAddict
| wait, I took the above number from a stale ls -l :P | 02:51 |
|
| rzip was actually 956MB -> 218MB | 02:51 |
|
jrnieder
| regedit: to answer your question --- frogonwheels's thingconfig.examplefile advice seems good | 02:52 |
|
regedit
| i was having an issue where I gitignored that kind of stuff but it was still being comitted, maybe because it was already added priorly... | 02:53 |
|
PovAddict
| yeah, gitignoring something won't remove it if you already added it | 02:53 |
|
jrnieder
| yep, .gitignore means "save me from accidentally adding it", not "ignore this file even if it is already being tracked" | 02:54 |
|
regedit
| so i have to make sure to .gitignore it before i do git add . right? | 02:54 |
| ← tiagobutzke left | 02:54 |
|
jrnieder
| regedit: nah, just use "git rm --cached" | 02:55 |
| ← maletor left | 02:55 |
|
regedit
| oh, ok | 02:55 |
|
| where can i find #git logs ? | 03:00 |
|
frogonwheels
| regedit: it's in the topic | 03:00 |
|
regedit
| i was looking for it.. | 03:00 |
|
variable
| hehe. git-svn lost to compiling gcc twice! | 03:01 |
|
regedit
| frogonwheels: i only see [1.7.7.2 | http://git-scm.com | Please skim http://jk.gs/gitchan.html before asking, or at least before giving up!] | 03:01 |
|
variable
| regedit: the second link | 03:01 |
|
regedit
| oh it's linked | 03:01 |
|
variable
| http://colabti.org/irclogger/irclogger_log/git?date=2011-11-07 | 03:01 |
|
regedit
| sorry, thanks! | 03:01 |
| ← bonhoffer left | 03:02 |
|
| variable modifies HKLM through regedit | 03:03 |
|
| frogonwheels would have been more impressed if it had been through a vim plugin.. or 'reg' command directly ;) | 03:04 |
|
| regedit has actually been having a hard time with environment variable s through CMD line 'REG' lately | 03:04 |
|
PovAddict
| eww | 03:04 |
|
regedit
| REG ADD HKCU\Environment /f /v HOME /d C:\foo\bar | 03:05 |
|
| that part works | 03:05 |
|
variable
| frogonwheels: regedit would have to /nick for that to work | 03:05 |
|
regedit
| but when I REG DELETE HKCU\Environment /f /v HOME , the variable still works | 03:06 |
|
| variable always works | 03:06 |
|
regedit
| I even developed a tiny little C++ executable to call windows api SendMessageTimeout() with flag 'WM_SETTINGCHANGE' for "Environment", didn't seem to help.. | 03:09 |
|
| it's like environment variables get cached or something | 03:09 |
| ← samrose left | 03:10 |
|
ouyes
| git is amazing | 03:11 |
| ← flavius left | 03:12 |
| ← PovAddict left | 03:13 |
| ← glennpratt left | 03:13 |
|
offby1
| variable: even on the Lord's Day? tsk tsk | 03:21 |
| ← CannedCorn left | 03:22 |
| → Targen joined | 03:22 |
| ← kerrick left | 03:27 |
| ← nicxvan left | 03:29 |
|
variable
| offby1: hrm? | 03:29 |
| → dreiss joined | 03:35 |
|
CpuID2
| hey guys… question, if i want to git pull and replace all local commits with whatever upstream has | 03:37 |
|
| whats the best flag to use? | 03:37 |
|
jrnieder
| git fetch upstream | 03:37 |
|
| git reset --hard upstream/master | 03:37 |
|
| something like that | 03:38 |
|
CpuID2
| hmm upstream doesn't exist in this case | 03:38 |
|
| what can i use to check what else its called?> | 03:38 |
|
jrnieder
| you mean, you use a url instead of a named remote? | 03:38 |
|
| git fetch http://host/path/to/repo | 03:38 |
|
| git log FETCH_HEAD | 03:38 |
|
| git reset --keep FETCH_HEAD | 03:39 |
| → herdingcat joined | 03:39 |
|
CpuID2
| ive done a git clone git://xxx to get this repo | 03:39 |
|
| by default does it name remotes? | 03:39 |
|
jrnieder
| origin | 03:39 |
|
CpuID2
| or is it optional? | 03:39 |
|
| ah | 03:39 |
|
jrnieder
| (see man git-remote) | 03:39 |
| ← alecthegeek left | 03:39 |
|
jast
| *automatic message* the 'git-remote' manpage can be found at <http://git.kernel.org/?p=git/git.git;a=blob_plain;f=git-remote.html;hb=html> | 03:39 |
|
CpuID2
| there we go :) | 03:39 |
| → mdel joined | 03:39 |
|
CpuID2
| git fetch origin | 03:39 |
|
| git reset --hard origin/master | 03:39 |
|
| :) | 03:39 |
|
| all good now | 03:40 |
|
regedit
| what is the difference between writing "foo/" versus writing "/foo/" to a .gitignore file at the root of the working dir ? | 03:40 |
| → injekt joined | 03:40 |
|
CpuID2
| i assume thats the equivalent of git pull -f && git reset --hard | 03:40 |
|
| in the event there were no local commits? | 03:40 |
| → alecthegeek joined | 03:41 |
| ← johnkpau_ left | 03:41 |
|
jrnieder
| CpuID2: I don't know what git pull -f does | 03:41 |
|
injekt
| How would one best go about displaying information about the first commit for a given file | 03:41 |
|
jrnieder
| try it? | 03:41 |
|
CpuID2
| oh i did | 03:41 |
|
| it pulls down commits from upstream | 03:41 |
|
| but it won't overwrite local commits | 03:41 |
| → Chib joined | 03:41 |
|
CpuID2
| i think git fetch origin works better there | 03:41 |
|
jrnieder
| jast: html docs moved to git.kernel.org/?p=git/git-htmldocs.git, master branch | 03:41 |
|
thansen
| I accidentally did a git pull and have conflicts as a result..is it possible/easy to get back to my pre-pull state? | 03:42 |
|
jrnieder
| thansen: man git-pull tells me "to cancel a conflicting merge, use git reset --merge" | 03:44 |
|
jast
| thansen: *automatic message* the 'git-pull' manpage can be found at <http://git.kernel.org/?p=git/git.git;a=blob_plain;f=git-pull.html;hb=html> | 03:44 |
|
thansen
| jrnieder: perfect, thanks | 03:45 |
|
jrnieder
| np | 03:45 |
|
regedit
| anyone please? what is the difference between "foo/" versus "/foo/" in a .gitignore file at the root of the working dir ? | 03:45 |
|
jrnieder
| regedit: man gitignore answers that in its cryptic way | 03:45 |
|
jast
| regedit: *automatic message* the 'gitignore' manpage can be found at <http://git.kernel.org/?p=git/git.git;a=blob_plain;f=gitignore.html;hb=html> | 03:45 |
|
jrnieder
| "If the pattern ends with a slash, it is removed for the purpose of the following description" | 03:45 |
|
regedit
| yeah i read that | 03:46 |
|
| cryptic indeed | 03:46 |
|
jrnieder
| "If the pattern does not contain a slash /, git treats it as a shell glob pattern and checks for a match against the pathname relative to..." | 03:46 |
|
| "Otherwise, git treats the pattern as a shell glob" that is not relative | 03:46 |
|
regedit
| i can't make heads or tails of most of that.. | 03:46 |
|
jrnieder
| which part? | 03:46 |
|
regedit
| in which case does it follow which rules, and what may those rules be.. | 03:47 |
|
jrnieder
| case 1: no '/' in the pattern (except a possible '/' at the end of the line) | 03:47 |
|
regedit
| "for the purpose of the following description" meaning for the purpose of clarity in the man page itself? | 03:47 |
|
jrnieder
| case 2: '/' in the pattern (ignoring a possible '/' at the end of the line) | 03:48 |
|
regedit
| by "relative" you mean relative to the working dir? | 03:49 |
|
jrnieder
| well, the rest of the sentence answers that question | 03:49 |
|
| relative to the directory containing the .gitignore file | 03:50 |
|
| meh, I'm being deliberately dense here, sorry about that | 03:50 |
|
regedit
| :P | 03:50 |
|
jrnieder
| a better answer to your question would be, "the relevant piece of documentation is completely unclear" | 03:50 |
|
| "git log -S'purpose of the following' Documentation/gitignore.txt" tells me it's Junio's fault | 03:50 |
|
| "I'd suggest writing a patch that makes it clear but possibly wrong and sending it to [email@hidden.address] and then the kind people on that list can correct your patch and give a clear answer and update the documentation at the same time" | 03:51 |
|
regedit
| i couldn't even write a wrong patch even if i tried | 03:52 |
|
| let alone clear | 03:52 |
|
jrnieder
| rats, I was about to say "that's great --- writing a right patch is even better" :) | 03:52 |
|
regedit
| hah | 03:52 |
| ← niboshi left | 03:52 |
|
variable
| why does git-svn clone take _forever_ ? | 03:53 |
|
jrnieder
| anyway, the idea is that '*.jpg' will match jpeg files throughout the repository | 03:53 |
|
| while '/*.jpg' will only match jpeg files in the toplevel directory | 03:53 |
|
| if you want to match .jpg files in the Documentation/ directory and its subdirectories, you can use the pattern '*.jpg' in Documentation/.gitignore | 03:54 |
|
| To match .jpg files in the Documentation/ directory/ and not in a subdirectory, you can use 'Documentation/*.jpg' in the toplevel .gitignore | 03:55 |
|
| or '/*.jpg' in Documentation/.gitignore | 03:55 |
|
CpuID2
| ok next… :) sorry for all the questions, whats the most sane way to check if a directory is a git repo? | 03:55 |
| ← caseymcg left | 03:55 |
|
regedit
| jrnieder: i am copypasta'ing all of this into a personal man page for future ref | 03:55 |
| → niboshi joined | 03:55 |
|
jrnieder
| regedit: yay :) | 03:56 |
|
| in case you missed it, that business about "that is not relative" up there was total nonsense | 03:56 |
|
regedit
| jrnieder: in fact, go right now and submit this patch "...that makes it clear but possibly wrong and sending it to [email@hidden.address] :P | 03:57 |
| → kerrick joined | 03:57 |
|
jrnieder
| hmph | 03:57 |
| → bindaasomatic joined | 03:57 |
|
jrnieder
| ok | 03:57 |
|
| can I have your name and email to cc and for a Reported-by? | 03:58 |
|
regedit
| er wow are you serious? ok.....i guess.. | 03:59 |
| ← timmywil left | 03:59 |
|
jrnieder
| or I can credit you as "regedit on irc", that's fine, too | 03:59 |
|
regedit
| er, how do i pm.. | 03:59 |
|
jrnieder
| /msg jrnieder hello | 03:59 |
| ← aidenhong left | 04:03 |
|
regedit
| jrnieder: i believe any bit of useful info that anyone produces shouldn't go to waste in some irc log. if this little snippet about gitignore helps someone, it should be find'able for others too | 04:04 |
| ← Fretta left | 04:05 |
|
regedit
| as such, one day bots should parse IRC logs and construct entire wikis out of 'em | 04:05 |
|
jrnieder
| heh | 04:06 |
| ← jimubao left | 04:06 |
|
jrnieder
| maybe some day #git will be replaced by jast's bot on a web form and an "edit" button | 04:07 |
|
regedit
| hah - wait, edit button? | 04:07 |
|
jrnieder
| to change its responses | 04:08 |
|
regedit
| right | 04:08 |
|
| is there such a thing as pulling down changes excluding specific files (possibly listed in the puller's .gitignores) ? | 04:09 |
|
| or must a fetch/merge/pull be complete | 04:09 |
|
chrisf
| regedit: not that i know of. | 04:09 |
|
regedit
| so how can I possibly have the following workflow; | 04:10 |
|
chrisf
| regedit: you could do a merge, and then hand-resolve some files back to "your" premerge state. | 04:10 |
|
| regedit: but that sounds like asking for pain. | 04:11 |
|
regedit
| 1) there is an upstream bare repo for pulling from and pushing to | 04:11 |
| ← eeanm left | 04:11 |
|
regedit
| 2) repo 'foo' wants to pull with the exception of some files, and repo 'bar' wants to pull including those files | 04:11 |
| → eeanm joined | 04:12 |
|
regedit
| 3) profit | 04:12 |
|
| any way of doing that? | 04:15 |
|
jrnieder
| regedit: which are these optional files? | 04:16 |
|
regedit
| jrnieder: Eclipse project files (.project, .buildpath, .settings/ folder etc) | 04:16 |
|
jrnieder
| oh, yuck, okay :) | 04:17 |
|
regedit
| developers who pull the repo should get those, but my production environment where the project (a php website) is deployed should not get those files | 04:17 |
| ← niloc132 left | 04:17 |
|
jrnieder
| write a makefile that only deploys the files you want deployed? | 04:18 |
| → CannedCorn joined | 04:18 |
| → macUzer joined | 04:19 |
|
regedit
| er, frankly i'm not so familiar with make and such tools... primarily because this isn't really the kind of project you need to compile / build / install etc, it's an as-is php website | 04:19 |
|
cmn
| then you know you have PHP available on the server, write a script in PHP that does it | 04:19 |
|
regedit
| cmn: what script? when will it be executed? | 04:20 |
| → Kazii joined | 04:20 |
| ← ArseneRei left | 04:20 |
|
cmn
| a deployment script to be executed whenever you want to deplay | 04:20 |
|
| like on post-receive | 04:20 |
|
jpalmer
| regedit: he's telling you, git isn't the appropriate place for this. if you want to "deploy" things other than what is in git, you need to write teh appropriate deploy tools. | 04:21 |
| → kennethreitz joined | 04:21 |
|
jpalmer
| you can either write the logic into your existing php app (if these files exist, remove them) or you can write an actual deploy script that only deploys the files you want it to. | 04:22 |
|
cmn
| right, git is a VCS, so that's where the files are; in order to put the files in the right place, you need some sort of script that takes those files and puts them in the right place | 04:22 |
| → regedit_ joined | 04:23 |
|
regedit_
| oops | 04:23 |
|
| did i miss anything | 04:23 |
|
| i was saying; | 04:23 |
|
| that's the weird thing about an as-is php website project managed by git; there's no 'deployment' process / script. a simply checked out wroking dir is all the website needs to run | 04:23 |
|
cmn
| I was saying: git is a VCS, so that's where the files are; in order to put the files in the right place, you need some sort of script that takes those files and puts them in the right place | 04:24 |
|
regedit_
| well this is news indeed... | 04:24 |
|
cmn
| you must have a deployment script, even if it consists just of 'GIT_TREE=/var/www/ git checkout -f' | 04:24 |
| ← regedit left | 04:25 |
|
cmn
| so just add delete those files after you've copied them to the right place | 04:25 |
| ← macUzer left | 04:25 |
| ← crakdmirror left | 04:25 |
|
regedit_
| cmn: but wouldn't I want to make use of the features of a VCS for my deployed website? | 04:25 |
|
| it helps for example for hotfixes | 04:25 |
|
cmn
| you can make your deployment script be your post-receive hook | 04:26 |
|
regedit_
| keeping track of 'em by merging deployment hotfixes back to the main upstream repo | 04:26 |
|
jpalmer
| regedit_: seriously, git is for maintainging your files. it's not your deployment toolkit. | 04:26 |
| ← Chib left | 04:26 |
|
regedit_
| jpalmer: see my last question then | 04:26 |
|
cmn
| regedit_: there's nothing stopping you; just make that script part of your post-receive hook | 04:27 |
|
| then you can deploy on each push, just remember that it's not "git" doing it, it's whatever script you wrote | 04:27 |
|
regedit_
| cmn: am googling about hooks now... | 04:27 |
|
jpalmer
| you can tie it in to your deployment toolkit, as cmn is explaining. but even for a 'simple web app' you should be using a deploy script, not git ;) | 04:27 |
| ← eephillip left | 04:27 |
| → crakdmirror joined | 04:28 |
|
cmn
| jpalmer: many HOWTOs tell you to use 'GIT_WOKRTREE=/var/www git checkout -f' as a deployment script | 04:28 |
|
| the line there is a bit blurry, I'd say | 04:28 |
|
EugeneKay
| Many HOWTOs are just plain wrong | 04:28 |
|
cmn
| no doubt about that | 04:28 |
|
regedit_
| the git checkout -f just won't work for me actually | 04:29 |
|
| as it does not perform deletions of removed files | 04:29 |
|
cmn
| ok, so you /do/ have a deployment script, however simple | 04:30 |
|
| just delete whatever files you're not interested in | 04:30 |
|
regedit_
| another reason i'd want to use git as my deployment versus manually scripting something - why should i copy extra data all over again for every new fix/enhancement? i'd want something like git to just update the changed stuff only | 04:30 |
|
cmn
| but git doesn't have any 'deploy' command, so you need to script it | 04:31 |
|
jpalmer
| regedit_: you're asking here. So my assumption is you want the advice from people who are experienced in these things. If that assumption is wrong, let me just say: it's your web app. and your code. Do with it as you please, even if that means ignoring great advice. | 04:32 |
|
regedit_
| jpalmer: i was inviting anyone in the know to refute my arguments | 04:32 |
| → Turicas joined | 04:32 |
|
jpalmer
| and, we have. | 04:32 |
|
jrnieder
| now, now | 04:33 |
|
| regedit_: how do you currently take care of deployment? | 04:33 |
|
jpalmer
| now the conversation is just starting to go in circles. you can write a deploy script.. or you can decide not to. but, I don't see a reason to keep asking the same questions | 04:33 |
|
regedit_
| jrnieder: i'm still setting things up manually, trying to figure out the best workflow | 04:33 |
|
jrnieder
| I see | 04:34 |
|
| the post-receive hook receives a list of ref updates for every push | 04:34 |
|
| the githooks manpage says a little about this | 04:34 |
|
| so if one of your requirements is that only the changed files get updated, you can use that information to find out what files changed | 04:35 |
|
regedit_
| upon cmn's advice i'm looking to see whether some git hook can help me with the last-minute delete operations, which (sofar) is all i need to 'deploy' | 04:35 |
| ← injekt left | 04:35 |
|
regedit_
| right | 04:35 |
|
| like i said, technically a plan-old checked out branch of this repo is (almost) all ready to go live | 04:35 |
|
| it's just some files here 'n there i'd want to pluck out | 04:36 |
|
jrnieder
| sure, and that might be what you want to go with | 04:36 |
|
| a plain git checkout, with some files plucked out | 04:36 |
|
| as long as you're careful about the webserver configuration (so as not to serve the .git and so on), that can work fine | 04:36 |
| ← ISF left | 04:36 |
|
jrnieder
| note, though, that git is not made for this | 04:36 |
|
| for example, when it updates files in the worktree, it follows the order of operations (1) remove changed files (2) write their new content out | 04:37 |
|
| if someone browses there between steps (1) and (2), 404 | 04:37 |
| ← madewokherd left | 04:38 |
| → Flogalen2 joined | 04:38 |
|
regedit_
| what you are saying would appear to advise one *not* to use the git working tree as the actual deployment, but rather make some deployment script/process which should perhaps copy all the content elsewhere where it will be used/served/deployed | 04:39 |
|
| to which i presented 2 arguments; | 04:39 |
| ← Flogalen left | 04:39 |
| ← bradj left | 04:40 |
|
regedit_
| 1) hotfixes 2) git has built in functionality for only updating/changing exactly and only whatever actually changed, i contrast to traditional copy commands which have no idea about versioning and diffs. shouldn't i prefer this? | 04:41 |
|
jrnieder
| well, in response to (1): | 04:41 |
|
regedit_
| *in contrast | 04:41 |
|
jrnieder
| I'm used to an edit/compile/test cycle when editing code | 04:42 |
| ← cronin left | 04:42 |
|
jrnieder
| when changes to two pages have to happen together to make sense, it avoids ever deploying a broken intermediate state | 04:42 |
| → jacknagel joined | 04:42 |
|
jrnieder
| however, I can understand that avoiding the 'compile' step would save some time | 04:43 |
|
| isn't it possible to serve a development copy of the page from the source repo? | 04:43 |
|
regedit_
| a php website is a tiny bit different.. you can edit and test immediately (with a webserver running) and php files are rather independent units | 04:44 |
|
| jrnieder: currenlty i was thnking of 3 repos on the server :D | 04:44 |
|
jrnieder
| ah, there are no separate development machines | 04:44 |
|
regedit_
| the upstream dev, a "sqa" repo for testing, and a production repo | 04:44 |
|
jrnieder
| that is what I was missing | 04:44 |
|
regedit_
| developers pull from the upstream dev repo | 04:44 |
|
| and push changes to there | 04:45 |
|
jrnieder
| is sqa where the hotfixes happen? | 04:45 |
| ← kukks left | 04:45 |
|
jrnieder
| ah, nvm, i'll let you finish :) | 04:45 |
|
regedit_
| production is where hotfixes may happen | 04:45 |
|
| (i'm done atm) | 04:45 |
|
jrnieder
| what is sqa for? | 04:45 |
| → angelsl joined | 04:46 |
|
variable
| jpalmer: poke | 04:46 |
|
regedit_
| since the upstream dev repo is bare, the sqa (quality assurance) pulls from the bare dev repo in order to checkout and test | 04:46 |
|
jrnieder
| I see | 04:47 |
|
| and devs get the eclipse metadata in addition to the production code | 04:47 |
|
regedit_
| yes it would be ideal if developers pulled from the upstream dev repo which had the eclipse crap included | 04:47 |
| → beautifulmind joined | 04:48 |
|
regedit_
| whereas by the time stuff reaches (sqa or for sure) production repo, those crap files should not be there | 04:48 |
|
jpalmer
| variable: stop poking me! | 04:48 |
|
variable
| jpalmer: may I pm you then? | 04:48 |
|
jpalmer
| I was joking ;) but sure. | 04:48 |
|
variable
| jpalmer: hehe. | 04:49 |
|
jpalmer
| fair warning: I'm headed to bed in like 15 though ;) | 04:49 |
|
jrnieder
| regedit: I would be tempted to not track the eclipse stuff in the repo at all | 04:49 |
|
| to have a separate repo for that and a script that new devs get to grab it | 04:49 |
| → stickyboot joined | 04:50 |
|
jrnieder
| but I'm probably making some wrong assumptions here --- e.g., when you add a new file to the site, does the eclipse metadata have to change for that? | 04:50 |
|
| if so, my separate repo idea would be a pain in the neck | 04:50 |
|
regedit_
| jpalmer: http://www.youtube.com/watch?v=MXgr6SYYNZM&t=24 | 04:50 |
| ← Swimming_Bird left | 04:51 |
|
regedit_
| jrnieder: i don't think the eclipse files change like that | 04:51 |
|
| jrnieder: like when you add files or such | 04:51 |
|
jrnieder
| ah, that's good to hear | 04:51 |
|
regedit_
| they do change of you modify some eclipse specific settings and paths etc | 04:52 |
|
| *if you | 04:52 |
|
jrnieder
| do those change very often? | 04:52 |
|
| are those even sharable? | 04:52 |
|
| I guess all the devs have a similar working environment | 04:52 |
|
regedit_
| actually, any changes that occur to those files - i don't ever want comitted / pushed to upstream | 04:52 |
|
jrnieder
| yeah, so then I'd suggest having a tarball (or git repo if they ever do change) with just those files | 04:53 |
|
| and telling devs, "to get started, clone this repo and extract this tarball" | 04:53 |
|
regedit_
| hmm... | 04:53 |
|
jrnieder
| .gitignore can ignore them | 04:53 |
|
regedit_
| i see | 04:54 |
| ← fpcfan left | 04:57 |
| → caseymcg joined | 04:58 |
| → fpcfan joined | 04:59 |
|
regedit_
| ye i think i'll go with that jrnieder, devs will have to figure it out on their end... it's better this way, what if they don't like eclipse? ;) | 05:03 |
| ← dna left | 05:03 |
| ← kermit left | 05:05 |
| → kermit joined | 05:05 |
|
regedit_
| jrnieder: let's examine another little part of our gitignore research (for the kernel.org patch) ; | 05:05 |
| ← fpcfan left | 05:06 |
|
regedit_
| jrnieder: you said quote "*.jpg will match jpeg files throughout the repository, while /*.jpg will only match jpeg files in the toplevel directory" | 05:06 |
|
| jrnieder: is the same true for directories? | 05:06 |
| → fpcfan joined | 05:07 |
|
jrnieder
| yep | 05:07 |
|
| a '/' at the end of a pattern just means "match directories only" and does not affect the pattern in any other way | 05:07 |
|
regedit_
| will 'foo/' match any directory named foo, wherever this foo directory may be in the repo (/foo/, /dir1/foo/, dir2/dir3/foo/ ) | 05:07 |
|
| aha | 05:07 |
|
jrnieder
| but "foo" does not match a file named foo throughout the repo | 05:08 |
|
regedit_
| what would be an example of "any other way" | 05:08 |
| → eephillip joined | 05:09 |
|
jrnieder
| in fact, I don't think it's possible to write a gitignore pattern that will match a file named foo throughout the repo | 05:09 |
| ← d4rk1ink left | 05:09 |
|
jrnieder
| here, let me try something | 05:09 |
|
regedit_
| wait really? that's weird.. | 05:09 |
|
jrnieder
| no, you're right | 05:09 |
|
| the documentation's wrong | 05:09 |
|
| gah | 05:09 |
|
| I think the only way I'm going to find the rules here is by looking at the code :/ | 05:10 |
|
regedit_
| or brute force testing? :) | 05:10 |
|
| we should make a test repo, with all sorts of foo folders and bar files | 05:11 |
|
| and .gitignore the hell out of it in every conceivable way | 05:11 |
|
jrnieder
| well, that's how I found out that you're right and the doc seems to be wrong... | 05:11 |
|
| but dir.c is not so hard to read :) | 05:11 |
| → haseeb joined | 05:12 |
|
jrnieder
| anyway, to answer your question, yes, 'foo/' will match a directory named foo, wherever the foo is in the tree | 05:12 |
|
regedit_
| wow awesome | 05:12 |
| ← orafu left | 05:13 |
| → orafu joined | 05:13 |
|
regedit_
| and 'foo' will match a file or folder? or both? | 05:13 |
|
jrnieder
| both | 05:13 |
|
| if you want just files, use "foo" followed by "!foo/" | 05:13 |
|
regedit_
| holy crap that is AWESOME | 05:13 |
|
| it's a shame someone realy put good thought into .gitignore functionality, but didn't document it well.. | 05:14 |
|
jrnieder
| yeah, thanks for the examples | 05:14 |
|
| still working on the strawman manpage change :) | 05:15 |
|
regedit_
| awesome :D please show me when it's ready | 05:15 |
|
| or, will i get it to my email? | 05:15 |
| ← codetroll left | 05:15 |
| → Chib joined | 05:16 |
| → Prasad joined | 05:17 |
| → dna joined | 05:17 |
| → the-fonz joined | 05:17 |
| ← eephillip left | 05:18 |
|
EugeneKay
| I think its a shame gitignore doesn't do regex | 05:18 |
| ← CannedCorn left | 05:18 |
| ← the-fonz left | 05:22 |
| → OOPMan joined | 05:25 |
| → aspotashev joined | 05:27 |
| → jesteracer joined | 05:27 |
| → mattalexx joined | 05:31 |
| ← regedit_ left | 05:35 |
| ← Kazii left | 05:39 |
|
mattalexx
| I just made some changes in a detached-head submodule, committed them, cd'ed to the root of the parent repo, rand "git submodule update". When I went back to the submodule, my changes were gone and the commit was gone. Did it really just do that? Usually git will make you add -f somewhere in order to delete work.. | 05:42 |
| → aspotashev| joined | 05:43 |
| → freimatz2 joined | 05:44 |
| ← aspotashev left | 05:44 |
|
kevlarman
| mattalexx: your commit is still in the reflog of that submodule | 05:45 |
|
| mattalexx: and since submodules always have a detached head, you shouldn't be developing in them | 05:45 |
|
| mattalexx goes to google "reflog" | 05:45 |
|
kevlarman
| mattalexx: man git reflog | 05:45 |
|
jast
| mattalexx: *automatic message* the 'git-reflog' manpage can be found at <http://git.kernel.org/?p=git/git.git;a=blob_plain;f=git-reflog.html;hb=html> | 05:45 |
|
EugeneKay
| mattalexx - submodules are supposed to be read-only, IIRC | 05:45 |
|
| Don't work i them | 05:46 |
|
| in them | 05:46 |
|
mattalexx
| kevlarman, Yes, I've heard that. But how should I work on them if I can't put them into a project and give them context? | 05:46 |
|
| This one, for example, is a plugin. Without the parent repo, it doesn't work | 05:47 |
|
kevlarman
| mattalexx: 2 choices | 05:47 |
|
| 1) don't use submodules | 05:47 |
|
| 2) clone the repo on its own to do development on it | 05:47 |
|
| ( 1a) you may find git slave interesting) | 05:48 |
| ← haseeb left | 05:48 |
|
mattalexx
| kevlarman, So everytime I need to test, I push from the standalone repo and pull from the submodule> | 05:48 |
|
| ? | 05:48 |
|
| Thanks, I'll look into it | 05:48 |
| ← mikepack left | 05:50 |
| → mikepack joined | 05:51 |
|
mattalexx
| kevlarman, Oh thank God for reflog. That was freaking me out a little bit. | 05:52 |
|
kevlarman
| mattalexx: git makes it *very* difficult to destroy your code accidentally | 05:52 |
|
mattalexx
| kevlarman, Yes, that's why I was only a little freaked out. I figured it would be somewhere. | 05:53 |
|
| kevlarman, Plus I was using git add -p to add my changes, and the diff was still in my CLI scrollback buffer as a last resort. | 05:54 |
|
f00li5h
| mattalexx: | 05:54 |
|
mattalexx
| f00li5h, Yes? | 05:54 |
|
f00li5h
| o_O | 05:54 |
|
| sorry, mistab | 05:54 |
| ← mikepack left | 05:55 |
| → phaedrix joined | 05:55 |
| ← aspotashev| left | 05:59 |
| ← ziggles left | 06:00 |
| → hwrdprkns_ joined | 06:00 |
| ← hwrdprkns left | 06:01 |
| ← jacknagel left | 06:01 |
| → hwrdprkns joined | 06:01 |
| → tiglog joined | 06:04 |
| ← hwrdprkns_ left | 06:05 |
| → hwrdprkns_ joined | 06:07 |
| → d4rk1ink_ joined | 06:07 |
| → w09x joined | 06:07 |
| → marthinal joined | 06:08 |
| → ThomasLocke joined | 06:09 |
| → dSebastien joined | 06:09 |
| ← beautifulmind left | 06:09 |
| → hwrdprkns__ joined | 06:09 |
| ← dSebastien left | 06:10 |
| ← hwrdprkns left | 06:10 |
| → airborn joined | 06:11 |
| → drake01 joined | 06:12 |
| ← subbyyy left | 06:12 |
| ← hwrdprkns_ left | 06:13 |
| ← neurodrone left | 06:14 |
| ← eno left | 06:17 |
| ← lunchub left | 06:19 |
| → eno joined | 06:19 |
| ← sangeeths left | 06:21 |
| → lunchub joined | 06:22 |
| → Dave^| joined | 06:25 |
| → harsh joined | 06:27 |
| ← baburdick left | 06:28 |
| ← gianlucadv left | 06:29 |
| ← Prasad left | 06:29 |
| → nyuszika7h joined | 06:31 |
| → sangeeths joined | 06:33 |
| → codetroll joined | 06:34 |
| → TrineLocke joined | 06:34 |
| → Prasad joined | 06:35 |
| ← Prasad left | 06:35 |
| → ketas-ts joined | 06:36 |
| ← gigamonkey left | 06:36 |
| → Prasad joined | 06:36 |
| ← harsh left | 06:37 |
| ← drev1 left | 06:40 |
| ← alc left | 06:41 |
| ← Turicas left | 06:43 |
| → Turicas joined | 06:43 |
| ← ceej left | 06:44 |
| → shruggar joined | 06:45 |
| ← Cogito left | 06:47 |
| → Cogito joined | 06:47 |
| → flyz_ joined | 06:48 |
| → na3r joined | 06:49 |
| → slonopotamus joined | 06:50 |
| → harsh joined | 06:51 |
| ← Turicas left | 06:52 |
| ← harsh left | 06:52 |
| ← __main__ left | 06:54 |
| → mishok13 joined | 06:56 |
| → __main__ joined | 07:03 |
| ← ouyes left | 07:04 |
| → harshpb joined | 07:05 |
| ← shruggar left | 07:06 |
| → hwrdprkns joined | 07:10 |
| → stoffus joined | 07:12 |
| → vdv joined | 07:12 |
| spyraway → napdragon | 07:12 |
| ← TheMoonMaster_ left | 07:13 |
| ← slonopotamus left | 07:13 |
| ← hwrdprkns__ left | 07:13 |
| ← hwrdprkns left | 07:15 |
| → hwrdprkns joined | 07:17 |
| → amigojapan joined | 07:17 |
| → artib joined | 07:18 |
| → qian_pc joined | 07:18 |
| → ouyes joined | 07:20 |
| → cbreak-work joined | 07:20 |
| ← mishok13 left | 07:22 |
| ← lunchub left | 07:24 |
| → meebey joined | 07:24 |
| → stodan joined | 07:25 |
| → aidenhong joined | 07:26 |
| → ReekenX joined | 07:29 |
| → psoo joined | 07:29 |
| ← psoo left | 07:29 |
| → nicoulaj joined | 07:31 |
| ← dreiss left | 07:32 |
| → henrikbjorn joined | 07:35 |
| ← qian_pc left | 07:39 |
| ← caseymcg left | 07:39 |
| → flijten joined | 07:39 |
| ← imarcusthis left | 07:39 |
| ← amigojapan left | 07:40 |
| ← Prasad left | 07:42 |
| → the-fonz joined | 07:43 |
| → jceb joined | 07:43 |
| → ph^ joined | 07:44 |
| ← quadz left | 07:45 |
| ← lnostdal_ left | 07:46 |
| → GeorgeSebastian joined | 07:47 |
| → Prasad joined | 07:47 |
| → mishok13 joined | 07:49 |
| ← Chib left | 07:50 |
| → dangerousdave joined | 07:52 |
| ← ph^ left | 07:52 |
| ← dangerousdave left | 07:52 |
| → lnostdal_ joined | 07:52 |
| → ph^ joined | 07:53 |
| ← GeorgeSebastian left | 07:53 |
| ← Praise left | 07:54 |
| → Praise joined | 07:54 |
| ← vdv left | 07:56 |
| ← airborn left | 07:56 |
| ← mishok13 left | 07:57 |
| → ipalaus_ joined | 07:57 |
| → flyz- joined | 07:59 |
| → ph^_ joined | 08:00 |
| ← artib left | 08:00 |
| dkannan|away → dkannan | 08:01 |
| → Turicas joined | 08:01 |
| ← flyz_ left | 08:02 |
| → nax joined | 08:03 |
| → dc5ala joined | 08:04 |
| ← ph^ left | 08:04 |
| → vdv joined | 08:05 |
| → GeorgeSebastian joined | 08:06 |
| ← drake01 left | 08:10 |
| ← alecthegeek left | 08:11 |
| ← dkannan left | 08:12 |
| → qian_pc joined | 08:13 |
| → dkannan joined | 08:13 |
| → jhoepken joined | 08:13 |
| ← qian_pc left | 08:13 |
| → artib joined | 08:14 |
| → mishok13 joined | 08:15 |
| → lut4rp joined | 08:15 |
| ← lut4rp left | 08:15 |
| → lut4rp joined | 08:15 |
| ← lnostdal_ left | 08:15 |
| → qian_pc joined | 08:15 |
| → ngulden joined | 08:15 |
| → saschagehlich joined | 08:17 |
| → berserkr joined | 08:18 |
| → opalka joined | 08:19 |
| ← opalka left | 08:19 |
| → opalka joined | 08:19 |
| ← qian_pc left | 08:21 |
| ← lut4rp left | 08:22 |
| → JohnBat26 joined | 08:22 |
| → Dave^|| joined | 08:22 |
| → RaceCondition joined | 08:23 |
| → lut4rp joined | 08:23 |
| ← lut4rp left | 08:23 |
| → lut4rp joined | 08:23 |
| ← gerard0 left | 08:24 |
| → jamiemill joined | 08:25 |
| ← Dave^| left | 08:25 |
| → garrys_game joined | 08:26 |
| → rendar joined | 08:26 |
| → heliom joined | 08:27 |
| ← stickyboot left | 08:27 |
| ← RaceCondition left | 08:28 |
| → lnostdal_ joined | 08:29 |
| → eijk joined | 08:29 |
| → Codif joined | 08:29 |
| ← harshpb left | 08:30 |
| ← heliom_ left | 08:30 |
| ← cooloney left | 08:31 |
| ← flyz- left | 08:32 |
| → alansaul joined | 08:32 |
| → cooloney joined | 08:32 |
| ← Prasad left | 08:33 |
| ← jamiemill left | 08:33 |
| → Prasad joined | 08:33 |
| → qian_pc joined | 08:34 |
| ← qian_pc left | 08:34 |
| → qian_pc joined | 08:35 |
| → psoo joined | 08:36 |
| → _kud joined | 08:36 |
| → teweWork joined | 08:36 |
| → jmah joined | 08:37 |
| → childbear joined | 08:45 |
| → Sitethief joined | 08:46 |
| → Spockz joined | 08:46 |
| → harshpb joined | 08:47 |
| → _Qman joined | 08:50 |
| → pixelboy_ joined | 08:51 |
| → safinaskar joined | 08:51 |
| → wbednarski joined | 08:52 |
| → thiago joined | 08:54 |
| ← ziro` left | 08:55 |
| → marekw2143 joined | 08:55 |
| → ziro` joined | 08:56 |
| → psakrii joined | 08:56 |
|
marekw2143
| hi, doing git add . does add all directories but no their subdirectories/subfiles | 08:57 |
| ← mitsuhiko left | 08:59 |
|
thiago
| are those subdirectories ignored? | 08:59 |
|
marekw2143
| thiago: no, my .gitignore has only one line: lib/ | 09:00 |
|
jrnieder
| marekw2143: pastebin it and someone might have ideas | 09:01 |
| → shruggar joined | 09:01 |
|
thiago
| marekw2143: and the subdir in question isn't lib? | 09:01 |
|
marekw2143
| no | 09:01 |
| ← freimatz2 left | 09:03 |
|
jrnieder
| hm, let's see if this works: !repro | 09:03 |
|
jast
| hm: *automatic message* please paste (e.g. using http://git.pastebin.com/) a transcript of your terminal session in which the problem occurred so that we can troubleshoot more easily. | 09:03 |
|
jrnieder
| ah, yay | 09:04 |
|
cbreak-work
| marekw2143: type git status | 09:04 |
|
marekw2143
| http://paste.ubuntu.com/730798/ | 09:04 |
|
cbreak-work
| does it show the directories you want to add but are not added as untracked? | 09:04 |
| ← BlindOracle left | 09:04 |
| → hurikhan|Work joined | 09:04 |
|
jrnieder
| ah, submodules | 09:04 |
| → nudb2 joined | 09:05 |
|
marekw2143
| so both dirs: django-starter and django_jsonservice are added to repo, but their content isnt | 09:05 |
| ← babilen left | 09:05 |
|
jrnieder
| I don't think git add --recurse-submodules exists yet | 09:05 |
|
| anyone know a good submodule tutorial? | 09:05 |
|
cbreak-work
| it makes no sense to recurse into submodules | 09:06 |
|
jrnieder
| sure it could | 09:06 |
| → mklappstuhl joined | 09:06 |
|
jrnieder
| git add --recurse-submodules would have to auto-commit or something, though | 09:06 |
|
marekw2143
| but it's such a common thing adding recursively all files/dirs - how to acheive that? | 09:06 |
|
jrnieder
| it would be weird | 09:06 |
|
thiago
| no | 09:06 |
|
| not with submodules | 09:06 |
|
cbreak-work
| it makes no sense | 09:06 |
| → padams joined | 09:06 |
|
cbreak-work
| submodules are separate repositories | 09:06 |
|
| they have a separate index | 09:06 |
|
| everything about them is separate | 09:07 |
|
marekw2143
| it's strange | 09:08 |
|
thiago
| yes, it is | 09:08 |
|
marekw2143
| because when I entered into one directory, and then did: git add . | 09:08 |
|
thiago
| but that's how it is | 09:08 |
|
marekw2143
| then, all subdirectories and subfiles of that dir were added | 09:08 |
|
| why didn't it do at first add ? | 09:08 |
|
jrnieder
| markew2143: submodules are an odd beast | 09:08 |
|
| my advice is to learn about them first | 09:09 |
|
marekw2143
| why submodules? | 09:09 |
|
jrnieder
| because your repository has submodules | 09:09 |
|
| they are not just subdirectories | 09:09 |
|
marekw2143
| ohh, true ! | 09:09 |
|
| I've forgotten - my subprojects have separate .git directory, yes | 09:10 |
|
cbreak-work
| everything about them is separate | 09:10 |
| ← Prasad left | 09:11 |
| → Prasad joined | 09:11 |
| ← ReekenX left | 09:11 |
| → phluks joined | 09:12 |
| → kriegerod joined | 09:12 |
|
marekw2143
| uff, thank you all for help | 09:12 |
| ← alansaul left | 09:12 |
| ← w09x left | 09:12 |
| → _md joined | 09:13 |
| → Prateekchy joined | 09:15 |
| → ReekenX joined | 09:15 |
|
marekw2143
| do you know some public free git server which allows private repositories (not visible to others)? | 09:16 |
| → whitman joined | 09:16 |
| ← lnostdal_ left | 09:17 |
|
phluks
| marekw2143: www.assembla.com - though I dont have extensive experience with it. | 09:17 |
|
m1sc
| marekw2143: bitbucket? | 09:17 |
|
marekw2143
| ooo, nice | 09:17 |
| → BlindOracle joined | 09:17 |
|
marekw2143
| which one is better ?:) | 09:17 |
| → Shusshu joined | 09:18 |
| → beautifulmind joined | 09:19 |
| ← yann2 left | 09:19 |
| → drake01 joined | 09:20 |
| → freimatz2 joined | 09:21 |
| ← _kud left | 09:22 |
|
phluks
| bitbucket looks shinyer :) | 09:23 |
| → PigeonFriend joined | 09:24 |
| → gusnan joined | 09:25 |
| → babilen joined | 09:28 |
|
marekw2143
| yeah, and I think it's more reliable than assembla in offering free plan | 09:29 |
| ← ReekenX left | 09:30 |
| ← Prateekchy left | 09:32 |
| → ReekenX joined | 09:32 |
| → _kud joined | 09:32 |
| → Trezker joined | 09:34 |
| → canton7 joined | 09:34 |
| → khmarbaise joined | 09:37 |
| → achadwick joined | 09:37 |
| ← the-fonz left | 09:37 |
| → envi_ joined | 09:38 |
| → jamiemill joined | 09:38 |
| → evildmp joined | 09:39 |
| → tvw joined | 09:40 |
| → iknite joined | 09:40 |
| ← ReekenX left | 09:41 |
| → solofight joined | 09:42 |
| → muv joined | 09:42 |
|
solofight
| people git not available for mac os lion version ? http://code.google.com/p/git-osx-installer/downloads/list?can=1&q=&colspec=Filename+Summary+Uploaded+Size+DownloadCount+UploadedBy | 09:42 |
|
| or am i looking at the wrong place ? | 09:43 |
| → tatsuya_o joined | 09:43 |
|
rue
| Homebrew, at least | 09:43 |
| → alecthegeek joined | 09:44 |
|
solofight
| rue, @ me ? | 09:44 |
| → ReekenX joined | 09:44 |
|
rue
| solofight: Ah, yes. Dunno about other methods | 09:45 |
|
thiago
| solofight: install the snow leopard one | 09:45 |
| → dharrigan joined | 09:46 |
| ← dharrigan left | 09:46 |
| → dharrigan joined | 09:46 |
| ← Codif left | 09:46 |
| ← harshpb left | 09:46 |
|
solofight
| thiago: you mean the same dmg file for snoe leopard will work for lion as well ? | 09:46 |
| ← canton7 left | 09:46 |
|
thiago
| solofight: yes | 09:46 |
| → Codif joined | 09:46 |
|
thiago
| solofight: "snowleopard" in the name indicates the minimum version | 09:46 |
|
solofight
| thiago: oh, ok ! but shouldn't it say that snowleopard and above or something like that ! | 09:47 |
|
thiago
| in the file name? no | 09:47 |
| → dr_lepper joined | 09:47 |
| ← dr_lepper left | 09:47 |
| → dr_lepper joined | 09:47 |
| → brian_g joined | 09:48 |
|
solofight
| thiago: people get confused because there is a installer for leopard and then snow leopard which makes them look for a installer for lion | 09:48 |
|
| ? | 09:48 |
| ← jrnieder left | 09:48 |
| ← fisted_ left | 09:49 |
| → harshpb joined | 09:49 |
|
thiago
| I don't see an installer for leopard and one for snow leopard, for the same Git version | 09:49 |
|
solofight
| thiago: ohhhh | 09:50 |
|
thiago
| they're all Leopard, except for the ones from the past 4 months | 09:50 |
|
solofight
| thiago: are you a mac user ? one can upgrade their OS for free of charge ? or it costs ? | 09:50 |
|
thiago
| I'm not a Mac user | 09:51 |
|
solofight
| thiago: ok thank you very much for the help. will try what you have sugested | 09:52 |
| → fisted joined | 09:52 |
|
solofight
| thiago:++ | 09:52 |
|
| thiago: ++ | 09:52 |
| ← replore left | 09:52 |
|
solofight
| Gitzilla: thiago ++ | 09:52 |
| → iPHP joined | 09:52 |
|
solofight
| :( | 09:52 |
|
sitaram
| solofight: http://www.stickycomics.com/computer-update/ | 09:53 |
|
solofight
| thank you rue | 09:53 |
|
| hey sitaram :) thats a good one | 09:54 |
| ← Praise left | 09:54 |
| → bonhoffer joined | 09:54 |
| → Praise joined | 09:55 |
| ← eean left | 09:55 |
|
solofight
| sitaram: good site btw, thanks for letting me know | 09:56 |
|
| solofight taking a break and browsing more comics @ stickycomics | 09:56 |
| → eean joined | 09:57 |
| Silex- → Silex | 09:58 |
|
sitaram
| :) | 09:59 |
|
EugeneKay
| Sneeze | 10:00 |
| → akamike joined | 10:01 |
| → kalusn joined | 10:01 |
| → glcrazy joined | 10:02 |
| → glcrazy_ joined | 10:02 |
| → endy_c joined | 10:03 |
| ← drake01 left | 10:03 |
| ← xiehong left | 10:04 |
|
endy_c
| What is the pro/con of using SSH compared to HTTPS? | 10:04 |
| → alecat joined | 10:04 |
|
thiago
| endy_c: ssh works | 10:04 |
| ← qian_pc left | 10:04 |
|
wereHamster
| both work | 10:04 |
|
thiago
| using the new magic http, yes | 10:05 |
|
| the old dumb transport was really bad | 10:05 |
|
FauxFaux
| endy_c: SSH is likely to be significantly easier to set-up, especially if you already have unix aware users. | 10:06 |
| ← opalka left | 10:06 |
|
cmn
| if your uses don't know about SSH and SSH keys, then HTTPS might be easier for them, because they just have to remember a user/pass combination | 10:07 |
|
endy_c
| ok got it, thanks all | 10:07 |
|
nevyn
| cmn: if you have a smallish number of users. then just setting it up for them is probably less grief than dealing with passwords | 10:09 |
|
| I really hate passwords | 10:09 |
| ← nudb2 left | 10:09 |
| ← ReekenX left | 10:09 |
| → ReekenX joined | 10:09 |
|
cmn
| sure, if you can go around the office and do it for them and then tell them it works magically, that might be the easiest option | 10:10 |
|
solofight
| nevyn: i can manage them for you :) | 10:10 |
| → opalka joined | 10:10 |
|
solofight
| cmn: cant you route all the ssh requests with a same key or something ? | 10:11 |
|
FauxFaux
| We have both SSL client certs and ssh keys here. Explaining to users that there's two different kinds of magic and only one of them breaks on a regular basis (the SSL ones, obviuosly) is great fun. | 10:11 |
|
| solofight exploring the possibility of routing an ssh request via a middleman | 10:11 |
|
cmn
| solofight: set up the same key for all users? sure, but then you can't use permissions | 10:11 |
|
solofight
| cmn: then identify the key based on their system login id and attach them dynamically with their ssh request | 10:12 |
|
| ? | 10:12 |
|
| using username and password is not recommended by several experts | 10:12 |
|
| when it comes to ssh | 10:13 |
|
cmn
| that sound extraordinarilly contrived; you want to MITD all your users so you can dynamically allocate them a key? | 10:13 |
|
| MITM* | 10:13 |
|
solofight
| endy_c: howd you even compare ssh with https ! | 10:14 |
|
nevyn
| FauxFaux: we don't do certificate or key management very well at a organisational level | 10:14 |
|
| we're barely competent at password management | 10:14 |
| → guardian joined | 10:14 |
|
EugeneKay
| Post it notes under keyboards ftw | 10:14 |
|
cmn
| solofight: oh, I see, you want to have them login to a computer with user/pass and that computer would have their "real" keys in it... I don't think that would solve the problems with SSH passords | 10:15 |
|
solofight
| cmn: yeah the level of stupidity/usability depends on your situation | 10:15 |
| ← wanders left | 10:15 |
|
solofight
| correct | 10:15 |
|
guardian
| hello, i'm using git rebase -i to edit a commit. how can i undo commited changes with git ammend? i'm trying to edit a commit so that commit doesn't modify a file but i want to keep other changes | 10:15 |
|
FauxFaux
| nevyn: Basically the only benifit of an enterprise (1,000+ person) organisation is that you have to not have your entire IT team spending their entire life on passwords. And then they have a Domain and misconfigure it, woop. | 10:15 |
|
solofight
| cmn: why not ? | 10:15 |
|
endy_c
| solofight: I have this option for accessing bitbucket | 10:16 |
|
FauxFaux
| guardian: 'e'dit the commit, checkout HEAD # to revert the file you don't want, then rebase --continue. | 10:16 |
|
nevyn
| FauxFaux: dude.. I work for a 60,000 seat organisation | 10:16 |
| ← _kud left | 10:16 |
|
FauxFaux
| Pwned. | 10:16 |
|
thiago
| guardian: git reset -p HEAD~ | 10:16 |
|
nevyn
| FauxFaux: user passwords are under control it's passwords for things like root, oracle, and tibco that suck | 10:16 |
|
guardian
| git reset -h HEAD~ path/to/file would work? | 10:17 |
|
| git reset -p HEAD~ path/to/file would work? | 10:17 |
|
| sorry for typo | 10:17 |
|
thiago
| guardian: yes | 10:17 |
|
solofight
| endy_c: oh so you mean advantages of using ssh over https or vice versa when it comes to pushing code to a server.. ? | 10:17 |
|
thiago
| if it's the entire file, you can drop the -p | 10:17 |
|
endy_c
| solofight: yep | 10:17 |
|
guardian
| it's the entire file | 10:17 |
|
thiago
| guardian: reset it like that, commit --amend | 10:18 |
|
| guardian: then decide what to do with the changes | 10:18 |
| ← envi_ left | 10:18 |
|
cmn
| thiago: they'd still have to use a password, which makes it attackable from a package-timing front | 10:19 |
|
thiago
| cmn: they who? | 10:19 |
|
cmn
| your users | 10:19 |
|
| thiago doesn't have users | 10:20 |
| → Chib joined | 10:21 |
|
cmn
| thiago: sorry, I meant solofight | 10:21 |
|
solofight
| endy_c: i think turn around time comes into play. stay here for deep view point from experts | 10:21 |
| → alansaul joined | 10:21 |
|
guardian
| thiago: thx; would have FauxFaux suggestion worked as well? | 10:21 |
|
thiago
| guardian: no | 10:21 |
| ← teukka left | 10:22 |
| → teukka joined | 10:22 |
|
thiago
| guardian: revert would have created a new commit | 10:22 |
|
| guardian: unless you rebase again and squash the two commits together | 10:22 |
|
guardian
| ok thx | 10:23 |
|
| i didn't want a new commit; just rebase -i and remove a file's changes before push | 10:23 |
| → _kud joined | 10:23 |
| ← aidenhong left | 10:25 |
|
solofight
| cmn: cant you make them as thin clients who logs into a central machine the moment they switch on and then they connect through ssh from that machine ? | 10:26 |
|
| cmn: if i understood your problem correctly ^ | 10:26 |
|
endy_c
| solofight: yep, will definitely stay around to listen | 10:26 |
|
cmn
| that wouldn't help against the timing attacks | 10:26 |
|
| when you use a password with SSH, it sends a packet for each letter (because humans are slow) so looking at the time difference between those packets, you can reduce which passwords they may be using | 10:27 |
|
| solofight reading more about time attacks | 10:27 |
|
thiago
| no it doesn't | 10:27 |
|
| well, not the login password | 10:28 |
|
| if it's *after* the connection was established, then yes, one packet per letter | 10:28 |
|
cmn
| hm, I thought I read that some people had managed to do this with the SSH login pw | 10:28 |
|
solofight
| cmn: nooo, am talking about using an rsa key with 1024 or 2048 bits for ssh | 10:28 |
|
cmn
| ah, right, you want them to use that and change that key from under them at some point | 10:29 |
| → mrsrikanth joined | 10:29 |
|
thiago
| the login password isn't sent until you press the Enter key | 10:29 |
|
solofight
| thiago: a typical example of what you said - sudo ing in the remote machine after gaining ssh access as normal user ? | 10:29 |
|
thiago
| solofight: yes | 10:30 |
|
solofight
| thiago: aint the communication encrypted ? | 10:30 |
|
thiago
| solofight: it is | 10:30 |
|
FauxFaux
| "OpenSSH_5.8p1 Debian-7ubuntu1, OpenSSL 1.0.0e 6 Sep 2011" doesn't send a packet until you return the password here, cmn, according to wireshark. | 10:31 |
| ← MacGyverNL left | 10:31 |
|
cmn
| thiago: ok, the internet says you're right :) it looks like I misunderstood the attack | 10:31 |
|
solofight
| lets say for each character user has pressed the encryption algo sends 1024 bits => aint that a huge number to decode to guess a password ? | 10:31 |
|
thiago
| it is | 10:31 |
|
| I never claimed you could decrypt the session | 10:31 |
|
| that was cmn | 10:31 |
|
solofight
| alright | 10:32 |
|
cmn
| I didn't say you could decrypt the session, I thought you could guess the password | 10:32 |
|
FauxFaux
| solofight: The implication is that you can work out how much stuff someone is typing in by how many packets there are; which you certainly can with my irssi setup. | 10:32 |
|
thiago
| a "timing attack" could try to guess the password from the timing of the packets, applying some heuristics based on how fast you can type it | 10:32 |
|
cmn
| (which does sort-of amount to the same...) | 10:32 |
|
solofight
| so cmn timing attack are useless even performed unless they are using a super computer to decrypt your codes | 10:32 |
|
FauxFaux
| solofight: a) Supercomputers can't even remotely break any sensible encryption algorithm, as far as we know. b) No, any information about anything counts as a cryptographic breach. | 10:33 |
|
solofight
| FauxFaux: ok so its going to be a guess with hell lot of possibilities... what happens after that ? | 10:33 |
|
cmn
| solofight: no, because the timing of the packets (after logging in) put together with a typing heuristic gives you a smallish (relatively) amount of keypresses that the user might have done | 10:34 |
| → MacGyverNL joined | 10:34 |
| ← MacGyverNL left | 10:34 |
| → MacGyverNL joined | 10:34 |
|
FauxFaux
| solofight: I only use three passwords, either 'a', 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' or 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'. My username is [email@hidden.address] and I use ssh. You have one attempt to get the right password, or I'll shoot you in the head. What do you need? | 10:34 |
| ← evildmp left | 10:35 |
|
solofight
| FauxFaux: number of key strokes | 10:35 |
| → Vile joined | 10:36 |
|
FauxFaux
| Which, if ssh wasn't implemented sensibly, you could get via. this timing attack, without breaking the encryption, right? | 10:36 |
| → sweb joined | 10:36 |
| → Wooga joined | 10:36 |
|
solofight
| If i know the pool of possible values - yes ? | 10:36 |
|
FauxFaux
| Exactly. | 10:37 |
|
| In fact, you can probably get it even with the current ssh implementation, as the time taken to type the longer password is significant and it's obvious when the communication is paused for password exchange. | 10:37 |
|
cbreak-work
| FauxFaux: http://www.huffingtonpost.com/2011/10/27/iphone-4-accelerometer-spy_n_1035193.html | 10:37 |
|
| sidechannel attacks ftw | 10:37 |
|
FauxFaux
| Genius. My favourite recent one was that recent SCHNEEEIR post about usb ports. | 10:38 |
|
cmn
| nice | 10:38 |
| ← marekw2143 left | 10:38 |
|
solofight
| FauxFaux: but how does a attacker get the possible list of values ? by tracing the users activities online or something ? | 10:38 |
| → NetHawk joined | 10:38 |
|
cbreak-work
| http://www.schneierfacts.com/? | 10:38 |
|
cmn
| I remember some people managed to do the same by pointing a laser to a laptop screen, this is cooler | 10:38 |
| ← bonhoffer left | 10:39 |
|
| solofight googling for irssi setup which FauxFaux mentioned | 10:39 |
|
FauxFaux
| cbreak-work: http://syhw.posterous.com/two-amusing-side-channel-attacks | 10:40 |
| → nudb2 joined | 10:41 |
| → TAsnw joined | 10:41 |
| → w0bni joined | 10:42 |
| → wanders joined | 10:42 |
|
cbreak-work
| neat | 10:42 |
|
| if they had used FireWire, they could have just read the key schedule and so on out of the memory... | 10:42 |
|
solofight
| FauxFaux: where do you get all these updates ? i mean is there a single source to update myself ? | 10:42 |
|
FauxFaux
| Tee hee. | 10:42 |
|
cbreak-work
| schneier has a newsletter | 10:42 |
|
FauxFaux
| And a blog that posts significantly faster than I can search it for stories. | 10:43 |
|
solofight
| cbreak-work: http://www.schneierfacts.com/ or this http://syhw.posterous.com | 10:44 |
| ← wbednarski left | 10:44 |
|
FauxFaux
| SPEAKING OF SECURITY, WHERE'S MY SHA-256 PORT OF GIT? | 10:44 |
|
TAsnw
| hey guys. I have an svn repo, and a public git svn checkout. Is it possible to pull from the public git-svn checkout and then git svn dcommit from my copy? It feel non trivial because the commit hashes are different (different checkout paths, the public http:// vs my ssh+svn://). Has anyone stumbled across anything similar? Thanks. | 10:44 |
|
FauxFaux
| You can fetch then rebase --onto or cherry-pick the commits across, but there's no automation assistance afaik. | 10:45 |
| ← khmarbaise left | 10:45 |
|
solofight
| thanks guys for knowledge upgrade :) | 10:46 |
|
| good day to all | 10:46 |
|
TAsnw
| FauxFaux, I'm trying to avoid the initial fetch from svn | 10:46 |
|
| which is super slow | 10:46 |
| ← solofight left | 10:46 |
|
TAsnw
| because git-svn iterates over all the commits. | 10:46 |
| → jorn joined | 10:46 |
|
jorn
| hiho, i'm stuck in a 100 % cpu git pull... any idea what to do? | 10:47 |
| ← Praise left | 10:47 |
| → Praise joined | 10:48 |
|
jorn
| oh ah, it just finished... still weird, took 5 minutes for a 21 mb repo!?! | 10:49 |
|
sweb
| what is problem : ssh_exchange_identification: Connection closed by remote host | 10:49 |
|
| fatal: The remote end hung up unexpectedly | 10:49 |
|
| ? | 10:49 |
|
cmn
| jorn: do you have many references? | 10:49 |
| → empity joined | 10:50 |
| ← alecthegeek left | 10:50 |
|
jorn
| cmn: 1 | 10:50 |
|
| so i'd say no | 10:50 |
|
cbreak-work
| sounds like ssh/network problems | 10:51 |
| ← tiglog left | 10:51 |
| → Kazii joined | 10:51 |
|
cmn
| jorn: that's odd; that kind of thing tends to happen with many branches/tags; next time it happens, try to attach gdb | 10:51 |
|
jorn
| cmn: could the problem be caused by very many small files? | 10:53 |
|
| (the other guy checked in the whole eclipse .metadata folder) | 10:53 |
|
cmn
| could be, are you runnign on NFS or some other slow FS? | 10:53 |
| → Ashfame joined | 10:53 |
| ← Praise left | 10:54 |
| → Praise joined | 10:54 |
|
jorn
| locally | 10:55 |
|
| clone also takes very long | 10:55 |
|
| i attached gdb, what then? | 10:55 |
| ← Turicas left | 10:56 |
|
cmn
| if it's a recent-ish git, it could be due to git checking that all is connected, which could take a long time with many new objects | 10:56 |
|
| jorn: when it runs at 100% CPU again, look at the backtrace | 10:56 |
|
jorn
| (get a lot of warnings that no debug info is available, as not compiled in) | 10:56 |
| → alecthegeek joined | 10:56 |
|
cmn
| you'll get that if you're using the binaries from your distro | 10:56 |
| ← Ashfame left | 10:57 |
|
jorn
| close() <- write_entry() <- checkout_entry() <- unpack_trees() <- cmd_clone() <- handle_internal_command() <- main() | 10:58 |
| ← Chib left | 11:00 |
| → Chib joined | 11:01 |
| → pimpin joined | 11:01 |
|
pimpin
| Iop | 11:01 |
|
| Someone to give an hand to a beginner please ? | 11:02 |
| → workmad3 joined | 11:02 |
|
cmn
| jorn: hm, it looks like it's doing the checkout there | 11:03 |
| → tiagobutzke joined | 11:03 |
|
pimpin
| My issue could come from the old GIT version (1.4.4.4) installed in the server I use | 11:03 |
| → EnderMB joined | 11:03 |
|
pimpin
| but I can't update it | 11:04 |
|
FauxFaux
| pimpin: WHAT IS THE NATURE OF YOUR GIT EMERGENCY? | 11:04 |
| ← alnewkirk left | 11:04 |
| ← iknite left | 11:04 |
|
pimpin
| FauxFaux: not a real emergency | 11:04 |
| → DarkAR joined | 11:05 |
|
cmn
| you still haven't told us what's wrong | 11:05 |
|
EnderMB
| Hey all. I have a bunch of settings files and folders that I want to ignore, all with a full-stop as a prefix (e.g. .settings, .logs, etc). I see that it's easy enough to stop a file with a certain extension, but how do I ignore all files and folders with a certain prefix? | 11:05 |
|
pimpin
| just a problem I can't solve since this morning | 11:05 |
|
FauxFaux
| EnderMB: Wildcards work anywhere, '.*' will be fine. | 11:05 |
|
EnderMB
| FauxFaux: Awesome, thanks for the help! | 11:06 |
|
cmn
| jorn: if you check at different times, you might see a pattern (or the 'perf' tool) | 11:06 |
|
pimpin
| yes sorry… tks for helping me. | 11:06 |
| ← nudb2 left | 11:07 |
|
FauxFaux
| pimpin: Arrrrgh! Your question is entirely useless. Fill in the blanks: "I tried [X] in [Y]. I got [A] but I was expecting [B]. The simplest way I can think to reproduce this is [C]." Reply on one line. If it doesn't fit, use a pastebin. Do not even think of speaking before fully filling in the question. | 11:07 |
| → wbednarski joined | 11:07 |
| → setmeaway joined | 11:08 |
| → noisebleed joined | 11:09 |
| ← noisebleed left | 11:09 |
| → noisebleed joined | 11:09 |
|
pimpin
| I clone a rep, make changes, commit on local, push and look at my files pushed : they are unchanged. -> I look at log and see my commit well pushed but my files are already overwritten on the server with the old version. | 11:10 |
|
FauxFaux
| pimpin: You're pushing to a non-bare repository? | 11:10 |
| ← RichiH left | 11:10 |
|
pimpin
| that could be right, I do not specify option when creationg repo | 11:11 |
|
FauxFaux
| Pushing to a non-bare repository is discouraged as it makes no sense because it makes it look like your files are unchanged; it's not even worth working out why, just don't do it. | 11:11 |
|
pimpin
| I look for this option in the doc | 11:11 |
|
FauxFaux
| man git init | 11:12 |
|
jast
| *automatic message* the 'git-init' manpage can be found at <http://git.kernel.org/?p=git/git.git;a=blob_plain;f=git-init.html;hb=html> | 11:12 |
|
FauxFaux
| Except that the bot is broken. (jast) | 11:12 |
|
pimpin
| tks U very much FauxFaux | 11:12 |
| → pidus joined | 11:13 |
| → iknite joined | 11:13 |
|
pimpin
| is ti possible to transform my repo in a bare one ? | 11:14 |
|
FauxFaux
| git clone --bare oldrepo oldrepo.git | 11:14 |
|
pimpin
| Tks | 11:15 |
| ← cenuij left | 11:17 |
| → soc42 joined | 11:17 |
| ← JohnBat26 left | 11:20 |
| → sattu94 joined | 11:23 |
| → drev1 joined | 11:23 |
| → Aaaarg joined | 11:24 |
|
louiz
| (I like how pimpin managed to tell us 4 times that he had something to tell us, without ever telling what it is) | 11:24 |
|
FauxFaux
| This is why that alias exists. (/argh) :) | 11:24 |
|
pimpin
| Sorry I'm not used to IRC… and wondered if it was the right place to ask help for beginers | 11:24 |
| → pfsmorigo joined | 11:24 |
|
louiz
| aha, that’s an alias :D I thought that you were very comprehensive and took a lot of your time to write this sentence :D | 11:25 |
| ← rendar left | 11:25 |
|
cmn
| there's also !ask | 11:25 |
|
FauxFaux
| No, it comes up much more frequently than you'd think. ¬_¬ | 11:25 |
|
jast
| *automatic message* yes, it's okay to ask questions here... in fact, you just asked one! ;) Pretty much any question is fine. We're not terribly picky. | 11:25 |
|
louiz
| :) | 11:25 |
| ← torarne left | 11:25 |
| ← kimico left | 11:25 |
| ← elyob left | 11:25 |
|
cmn
| there's also !ask | 11:26 |
|
jast
| *automatic message* yes, it's okay to ask questions here... in fact, you just asked one! ;) Pretty much any question is fine. We're not terribly picky. | 11:26 |
|
cmn
| sorry, wrong window | 11:26 |
|
pimpin
| tks guys | 11:26 |
|
louiz
| you’re welcome :o | 11:26 |
|
pidus
| I had made some changes to a file, committed and tried to push, forgetting to pull. There were conflicts, I fixed them, tried to push again but now it neither lets me push - 'To prevent you from losing history, non-fast-forward updates were rejected | 11:26 |
|
| Merge the remote changes (e.g. 'git pull') before pushing again', nor pull - You have not concluded your merge (MERGE_HEAD exists). | 11:26 |
|
| Please, commit your changes before you can merge, nor commit - 'fatal: cannot do a partial commit during a merge.'. | 11:26 |
| ← ipalaus_ left | 11:26 |
| → ipalaus_ joined | 11:27 |
|
louiz
| did you add the file that were resolved from the conflict? | 11:28 |
| ← drev1 left | 11:28 |
| → gwasshoppah joined | 11:28 |
|
jmah
| pidus: did you commit after fixing the conflicts? | 11:28 |
|
louiz
| he said he cannot commit | 11:28 |
| ← jorn left | 11:29 |
|
jmah
| ah | 11:29 |
| → cybersphinx joined | 11:29 |
| ← bauruine left | 11:30 |
|
jmah
| pidus: add your resolutions, commit, then push. | 11:30 |
| → elyob joined | 11:30 |
| ← pidus left | 11:31 |
| → pidus_ joined | 11:31 |
| ← pidus_ left | 11:31 |
| → pidus_ joined | 11:31 |
| ← the_cybersphinx left | 11:31 |
|
louiz
| pidus_: are you there? | 11:31 |
|
pidus_
| sigh…my connection had died. Wonder if I missed a reply | 11:31 |
| ← ph^_ left | 11:31 |
| ← alecthegeek left | 11:32 |
|
louiz
| +louiz | did you add the file that were resolved from the conflict? | 11:32 |
|
| and | 11:32 |
|
| jmah | pidus: add your resolutions, commit, then push. | 11:32 |
|
pidus_
| louiz: I did do an add | 11:32 |
|
louiz
| hrm | 11:32 |
|
pidus_
| and when I do commit it says "fatal: cannot do a partial commit during a merge." | 11:33 |
| ← wanders left | 11:33 |
| ← alansaul left | 11:33 |
| ← akamike left | 11:33 |
| ← dr_lepper left | 11:33 |
| ← nax left | 11:33 |
| ← meebey left | 11:33 |
| ← stoffus left | 11:33 |
| ← kerrick left | 11:33 |
| ← wks left | 11:33 |
| ← CpuID2 left | 11:33 |
| ← frogonwheels left | 11:33 |
| ← Ingmar left | 11:33 |
| ← Samoi left | 11:33 |
| ← [M]ax left | 11:33 |
| ← stamina left | 11:33 |
| ← Samual left | 11:33 |
| ← dwmw2_gone left | 11:33 |
| ← iivvoo left | 11:33 |
| ← Daniel0108 left | 11:33 |
| ← avtobiff left | 11:33 |
| ← phix left | 11:33 |
| ← SethRobertson left | 11:33 |
| ← jspiros left | 11:33 |
| ← milli left | 11:33 |
| ← oso96_2000 left | 11:33 |
| ← gebi left | 11:33 |
| ← armenb left | 11:33 |
| ← Dreamer3 left | 11:33 |
| ← twem2_ left | 11:33 |
| ← plopix left | 11:33 |
| ← twem2 left | 11:33 |
| ← pasky left | 11:33 |
| ← necromancer left | 11:33 |
| ← tokkee left | 11:33 |
| ← Tianon left | 11:33 |
| ← zibri left | 11:33 |
| ← Bombe left | 11:33 |
| ← AlexanderS left | 11:33 |
| ← ruskie left | 11:33 |
| ← EugeneKay left | 11:33 |
| ← Ratler left | 11:33 |
| ← JeffJohnson left | 11:33 |
| ← quentusrex left | 11:33 |
| ← ketas left | 11:33 |
| ← IcePic left | 11:33 |
| ← lamont left | 11:33 |
| ← nevyn left | 11:33 |
| ← deever left | 11:33 |
| ← Cerise left | 11:33 |
| ← chrisf left | 11:33 |
| ← aeris- left | 11:33 |
| ← comawhite left | 11:33 |
| ← Xeross left | 11:33 |
| ← Aikar left | 11:33 |
| ← jeremy_c left | 11:33 |
| ← cwillu_at_work left | 11:33 |
| ← kanru left | 11:33 |
| ← jeffhung left | 11:33 |
| ← xou left | 11:33 |
| ← cbz left | 11:33 |
| ← Fissure left | 11:33 |
| ← wolfric left | 11:33 |
| ← fahadsadah left | 11:33 |
| ← shachaf left | 11:33 |
| ← Caelum left | 11:33 |
| ← wereHamster left | 11:33 |
| ← RichardBronosky left | 11:33 |
| ← ciaranm left | 11:33 |
| ← mike_perdide left | 11:33 |
| ← tuxx- left | 11:33 |
| ← Kiall left | 11:33 |
| ← LotR left | 11:33 |
| ← district left | 11:33 |
| ← rdz left | 11:33 |
| ← zykes- left | 11:33 |
| ← joschi left | 11:33 |
| ← jfkw left | 11:33 |
| ← cantoma left | 11:33 |
| ← madduck left | 11:33 |
| ← awx left | 11:33 |
| ← prudhvi left | 11:33 |
| ← jakob left | 11:33 |
| ← dsop left | 11:33 |
| ← bfrog left | 11:33 |
| ← Fiouz left | 11:33 |
| ← tg left | 11:33 |
| ← GeorgeSebastian left | 11:33 |
|
louiz
| wow | 11:33 |
| → CpuID2 joined | 11:33 |
| ← CpuID2 left | 11:33 |
| → CpuID2 joined | 11:33 |
|
jmah
| you didn't do enough adding then | 11:34 |
| → Samual joined | 11:34 |
|
jmah
| check "git status" | 11:34 |
| → Dreamer3 joined | 11:34 |
| → ponch joined | 11:34 |
| ← elyob left | 11:34 |
| ← flijten left | 11:35 |
| → Samoi joined | 11:35 |
| ← Samoi left | 11:35 |
| → Samoi joined | 11:35 |
| ← shruggar left | 11:35 |
| → Bombe joined | 11:35 |
| → envi_ joined | 11:35 |
| → frogonwheels joined | 11:36 |
|
pidus_
| jmah: You are right "On branch master # Your branch and 'origin/master' have diverged, # and have 1 and 15 different commit(s) each, respectively." But I never touched the files that it says require commit | 11:36 |
|
cmn
| pidus_: don't try to commit just the one file, that won't wokr | 11:36 |
| → jeffhung joined | 11:36 |
|
pidus_
| cmn: you mean, do -a | 11:36 |
|
cmn
| sort of | 11:36 |
| → _aeris_ joined | 11:36 |
|
jmah
| or just "git commit" | 11:36 |
| → deever joined | 11:37 |
| → armenb joined | 11:37 |
| → meebey joined | 11:37 |
| → xou joined | 11:37 |
| → phix joined | 11:37 |
| → Aikar joined | 11:37 |
|
pidus_
| so, are these 15 files the ones that i fetched after trying to push | 11:37 |
| → bfrog joined | 11:37 |
| → cbz joined | 11:37 |
| ← bfrog left | 11:37 |
| → bfrog joined | 11:37 |
|
cmn
| if git diff gives you something you like (preferably nothing), then add -u then commit | 11:37 |
| → Fiouz joined | 11:37 |
| → gebi joined | 11:37 |
| → district joined | 11:37 |
| → jfkw joined | 11:37 |
| → stamina joined | 11:37 |
| → mike_perdide joined | 11:37 |
| → nevyn joined | 11:37 |
| → wereHamster joined | 11:37 |
| → ciaranm joined | 11:37 |
| → jeremy_c joined | 11:37 |
| → IcePic joined | 11:37 |
| → pasky joined | 11:37 |
| → twem2 joined | 11:37 |
| → wolfric joined | 11:37 |
| → Caelum joined | 11:37 |
| → nardev joined | 11:38 |
| → tokkee joined | 11:38 |
| → dsop joined | 11:38 |
|
pidus_
| cmn: git diff doesn't give me anything | 11:38 |
|
cmn
| those files would be the ones that are different between your branch tip and the remote's branch tip | 11:38 |
| → Guest93405 joined | 11:38 |
| → dr_lepper joined | 11:38 |
| ← dr_lepper left | 11:38 |
| → dr_lepper joined | 11:38 |
| ← Fiouz left | 11:38 |
| → tuxx- joined | 11:38 |
| → zibri joined | 11:38 |
|
cmn
| then add -u should be what you need | 11:38 |
| → Fiouz joined | 11:38 |
| ← tatsuya_o left | 11:38 |
| ← Fiouz left | 11:39 |
| → RichardBronosky joined | 11:39 |
| → Fiouz joined | 11:39 |
| → kanru joined | 11:39 |
| → alecthegeek joined | 11:39 |
| → floubidou joined | 11:39 |
| ← Fiouz left | 11:39 |
| → Fiouz joined | 11:40 |
| ← Fiouz left | 11:40 |
| ← Praise left | 11:40 |
| → jakob` joined | 11:40 |
| → Kiall joined | 11:40 |
| → Fiouz joined | 11:40 |
|
pidus_
| cmn: But the commit shows changes to those 15 files, something that I didn't do and wouldn't want to show in the commit :( | 11:40 |
| → tatsuya_o joined | 11:40 |
| → canton7 joined | 11:41 |
| ← Fiouz left | 11:41 |
| → akamike joined | 11:41 |
| → AlexanderS joined | 11:41 |
| → dwmw2_gone joined | 11:41 |
| → Praise joined | 11:41 |
| → tg joined | 11:41 |
| → fahadsadah joined | 11:41 |
| ← floubidou left | 11:41 |
| → Fiouz joined | 11:41 |
| → stoffus joined | 11:42 |
| → twem2_ joined | 11:42 |
| → Xeross joined | 11:42 |
| → joschi joined | 11:42 |
|
cmn
| what do you mean by "shows changes" | 11:42 |
| → shachaf joined | 11:42 |
| → Lucio85 joined | 11:42 |
| → lamont joined | 11:42 |
| ← tatsuya_o left | 11:43 |
| → milli joined | 11:43 |
| → comawhite joined | 11:43 |
| → tatsuya_o joined | 11:43 |
| → EugeneKay joined | 11:43 |
| → Cerise joined | 11:43 |
| ← Lucio85 left | 11:43 |
|
pidus_
| cmn: it shows delete/modified/new on a number of files that I never touched. I guess this is because I tried to commit and push to remote repo without doing a pull. | 11:44 |
|
cmn
| if the push didn't succeed, it didn't change anything anywhere | 11:44 |
| → kimico joined | 11:44 |
|
cmn
| that output might come from the merge | 11:44 |
| ← safinaskar left | 11:45 |
|
cmn
| I don't remember right now exactly what commit tells you when you commit a merge. Does 'git show' show any output? | 11:45 |
| ← alecthegeek left | 11:45 |
| → JeffJohnson joined | 11:45 |
| ← JeffJohnson left | 11:45 |
| → JeffJohnson joined | 11:45 |
| → Dave^| joined | 11:45 |
| → plopix joined | 11:45 |
| ← soc42 left | 11:45 |
| → sanduz2 joined | 11:45 |
| → prudhvi joined | 11:46 |
| → ketas joined | 11:46 |
| → madduck joined | 11:46 |
| → ruskie joined | 11:47 |
|
pidus_
| cmn: show shows a single commit - 'Merge remote-tracking branch 'origin/master'' and "Conflicts" in the one file where there was a conflict before add | 11:47 |
| → quentusrex joined | 11:48 |
| ← quentusrex left | 11:48 |
| → quentusrex joined | 11:48 |
|
pidus_
| cmn: Can i revert this commit, and do another merge and push (this time without the conflict) | 11:48 |
|
cmn
| 'show' only ever shows one commit; if it doesn't show a diff for anything other than the conflicted files, you're fine, you can push | 11:48 |
| → nax joined | 11:48 |
| → rdz joined | 11:48 |
|
cmn
| the conflict will still be there | 11:48 |
| → Ratler joined | 11:48 |
| → wks joined | 11:48 |
| → awx joined | 11:48 |
| → cantoma joined | 11:48 |
| ← harshpb left | 11:49 |
| → happylife joined | 11:49 |
|
cmn
| with git reset --hard HEAD^ you can put the worktree, index and HEAD to the commit before the merge | 11:49 |
| ← ponch left | 11:49 |
|
cmn
| but if you merge again, it will still conflict | 11:49 |
| → LotR joined | 11:49 |
|
pidus_
| and what with the 'Merge remote-tracking branch 'origin/master'? | 11:49 |
| ← heptadecagram left | 11:49 |
| → GeorgeSebastian joined | 11:49 |
| → Fissure joined | 11:49 |
| ← Praise left | 11:50 |
| → Praise joined | 11:50 |
| → SethRobertson joined | 11:51 |
|
pidus_
| this never appeared in a commit. | 11:51 |
| ← EricInBNE left | 11:51 |
| ← artib left | 11:51 |
|
cmn
| have you ever done a merge before? | 11:51 |
| → artib joined | 11:51 |
| → neurodrone joined | 11:52 |
| → chrisf joined | 11:52 |
|
pidus_
| cmn: yes. A fetch, followed by a merge. I do it before any commit/push | 11:52 |
|
| forgot to do it this time round | 11:52 |
| → kerrick joined | 11:52 |
|
cmn
| then your repo must have low traffic; if the merge is a fast-forward (i.e. the history did not diverge) then it will just update the branch | 11:53 |
| → nixmaniack joined | 11:53 |
|
cmn
| if the history does diverge, you need to do a real merge | 11:53 |
| → Daniel0108 joined | 11:53 |
|
cmn
| and that's the default message for a merge | 11:53 |
| ← hyperair left | 11:54 |
|
pidus_
| oh ok | 11:54 |
| → fermo joined | 11:54 |
| ← tiagobutzke left | 11:55 |
|
pidus_
| and by real merge you mean git merge origin/master? | 11:55 |
| → jspiros joined | 11:56 |
| ← albel727 left | 11:57 |
| → leen^| joined | 11:57 |
| → Tianon joined | 11:58 |
| ← Tianon left | 11:58 |
| → Tianon joined | 11:58 |
| ← Dave^| left | 11:58 |
| → albel727 joined | 11:58 |
| ← GeorgeSebastian left | 11:58 |
|
cmn
| pidus_: a real merge is a merge that can't be fast-forwarded | 11:58 |
|
| that is, where there are different commits in one and the other | 11:59 |
|
| instead of one just being ahead of the other | 11:59 |
| → rendar joined | 11:59 |
|
pidus_
| cmn: ok. Not sure if I'm getting all of it. Got to do some reading of help. | 12:00 |
|
canton7
| http://sandofsky.com/images/fast_forward.pdf | 12:00 |
| ← shiba_yu36 left | 12:01 |
| ← endy_c left | 12:01 |
| ← empity left | 12:01 |
|
wereHamster
| canton7: nice document. is it yours? | 12:02 |
| ← Praise left | 12:02 |
| → Praise joined | 12:02 |
|
canton7
| wereHamster, sadly not. someone else (can't remember who) found it after a quick google | 12:02 |
|
pidus_
| thanks cmn and canton7. Got the fast_forward thing. | 12:03 |
|
canton7
| I liked it so I bookmarked it :) | 12:03 |
| → shiba_yu36 joined | 12:03 |
| ← artib left | 12:03 |
|
pidus_
| Just one last question - lame though again it prolly is. If you pull, just before committing and assuming that there are no changes between the time you pulled and you commit, ever push will be ff right? Guess I missed out on the conflict thing here! | 12:04 |
|
| *every | 12:04 |
| → shiba_yu_ joined | 12:05 |
| ← shiba_yu36 left | 12:05 |
| → keller joined | 12:06 |
| → alexs joined | 12:06 |
| ← alexs left | 12:06 |
| → alexs joined | 12:06 |
| ← Praise left | 12:06 |
|
canton7
| pidus_, yup that's right. If you try and push something that would require the remote to do a non-ff merge, the push is rejected. You then have to pull, and merge those changes in yourself, ending up with something that the remote can ff merge | 12:06 |
| → lisak joined | 12:06 |
| → Praise joined | 12:06 |
| ← marthinal left | 12:07 |
|
sweb
| if i want to use hooks | 12:07 |
|
| file must be without .sample ? | 12:07 |
| ← ziro` left | 12:07 |
|
canton7
| sweb, yup | 12:07 |
|
sweb
| canton7, not work :/ | 12:07 |
|
canton7
| (must also be executable with a valid shebang) | 12:07 |
|
pidus_
| canton7: Cool. I guess I got it now. Thanks a ton and sorry for bugging you all with my noob questions! | 12:07 |
| → wanders joined | 12:07 |
| ← Kindari left | 12:08 |
| ← d4rk1ink_ left | 12:08 |
|
canton7
| pidus_, no worries. I'd advise reading e.g. !book cover-to-cover, as git's something that it's not too easy to learn using the "learn how to solve problems as you come to them" technique :) | 12:09 |
|
jast
| pidus_: *automatic message* 'Pro Git' is a complete book about git that is available online for free (there's a print version, too): http://progit.org/book/ | 12:09 |
| ← _kud left | 12:09 |
| → zykes- joined | 12:09 |
|
pidus_
| canton7: Will postively read it | 12:10 |
| ← ipalaus_ left | 12:10 |
|
pidus_
| cmn: Thanks | 12:10 |
| → GeorgeSebastian joined | 12:11 |
| ← mklappstuhl left | 12:11 |
| ← squentin left | 12:11 |
| → erik_tr joined | 12:12 |
| ← alexs left | 12:13 |
| ← DarkAR left | 12:13 |
| ← pidus_ left | 12:13 |
| → pidus joined | 12:13 |
| → Kindari joined | 12:16 |
| → novettam joined | 12:17 |
| → weiyang joined | 12:17 |
| ← GeorgeSebastian left | 12:18 |
| → ajt joined | 12:19 |
|
sweb
| i use this introduction but when i commit and push from my client. Public files and git not updated | 12:19 |
|
| http://joemaller.com/990/a-web-focused-git-workflow/ | 12:19 |
|
| but hub repository update | 12:19 |
|
canton7
| sweb, try putting an echo statement in the hook. Does that get displayed? Can you run the hook directly from the shell? | 12:20 |
| → oso96_2000 joined | 12:21 |
| → niboshi_ joined | 12:21 |
| ← herdingcat left | 12:24 |
| → squentin joined | 12:24 |
| ← psakrii left | 12:24 |
| → tiagobutzke joined | 12:24 |
| → ph^ joined | 12:25 |
| ← novettam left | 12:26 |
| ← lacrymology left | 12:26 |
| ← kmc left | 12:28 |
| ← TAsnw left | 12:28 |
| ← kalusn left | 12:29 |
| → GeorgeSebastian joined | 12:29 |
| → novettam joined | 12:29 |
| ← _md left | 12:30 |
|
sweb
| canton7, problem is for hook permissions. my problem is solved. ty | 12:30 |
|
canton7
| :) | 12:30 |
| → the_cybersphinx joined | 12:32 |
| → DarkAR joined | 12:35 |
| ← tatsuya_o left | 12:35 |
| ← GeorgeSebastian left | 12:36 |
| ← cybersphinx left | 12:36 |
| → mitsuhiko joined | 12:36 |
| → alnewkirk joined | 12:36 |
| → alexs joined | 12:36 |
| ← alexs left | 12:36 |
| → alexs joined | 12:36 |
| ← wolfric left | 12:36 |
| → wolfric joined | 12:36 |
| → tatsuya_o joined | 12:36 |
|
sweb
| how to pass my password to git push in linux command line | 12:36 |
|
| ? | 12:36 |
|
crashanddie
| sweb, you can't. | 12:37 |
| → subbyyy joined | 12:37 |
| → _md joined | 12:37 |
| → kmc joined | 12:37 |
|
canton7
| sweb, what protocol are you pushing over? http(s) or ssh? | 12:37 |
|
sweb
| ssh | 12:37 |
|
canton7
| look into setting up ssh key authentication | 12:38 |
|
thiago
| configure ssh so you don't have to type a password | 12:38 |
| ← bindaasomatic left | 12:40 |
| → bindaasomatic joined | 12:40 |
|
sweb
| i must password in this line url = ssh://gituser@gitserver/path/to/.git/ | 12:41 |
| ← stodan left | 12:41 |
|
sweb
| thiago, ^ | 12:41 |
|
wereHamster
| must? | 12:42 |
|
canton7
| sweb, google for something like "ssh without password". There are millions of hits | 12:42 |
|
| this isn't a git problem | 12:42 |
| → regedit joined | 12:47 |
| ← ben_alman left | 12:47 |
| ← Samoi left | 12:47 |
| → johnkpau_ joined | 12:48 |
|
regedit
| any files in the same directory as the .git folder is part of the working tree? | 12:49 |
| → oriba joined | 12:49 |
| → GeorgeSebastian joined | 12:49 |
| ← dv310p3r left | 12:49 |
| → Samoi joined | 12:49 |
| ← na3r left | 12:51 |
| → spatulasnout joined | 12:51 |
|
phluks
| Yep | 12:51 |
| → p3rror joined | 12:51 |
|
phluks
| unless they are in .gitignore | 12:52 |
|
canton7
| (or .git/info/exclude) | 12:52 |
| ← Codif left | 12:52 |
| → c00kiemon5ter joined | 12:53 |
| ← c00kiemon5ter left | 12:53 |
| → c00kiemon5ter joined | 12:53 |
|
regedit
| however i seem to remember it being advised not to have the actual project files in the same place as the .git folder, but rather make a subfolder for it. true? | 12:53 |
| ← c00kiemon5ter left | 12:53 |
| ← jesteracer left | 12:54 |
|
phluks
| I disagree. However, it depends on the layout of your project. It may make more sense. | 12:54 |
| ← GodEater left | 12:55 |
|
cmn
| the working tree is more about the files that git cares about... what do you mean by project files in a subfolder? | 12:55 |
|
phluks
| regedit: If your git repo _is_ the project or if you have more projects in your git repo fx. | 12:56 |
|
wereHamster
| regedit: if your project files are in /foo/bar, then the .git dir is /foo/bar/.git | 12:56 |
|
regedit
| right | 12:57 |
| ← GeorgeSebastian left | 12:57 |
|
regedit
| thanks guys | 12:59 |
| ← regedit left | 12:59 |
| ← glcrazy_ left | 13:00 |
| → Cipher-0 joined | 13:01 |
| → merkosh joined | 13:03 |
| → Ingmar joined | 13:03 |
| → avtobiff joined | 13:03 |
| → GodEater joined | 13:03 |
| → [M]ax joined | 13:03 |
| → leo2007 joined | 13:03 |
| ← teweWork left | 13:04 |
| ← msponge left | 13:04 |
| → ramusara joined | 13:06 |
| → d4rk1ink joined | 13:07 |
| → alberto56 joined | 13:07 |
| → khmarbaise joined | 13:08 |
| ← Chib left | 13:08 |
| → teweWork joined | 13:08 |
| → lacrymology joined | 13:08 |
|
phluks
| Has anybody been working with a dynamic or "masterless" branching strategy workflow? | 13:09 |
|
wereHamster
| explain.. | 13:10 |
| → GeorgeSebastian joined | 13:10 |
|
phluks
| .. fx where one releases dynamic branches in stead of the more "normal" static release branch | 13:10 |
|
cmn
| it sounds like more trouble than it's worth | 13:11 |
|
phluks
| Or in other words you dont have a specific branch for releases | 13:11 |
|
| It may be | 13:11 |
|
| but it seems very flexible | 13:11 |
|
| And hard to explain :) | 13:11 |
|
cmn
| if there is no canonical stable branch, how do people know what code is stable and which may crash their machine? | 13:12 |
|
phluks
| Exactly. Theres a problem with the philosophy of the branches. | 13:12 |
|
| where they come from and where they are going | 13:12 |
|
| My current solution is to have a separate repo for the branch config | 13:13 |
|
cmn
| why not in the same repo? | 13:13 |
| → cburroughs joined | 13:13 |
|
phluks
| where each branch has a dir with files with the current state of say dev, test and live | 13:14 |
| → _kud joined | 13:14 |
|
phluks
| cmn: it gives problems with merges | 13:14 |
| → verto joined | 13:14 |
|
phluks
| the config is common to all branches | 13:15 |
|
| ideally Id like to have a "global" option in git | 13:15 |
|
cmn
| hm, ok, I thought you meant it was some sort of human-readable text | 13:15 |
|
phluks
| but Im not sure that makes sense | 13:15 |
| ← JeffJohnson left | 13:15 |
|
phluks
| cmn: it is, but it is structured in dirs, like a sort of database | 13:16 |
| ← albel727 left | 13:16 |
|
phluks
| "global" with respect to branches in this case | 13:16 |
| → JeffJohnson joined | 13:16 |
| ← JeffJohnson left | 13:16 |
| → JeffJohnson joined | 13:16 |
|
cmn
| for which fields in particular? | 13:16 |
|
phluks
| cmn: fields? | 13:18 |
| ← GeorgeSebastian left | 13:18 |
|
cmn
| options, whatever, which parts of the config do you need to have defined for all branches? | 13:18 |
| ← johnkpau_ left | 13:20 |
| → tswr joined | 13:20 |
|
phluks
| I got interupted by Project manager - just a second | 13:20 |
| → Dave^| joined | 13:21 |
| ← leen^| left | 13:21 |
| ← _kud left | 13:23 |
| ← SpecialEmily left | 13:23 |
| → _kud joined | 13:23 |
| opalka → opalka|lunch | 13:23 |
|
tswr
| Hi, all! I am writing a watch dog. What is the best way to check that the repository is available? When trying to clone the http repository, if it is down, git-remote-http hangs for a very long time. Is there a way to setup the timeouts for clone? | 13:23 |
| ← jceb left | 13:23 |
|
canton7
| why not just create your own http request? | 13:24 |
| ← Daniel0108 left | 13:24 |
| ← magcius left | 13:24 |
|
phluks
| back | 13:24 |
| → _kud_ joined | 13:25 |
|
tswr
| canton7, well, it looks like writing a small limited version of helper, but with timeouts... looks a bit unnatural, though quite possible | 13:25 |
|
phluks
| cmn: its the meaning of the branchs - actually. What they are for. Feature, release branch on dev, test or live | 13:25 |
| → magcius joined | 13:25 |
|
phluks
| cmn: what features are on what releases and so on | 13:26 |
|
| s/branchs/branches/ | 13:26 |
|
canton7
| tswr, request a small file that you know should always exist, like info/refs. use curl or something, then you have absolute control | 13:26 |
|
tswr
| canton7, i'd also like to check that push/pull works ok for specific users | 13:27 |
|
cmn
| phluks: that sounds like something that should live on a branch of its own and never get merged | 13:27 |
| ← subbyyy left | 13:27 |
|
phluks
| cmn: yes, but i cannot checkout a branch on the live server, that does not contain the code :) | 13:28 |
|
| Or have I misunderstood? | 13:28 |
|
canton7
| tswr, there's http.lowSpeedLimit and http.lowSpeedTime, might be worth looking at | 13:28 |
| ← weiyang left | 13:28 |
| ← _kud left | 13:29 |
|
tswr
| canton7, I tried using them, but it looks like they refer only to the speed after connect was successful | 13:29 |
|
| :) | 13:29 |
| → Suresht joined | 13:29 |
| ← gwasshoppah left | 13:29 |
| ← leo2007 left | 13:29 |
|
canton7
| tswr, I'd suggest checking that the remote is online first with your own http request, then attempting to clone/push whatever you need to. It's a bit hacky, but it'll work | 13:30 |
| → GeorgeSebastian joined | 13:30 |
| → erichynds joined | 13:31 |
|
tswr
| canton7, it will work when I'm lucky :) the server can go down right after the first http request :) | 13:31 |
|
phluks
| We are trying a solution that is basicly a dynamic version of this http://nvie.com/posts/a-successful-git-branching-model/ | 13:31 |
|
canton7
| tswr, what are the chances? Given that such an event will only cause the watching test to slow down significantly (but not fail), I'd say that was acceptable | 13:31 |
|
phluks
| In stead of develop and master we have numbered releases. | 13:31 |
|
| Ah, cake -> away | 13:32 |
| → jsick3 joined | 13:32 |
|
cmn
| phluks: you don't need to checkout a branch, you should be able to do "git checkout descriptions -- '*'" | 13:32 |
| → chris_99 joined | 13:32 |
|
tswr
| canton7, well, yes that's what I'll probably do if I won't find anything better | 13:33 |
| → albel727 joined | 13:33 |
|
tswr
| canton7, thank you! | 13:33 |
| → Daniel0108 joined | 13:33 |
| → ilteris_ joined | 13:34 |
| ← workmad3 left | 13:34 |
| ← teweWork left | 13:35 |
|
canton7
| tswr, sorry I couldn't find something neater :P | 13:35 |
| ← roflin left | 13:35 |
| → ipalaus_ joined | 13:35 |
| → roflin joined | 13:36 |
|
tswr
| canton7, :) | 13:37 |
| ← GeorgeSebastian left | 13:37 |
| ← tswr left | 13:37 |
| → harshpb joined | 13:37 |
| ← henrikbjorn left | 13:38 |
| → bartek joined | 13:39 |
| → tommyvyo_ joined | 13:40 |
| → weiyang joined | 13:41 |
| ← sweb left | 13:41 |
| → RichiH joined | 13:41 |
| → sweb joined | 13:42 |
|
RichiH
| what's the sanest way to find out what variant of http://www.kerneltrap.com/mailarchive/linux-netdev/2009/4/29/5598314/thread#mid-5598314 made it into the kernel tree and in which tags it exists? the subject of the email does not appear in git log. | 13:42 |
| → timmywil joined | 13:43 |
| ← timmywil left | 13:43 |
| ← tatsuya_o left | 13:43 |
| → glennpratt joined | 13:44 |
|
FauxFaux
| RichiH: git log --all --grep ? | 13:44 |
| → tatsuya_o joined | 13:44 |
| → soc42 joined | 13:47 |
|
phluks
| cmn: ...ah, that could be the solution I am looking for. Thnx I'll look into that | 13:47 |
|
RichiH
| FauxFaux: neat; that's a _lot_ faster than searching the log via less. now that i have the commit id, how do i find all tags which include that commit? | 13:47 |
| → flavius joined | 13:48 |
| ← nardev left | 13:48 |
|
cmn
| git tag --contains <tag> | 13:48 |
| ← dwmw2_gone left | 13:48 |
| → dwmw2_gone joined | 13:48 |
| → hyperair joined | 13:49 |
| → AaronMT joined | 13:50 |
| ← kvanderw left | 13:50 |
| → ISF joined | 13:50 |
| → heptadecagram joined | 13:50 |
| ← sattu94 left | 13:51 |
| ← nax left | 13:52 |
| ← akamike left | 13:52 |
| → teweWork joined | 13:52 |
| → niloc132 joined | 13:56 |
| ← erik_tr left | 13:56 |
| ← khmarbaise left | 13:58 |
| ← sanduz2 left | 13:58 |
| ← neurodrone left | 13:58 |
| napdragon → spyraway | 14:00 |
| → timmywil joined | 14:01 |
| ← wks left | 14:01 |
| → kR15T0 joined | 14:02 |
| → Flawless joined | 14:03 |
| → CannedCorn joined | 14:03 |
| ChanServ set mode: +v | 14:03 |
| ← jspiros left | 14:04 |
|
Flawless
| Hello guys. I'm working on a git project, and I'm trying to learn git, but I'm not terribly experienced with it yet. I stashed some changes while working on another problem, and have now un-stashed them | 14:04 |
|
| However, when I do "git status", I get this: | 14:04 |
|
| http://p.adora.dk/P2219.html | 14:05 |
|
| what does "both modified" mean? And how come I can't see my changes the files with "git diff"? | 14:05 |
| ← avinashhm left | 14:05 |
| → jspiros joined | 14:05 |
| → dv310p3r joined | 14:05 |
| ← envi_ left | 14:05 |
|
louiz
| because there’s a conflict between what you changed AFTER you stashed something, and what the stashed things are | 14:06 |
| → envi_ joined | 14:06 |
| → d0k joined | 14:06 |
| → _kud joined | 14:06 |
|
Flawless
| Yes, I got a number of conflicts on unstash. I manually resolved them all | 14:06 |
|
| so what now? | 14:06 |
|
louiz
| if you manually resolved them, you have to git add each of them | 14:06 |
|
kR15T0
| how can I remove the commit before the last one using rebase on a master branch? | 14:06 |
|
louiz
| Flawless: git status says: # (use "git add/rm <file>..." as appropriate to mark resolution) | 14:07 |
| ← mgpcoe left | 14:07 |
|
louiz
| you have to do "git add somefile" to say “this file is resolved” | 14:07 |
| ← flavius left | 14:07 |
|
louiz
| once everything is resolved, commit | 14:08 |
|
Flawless
| ah, cool. It's just that I'm wary of doing "git add", since I've seen in the past that the files are then added, but do not show up in the diff | 14:08 |
|
| which is.. confusing | 14:08 |
|
louiz
| to see the files that have been added, do git diff --cached | 14:08 |
|
Flawless
| ah, cool | 14:09 |
|
louiz
| "git diff" just shows the changes that have not yet been added | 14:09 |
| ← _kud_ left | 14:09 |
|
louiz
| and git diff HEAD shows both | 14:09 |
|
Flawless
| Yeah, that's a key difference from (say) SVN that I'm still trying to get used to | 14:09 |
|
| cool | 14:09 |
|
louiz
| yeah, that’s also different from hg | 14:09 |
|
| since there’s no staging area in hg | 14:10 |
| ← Dave^| left | 14:10 |
| ← lisak left | 14:10 |
| → DarkAR_ joined | 14:10 |
| ← keller left | 14:10 |
| ← weiyang left | 14:10 |
| → leen^| joined | 14:10 |
| ← Dreamer3 left | 14:11 |
| ← jspiros left | 14:11 |
| ← timmywil left | 14:11 |
| ← roflin left | 14:11 |
| ← Daniel0108 left | 14:11 |
| ← JeffJohnson left | 14:11 |
| ← d4rk1ink left | 14:11 |
| ← Samoi left | 14:11 |
| ← oriba left | 14:11 |
| ← alexs left | 14:11 |
| ← novettam left | 14:11 |
| ← oso96_2000 left | 14:11 |
| ← zykes- left | 14:11 |
| ← wanders left | 14:11 |
| ← Praise left | 14:11 |
| ← Tianon left | 14:11 |
| ← kerrick left | 14:11 |
| ← chrisf left | 14:11 |
| ← SethRobertson left | 14:11 |
| ← LotR left | 14:11 |
| ← Ratler left | 14:11 |
| ← quentusrex left | 14:11 |
| ← ketas left | 14:11 |
| ← madduck left | 14:11 |
| ← prudhvi left | 14:11 |
| ← plopix left | 14:11 |
| ← EugeneKay left | 14:11 |
| ← milli left | 14:11 |
| ← lamont left | 14:11 |
| ← twem2_ left | 14:11 |
| ← stoffus left | 14:11 |
| ← tg left | 14:11 |
| ← fahadsadah left | 14:11 |
| ← Xeross left | 14:11 |
| ← Cerise left | 14:11 |
| ← AlexanderS left | 14:11 |
| ← zibri left | 14:11 |
| ← tuxx- left | 14:11 |
| ← dsop left | 14:11 |
| ← wolfric left | 14:11 |
| ← ciaranm left | 14:11 |
| ← xou left | 14:11 |
| ← deever left | 14:11 |
| ← _aeris_ left | 14:11 |
| ← Kiall left | 14:11 |
| ← kanru left | 14:11 |
| ← MacGyverNL left | 14:11 |
| ← Flawless left | 14:11 |
| ← ReekenX left | 14:11 |
| ← alecat left | 14:11 |
| ← freimatz2 left | 14:11 |
| ← jmah left | 14:11 |
| ← Cogito left | 14:11 |
| ← nyuszika7h left | 14:11 |
| ← variable left | 14:11 |
| ← reuss left | 14:11 |
| ← coredumb left | 14:11 |
| ← troyt left | 14:11 |
| ← blast_hardcheese left | 14:11 |
| ← torbenh3 left | 14:11 |
| ← traviscj left | 14:11 |
| ← etcetera left | 14:11 |
| ← Nickeeh left | 14:11 |
| ← Marquel left | 14:11 |
| ← Internet13 left | 14:11 |
| ← kenyon left | 14:11 |
| ← Drakevr left | 14:11 |
| ← metze left | 14:11 |
| ← Arrowmaster left | 14:11 |
| ← avar left | 14:11 |
| ← j0ran left | 14:11 |
| ← mino left | 14:11 |
| ← Ksg89 left | 14:11 |
| ← karihre left | 14:11 |
| ← teuf left | 14:11 |
| ← FDFlock left | 14:11 |
| ← yogurt_truck left | 14:11 |
| ← DjSlash left | 14:11 |
| ← preflex left | 14:11 |
| ← magnusol left | 14:11 |
| ← Delerius left | 14:11 |
| ← eeadc left | 14:11 |
| ← nb left | 14:11 |
| ← meder left | 14:11 |
| ← TheFriscoFainter left | 14:11 |
| ← iff left | 14:11 |
| ← didlix left | 14:11 |
| ← mediaslave left | 14:11 |
| ← Grum left | 14:11 |
| ← d1b left | 14:11 |
| ← jrockway left | 14:11 |
| ← haarg left | 14:11 |
| ← naderman left | 14:11 |
| ← deavid left | 14:11 |
| ← eregon left | 14:11 |
| ← OPK_ left | 14:11 |
| ← dropdrive left | 14:11 |
| ← rphillips left | 14:11 |
| ← electrogeek left | 14:11 |
| ← koki left | 14:11 |
| ← jaeckel left | 14:11 |
| ← ska-fan left | 14:11 |
| ← tychoish left | 14:11 |
| ← youam left | 14:11 |
| ← morgajel left | 14:11 |
| ← Corey left | 14:11 |
| ← BlindOracle left | 14:11 |
| ← beautifulmind left | 14:11 |
| → Cipher-0_ joined | 14:11 |
| → soc42_ joined | 14:11 |
| ← w0bni left | 14:11 |
| ← PuffTheMagic left | 14:11 |
| → innociv_ joined | 14:11 |
| ← felher left | 14:11 |
| ← spacebat left | 14:11 |
| → jwmann1 joined | 14:11 |
| → JEEBcz joined | 14:11 |
| → hwrdprkns_ joined | 14:11 |
| ← BeerPerson left | 14:11 |
| ← mattp_ left | 14:11 |
| ← mrchrisadams left | 14:11 |
| ← charon left | 14:11 |
| ← shennyg left | 14:11 |
| ← pronoy left | 14:11 |
| → brian_g_ joined | 14:11 |
| ← mtkd left | 14:11 |
| ← Adys left | 14:12 |
| ← CannedCorn left | 14:12 |
| → mrchrisadams_ joined | 14:12 |
| → Adys joined | 14:12 |
| ← jwmann left | 14:12 |
| → wbednars_ joined | 14:12 |
| ← Cipher-0 left | 14:12 |
| ← flaguy48 left | 14:12 |
| → mattp_ joined | 14:12 |
| → LiohAu__ joined | 14:12 |
| → psoo_ joined | 14:12 |
| ← brian_g left | 14:12 |
| ← mirage335 left | 14:12 |
| ← dcelix left | 14:12 |
| → charon joined | 14:12 |
| ← Rejinka left | 14:12 |
| ← mitsuhiko left | 14:12 |
| ← eMBee left | 14:12 |
| ← psoo left | 14:12 |
| ← mika left | 14:12 |
| ← ngulden left | 14:12 |
| ← hobodave left | 14:12 |
| ← ricky left | 14:12 |
| → estan_ joined | 14:12 |
| ← shachaf left | 14:12 |
| ← Kazii left | 14:12 |
| → hobodave joined | 14:12 |
| ← RichardBronosky left | 14:12 |
| → chuck001 joined | 14:12 |
| → milki_ joined | 14:12 |
| → childbear2000 joined | 14:12 |
| → tiagobutzke_ joined | 14:12 |
| ← Cipher-0_ left | 14:12 |
| → felher joined | 14:12 |
| → w0bni joined | 14:12 |
| ← niboshi left | 14:12 |
| ← _Qman left | 14:12 |
| ← milki left | 14:12 |
| ← envi_ left | 14:12 |
| ← tiagobutzke left | 14:12 |
| ← phix left | 14:12 |
| ← tizzo-afk left | 14:12 |
| ← juvenal left | 14:12 |
| ← markvandenborre left | 14:12 |
| ← errr left | 14:12 |
| tiagobutzke_ → tiagobutzke | 14:12 |
| ← childbear left | 14:12 |
| → bitslip_ joined | 14:12 |
| ← heptadecagram left | 14:13 |
| ← berserkr left | 14:13 |
| ← fir31ight left | 14:13 |
| ← johntramp left | 14:13 |
| → youam joined | 14:13 |
| → torbenh3 joined | 14:13 |
| ← ilteris_ left | 14:13 |
| ← clone1018 left | 14:13 |
| → alanp joined | 14:13 |
| ← sweb left | 14:13 |
| ← crass left | 14:13 |
| ← DarkAR left | 14:13 |
| ← Dave^|| left | 14:13 |
| ← chuck00 left | 14:13 |
| ← atdiehm left | 14:13 |
| ← nDuff left | 14:13 |
| ← Cacheaway left | 14:13 |
| ← Gitzilla left | 14:13 |
| ← kermit left | 14:13 |
| ← tommyvyo left | 14:13 |
| tommyvyo_ → tommyvyo | 14:13 |
| → Cipher-0 joined | 14:13 |
| → hwrdprkns__ joined | 14:13 |
| → clone1018 joined | 14:13 |
| → _Qman joined | 14:13 |
| ← hwrdprkns left | 14:13 |
| ← spatulasnout left | 14:13 |
| ← mace left | 14:13 |
| ← jjurach left | 14:13 |
| → ricky joined | 14:13 |
| ← soc42 left | 14:13 |
| ← kmc left | 14:13 |
| ← ajt left | 14:13 |
| ← nixmaniack left | 14:13 |
| ← setmeaway left | 14:13 |
| ← wbednarski left | 14:13 |
| ← tvw left | 14:13 |
| ← guardian left | 14:13 |
| ← Yuuhi`` left | 14:13 |
| ← cyphase left | 14:13 |
| ← Exposure left | 14:13 |
| ← _Vi left | 14:13 |
| ← Error404NotFound left | 14:13 |
| ← chrizz left | 14:13 |
| → Rejinka joined | 14:13 |
| ← jpalmer left | 14:13 |
| ← serj left | 14:13 |
| ← bitslip left | 14:13 |
| ← mtx_init left | 14:13 |
| ← dotCOMmie left | 14:13 |
| ← Araxia left | 14:13 |
| ← estan left | 14:13 |
| ← alanp_ left | 14:13 |
| ← Guest96808 left | 14:13 |
| ← harv left | 14:13 |
| ← RobertLaptop left | 14:13 |
| ← puff left | 14:13 |
| ← DrNick left | 14:13 |
| ← alnewkirk left | 14:13 |
| ← mishok13 left | 14:13 |
| → BearPerson joined | 14:13 |
| → alnewkirk joined | 14:13 |
| Araxia_ → Araxia | 14:13 |
| → AABD3HY joined | 14:13 |
| → shachaf_ joined | 14:13 |
| ← LiohAu left | 14:13 |
| → xou_ joined | 14:13 |
| ← BearPerson left | 14:13 |
| → BearPerson joined | 14:13 |
| ← ttvd left | 14:13 |
| ← ccushing left | 14:13 |
| → setmeaway2 joined | 14:13 |
| LiohAu__ → 64MAA169I | 14:13 |
|
louiz
| :/ | 14:13 |
| ← pl0sh left | 14:13 |
| ← _Qman left | 14:13 |
| ← JEEB left | 14:13 |
| → etcetera joined | 14:13 |
| ← rchavik left | 14:13 |
| ← s0ber left | 14:13 |
| ← toobluesc left | 14:13 |
| → Yuuhi`` joined | 14:13 |
| ← Fissure left | 14:14 |
| ← phaedrix left | 14:14 |
| ← Slush- left | 14:14 |
| ← lqi left | 14:14 |
| ← dr_lepper left | 14:14 |
| ← localhost left | 14:14 |
| ← kst left | 14:14 |
| → cybersphinx joined | 14:14 |
| ← the_cybersphinx left | 14:14 |
| ← eijk left | 14:14 |
| → chrizz joined | 14:14 |
| ← zivester left | 14:14 |
| ← mdpatrick_ left | 14:14 |
| → timmywil joined | 14:14 |
| ← tgunr_ left | 14:14 |
| ← innociv left | 14:14 |
| → juvenal joined | 14:14 |
| ← jeremy_c left | 14:14 |
| ← jeffhung left | 14:14 |
| ← dilfridge left | 14:14 |
| ← charon left | 14:14 |
| → charon joined | 14:14 |
| → heptadecagram joined | 14:14 |
| ← thews left | 14:14 |
| → dilfridge joined | 14:14 |
| ← sontek left | 14:14 |
| ← SJS left | 14:14 |
| → Error404NotFound joined | 14:14 |
| ← jstemmer left | 14:14 |
| ← bobdobbs left | 14:14 |
| → harv joined | 14:14 |
| → kylebk joined | 14:14 |
| → markvandenborre joined | 14:14 |
| → RichardBronosky joined | 14:14 |
| → Marquel joined | 14:14 |
| → s0ber_ joined | 14:14 |
| s0ber_ → s0ber | 14:14 |
| → guardian joined | 14:14 |
| → ajt joined | 14:14 |
| → phix joined | 14:14 |
| → errr joined | 14:14 |
| → mace joined | 14:14 |
| → mika joined | 14:15 |
| ← mika left | 14:15 |
| → mika joined | 14:15 |
| → jeremy_c joined | 14:15 |
| → spacebat joined | 14:15 |
| → phaedrix joined | 14:15 |
| → envi_ joined | 14:15 |
| → spb_ joined | 14:15 |
| → johntramp joined | 14:15 |
| → ISF_ joined | 14:15 |
| → fir31ight joined | 14:15 |
| → niboshi joined | 14:15 |
| → mtkd joined | 14:15 |
| → naderman joined | 14:15 |
| ← spb left | 14:15 |
| ← naderman left | 14:15 |
| → naderman joined | 14:15 |
| → serj joined | 14:15 |
| spb_ → spb | 14:15 |
| → dotCOMmie joined | 14:15 |
| ← crakdmirror left | 14:15 |
| → dcelix joined | 14:16 |
| ← vmiklos left | 14:16 |
| ← Gunni left | 14:16 |
| → _Vi joined | 14:16 |
| → berserkr joined | 14:16 |
| → mtx_init joined | 14:16 |
| ← hwrdprkns_ left | 14:16 |
| ← ph^ left | 14:16 |
| ← TML left | 14:16 |
| ← dec left | 14:16 |
| ← ahf left | 14:16 |
|
louiz
| Is there a way to know, BEFORE pushing which commit will be pushed? For example I want to review all the commit that will be pushed IF I do "git push origin master", can I do that? | 14:16 |
| → crakdmirror joined | 14:16 |
| → Dreadnaught joined | 14:16 |
| ← Dreadnaught left | 14:16 |
| → Dreadnaught joined | 14:16 |
|
louiz
| (if somebody sees the question between all these netsplits…) | 14:16 |
| → mdpatrick joined | 14:16 |
| → sontek joined | 14:16 |
| ← svm_invictvs left | 14:17 |
| → Exposure joined | 14:17 |
| → RobertLaptop joined | 14:17 |
| → atdiehm joined | 14:17 |
| → dec joined | 14:17 |
| ← Unknown[NF] left | 14:17 |
| → tizzo-afk joined | 14:17 |
| ← teweWork left | 14:17 |
| → kmc joined | 14:17 |
| → ph^ joined | 14:17 |
| ← Kulrak left | 14:17 |
| ← sycofly left | 14:17 |
| → nyuszika7h joined | 14:17 |
| → zivester joined | 14:17 |
| → eijk_ joined | 14:17 |
| → Grum joined | 14:17 |
| → koki joined | 14:17 |
| → davec__ joined | 14:17 |
| → envi_|2 joined | 14:17 |
| → jspiros joined | 14:17 |
| → Flawless joined | 14:17 |
| → roflin joined | 14:17 |
| → JeffJohnson joined | 14:17 |
| → d4rk1ink joined | 14:17 |
| → Samoi joined | 14:17 |
| → oriba joined | 14:17 |
| → alexs joined | 14:17 |
| → novettam joined | 14:17 |
| → oso96_2000 joined | 14:17 |
| → zykes- joined | 14:17 |
| → wanders joined | 14:17 |
| → Praise joined | 14:17 |
| → Tianon joined | 14:17 |
| → kerrick joined | 14:17 |
| → chrisf joined | 14:17 |
| → SethRobertson joined | 14:17 |
| → LotR joined | 14:17 |
| → Ratler joined | 14:17 |
| → madduck joined | 14:17 |
| → ketas joined | 14:17 |
| → prudhvi joined | 14:17 |
| → plopix joined | 14:17 |
| → Cerise joined | 14:17 |
| → EugeneKay joined | 14:17 |
| → milli joined | 14:17 |
| → lamont joined | 14:17 |
| → Xeross joined | 14:17 |
| → twem2_ joined | 14:17 |
| → stoffus joined | 14:17 |
| → fahadsadah joined | 14:17 |
| → tg joined | 14:17 |
| → AlexanderS joined | 14:17 |
| → kanru joined | 14:17 |
| → zibri joined | 14:17 |
| → tuxx- joined | 14:17 |
| → dsop joined | 14:17 |
| → wolfric joined | 14:17 |
| → ciaranm joined | 14:17 |
| → _aeris_ joined | 14:17 |
| → MacGyverNL joined | 14:17 |
| hubbard.freenode.net set mode: +v | 14:17 |
| → alecat joined | 14:17 |
| → freimatz2 joined | 14:17 |
| → Cogito joined | 14:17 |
| → variable joined | 14:17 |
| → reuss joined | 14:17 |
| → coredumb joined | 14:17 |
| → traviscj joined | 14:17 |
| → Nickeeh joined | 14:17 |
| → Internet13 joined | 14:17 |
| → mino joined | 14:17 |
| → kenyon joined | 14:17 |
| → yogurt_truck joined | 14:17 |
| → Drakevr joined | 14:17 |
| → metze joined | 14:17 |
| → avar joined | 14:17 |
| → Ksg89 joined | 14:17 |
| → karihre joined | 14:17 |
| → teuf joined | 14:17 |
| → FDFlock joined | 14:17 |
| → DjSlash joined | 14:17 |
| → preflex joined | 14:17 |
| → magnusol joined | 14:17 |
| → eeadc joined | 14:17 |
| → nb joined | 14:17 |
| → meder joined | 14:17 |
| → TheFriscoFainter joined | 14:17 |
| → iff joined | 14:17 |
| → didlix joined | 14:17 |
| → mediaslave joined | 14:17 |
| → d1b joined | 14:17 |
| → jrockway joined | 14:17 |
| → morgajel joined | 14:17 |
| → haarg joined | 14:17 |
| → deavid joined | 14:17 |
| → eregon joined | 14:17 |
| → OPK_ joined | 14:17 |
| → rphillips joined | 14:17 |
| → electrogeek joined | 14:17 |
| → jaeckel joined | 14:17 |
| → ska-fan joined | 14:17 |
| → tychoish joined | 14:17 |
| → Dreamer3 joined | 14:17 |
| ← envi_|2 left | 14:17 |
| ← didlix left | 14:17 |
| ← mediaslave left | 14:17 |
| ← d1b left | 14:17 |
| ← rphillips left | 14:17 |
| → mediaslave joined | 14:17 |
|
cmn
| louiz: update the remote-tracking branches, then git log branch..remote/branch will tell you what commits are different | 14:17 |
| → Araxia_ joined | 14:17 |
| ← cmn left | 14:17 |
| → jmah joined | 14:17 |
| → ttvd joined | 14:17 |
| → cmn joined | 14:17 |
| ← dilfridge left | 14:17 |
|
louiz
| cmn: ah yeah, great, thanks | 14:17 |
| ← brian_g_ left | 14:17 |
| → BlindOracle joined | 14:18 |
| ← traviscj left | 14:18 |
| ← fahadsadah left | 14:18 |
| ← nb left | 14:18 |
| → DrNick joined | 14:18 |
| ← yogurt_truck left | 14:18 |
| ← haarg left | 14:18 |
| ← zivester left | 14:18 |
| ← Dreamer3 left | 14:18 |
| → gigamonkey joined | 14:18 |
|
louiz
| (one sentence is Excess flood, ok…) | 14:18 |
| ← ISF left | 14:18 |
| → ahf joined | 14:18 |
| → sycofly joined | 14:18 |
| → cyphase joined | 14:18 |
| → Unknown[NF] joined | 14:18 |
| → Corey joined | 14:18 |
| ← OPK_ left | 14:18 |
| → eMBee joined | 14:18 |
| → dilfridge joined | 14:18 |
| → zivester joined | 14:18 |
| → yogurt_truck joined | 14:18 |
| → Dreamer3 joined | 14:18 |
| → OPK joined | 14:18 |
| → Kiall joined | 14:18 |
| → mitsuhiko joined | 14:18 |
| → d1b joined | 14:18 |
| → TML joined | 14:18 |
| → svm_invictvs joined | 14:18 |
| ← svm_invictvs left | 14:18 |
| → svm_invictvs joined | 14:18 |
| → didlix joined | 14:18 |
| → jeffhung joined | 14:18 |
| ← ls|james left | 14:18 |
| → kermit joined | 14:18 |
|
cmn
| louiz: or rather, branch...remote/branch will tell you what's different | 14:18 |
| → deever joined | 14:19 |
| → rphillips joined | 14:19 |
| ← rphillips left | 14:19 |
| → rphillips joined | 14:19 |
| → SJS joined | 14:19 |
|
louiz
| Ok, I find this ... or .. notation quite hard to remember :p | 14:19 |
| → traviscj joined | 14:19 |
| → shennyg joined | 14:19 |
| → quentusrex joined | 14:19 |
| → j0ran joined | 14:19 |
| → pronoy joined | 14:19 |
| ← pronoy left | 14:19 |
| → pronoy joined | 14:19 |
| → Delerius joined | 14:19 |
| → troyt joined | 14:20 |
| → ph^_ joined | 14:20 |
| ← armenb left | 14:20 |
| → workmad3 joined | 14:20 |
| → Gunni joined | 14:20 |
|
cmn
| louiz: yes, it's a bit tricky | 14:20 |
| ← ricky left | 14:20 |
| → ricky joined | 14:20 |
| → thews joined | 14:21 |
| → Arrowmaster joined | 14:21 |
| ← codetroll left | 14:21 |
| → jstemmer joined | 14:22 |
| → ilteris_ joined | 14:22 |
| → vmiklos joined | 14:22 |
| ← flexd left | 14:22 |
| → teweWork joined | 14:22 |
| ← ph^ left | 14:22 |
| ← nyuszika7h left | 14:22 |
| → dropdrive joined | 14:22 |
| ← Arrowmaster left | 14:22 |
| → Arrowmaster joined | 14:22 |
| ← Cogito left | 14:22 |
| → ls|james joined | 14:22 |
| → jjurach joined | 14:22 |
| → crass joined | 14:22 |
| ricky → Guest72597 | 14:22 |
| ← shadowmaster left | 14:22 |
| → Fissure joined | 14:22 |
| → shadowmaster joined | 14:22 |
| → nyuszika7h joined | 14:23 |
| → Cogito_ joined | 14:23 |
| → weiyang joined | 14:23 |
| → nb joined | 14:23 |
| ← bburhans left | 14:23 |
| → toobluesc joined | 14:23 |
| ← docgnome left | 14:23 |
| → blast_hardcheese joined | 14:24 |
| ← tabakhase left | 14:24 |
| ← alnewkirk left | 14:24 |
| → bburhans joined | 14:24 |
| → pl0sh joined | 14:24 |
| → Sico joined | 14:25 |
| ← SicoWork left | 14:25 |
| → localhost joined | 14:25 |
| ← _kud left | 14:25 |
| d1b → db | 14:25 |
| → fahadsadah joined | 14:25 |
| → _kud joined | 14:25 |
| Sico → SicoWork | 14:25 |
| → tabakhase joined | 14:25 |
| db → Guest74077 | 14:26 |
| → mirage335 joined | 14:26 |
| → haarg joined | 14:26 |
| → Daniel0108 joined | 14:26 |
| ← Guest74077 left | 14:26 |
| → ceej_ joined | 14:26 |
| → GunArm joined | 14:26 |
| → docgnome joined | 14:27 |
| → Gitzilla joined | 14:27 |
| → nixmaniack joined | 14:27 |
| → armenb joined | 14:27 |
| → nDuff joined | 14:27 |
| → lisak joined | 14:27 |
| → d1b joined | 14:27 |
| ← nyuszika7h left | 14:27 |
| → flavius joined | 14:27 |
| → flaguy48 joined | 14:28 |
| ← auke- left | 14:28 |
| ← tabakhase left | 14:28 |
| → tabakhase joined | 14:28 |
| → nyuszika7h joined | 14:29 |
| → mishok13 joined | 14:29 |
| → CannedCorn joined | 14:29 |
| → fedesilva joined | 14:29 |
| → flexd joined | 14:30 |
| → auke- joined | 14:30 |
| ← jeremy_c left | 14:30 |
| → jeremy_c joined | 14:30 |
| ← nixmaniack left | 14:30 |
| ← sitaram left | 14:31 |
| ← Prasad left | 14:31 |
| → sitaram joined | 14:31 |
| ← sitaram left | 14:31 |
| → sitaram joined | 14:31 |
| → nixmaniack joined | 14:32 |
| → Slush- joined | 14:32 |
| → axl_ joined | 14:32 |
|
louiz
| Is there a way to rename a committer name in a whole repository (all the concerned commits), WITHOUT breaking the repository for people who already cloned it etc? | 14:32 |
|
cmn
| no | 14:32 |
|
louiz
| ok | 14:32 |
|
| that’s what I thought | 14:33 |
|
FauxFaux
| (By design!) | 14:33 |
|
louiz
| (Yeah, I understand) | 14:33 |
|
matthiasgorgens
| Does "git grep" also look in stashes? | 14:33 |
|
cmn
| the committer name is part of the data in the commit which is used to hash it, so if you change it, you're changing the hash etc etc | 14:33 |
| → joshsmith joined | 14:33 |
|
louiz
| yep, right | 14:33 |
|
cmn
| it's actually a feature | 14:33 |
| → flijten joined | 14:33 |
| ← fir31ight left | 14:34 |
|
phluks
| cmn: It seem to me that I'll have to create my own commits (mktree, commit-tree) if I want to commit to an unmerged branch or, do you have a fix for that too :) | 14:34 |
|
louiz
| And if I do that though, what will happen for people with their clone? Will they have to rm the directory and reclone it completely? | 14:34 |
| → eletuchy joined | 14:35 |
|
louiz
| what will happen if they try to pull the modified repository? | 14:35 |
|
cmn
| they'll merge two completely different histories that somehow produce the same worktree | 14:35 |
| → eephillip joined | 14:35 |
|
canton7
| louiz, if they merge, they'll join together the old history (the one in their repo) and the new one, and you'll end up with a third history which is a merge of the other two. If they rebase, everything will be fine (I think) | 14:35 |
|
| someone please confirm on my rebase statement :P | 14:36 |
|
cmn
| they'd have to use --onto | 14:36 |
|
| but it's doable | 14:36 |
| → Zariel joined | 14:36 |
| → muneeb joined | 14:36 |
| → neurodrone joined | 14:37 |
|
canton7
| or if they don't have any local commits which weren't rewritten (or any local changes), they can fetch; reset --hard origin/branch | 14:37 |
| ← lnostdal left | 14:37 |
| ← nixmaniack left | 14:37 |
|
louiz
| I’m worried only for people using my repository just to update their code and use my software. I can tell all the devs to reclone if necessary. So will they just be able to pull (without conflict)? | 14:37 |
|
cmn
| phluks: you can do a partial commit ignoring that magic file and then checkout that other branch and commit that file there | 14:37 |
| → fir31ight joined | 14:37 |
| → drev1 joined | 14:38 |
|
louiz
| actually I’ll try myself | 14:38 |
| → ccushing joined | 14:38 |
| ← flavius left | 14:38 |
| → luke-jr joined | 14:39 |
| → keller joined | 14:39 |
|
luke-jr
| I want to make a private git repo public, but I need to audit it for passwords in the entire history-- is there a simple way to list all the objects in a repository, so I can 'git show' each one? | 14:39 |
| → teknoid joined | 14:40 |
| ← teknoid left | 14:40 |
| ← MacGyverNL left | 14:41 |
| ← glcrazy left | 14:41 |
| → MacGyverNL joined | 14:42 |
| ← MacGyverNL left | 14:42 |
| → MacGyverNL joined | 14:42 |
| ← troyt left | 14:43 |
|
canton7
| luke-jr, git rev-list --objects --all | 14:44 |
|
luke-jr
| thx | 14:44 |
| ← drev1 left | 14:44 |
|
phluks
| cmn: hmm, Im not sure I follow you. The way I see it I need to not switch branches. Like the nice checkout. | 14:45 |
|
cmn
| well, that checkout invocation works, but committing only ever really happens on the active branch | 14:45 |
|
Zariel
| If the first commit in my branch history has incorrect eol how I can I fix it so it cleanly applies to other branches? | 14:46 |
|
phluks
| yes | 14:46 |
| ← workmad3 left | 14:46 |
| → drev1_ joined | 14:46 |
| ← kpreid left | 14:46 |
| → troyt joined | 14:47 |
| → Jackneill joined | 14:47 |
| ← Jackneill left | 14:47 |
| → Jackneill joined | 14:47 |
| ← ilteris_ left | 14:48 |
| ← kR15T0 left | 14:49 |
| ← bindaasomatic left | 14:50 |
| joshteam_mustEMA → joshteam | 14:50 |
|
cmn
| phluks: checkout when switching branches will keep your local modifications, so you can change the descriptions when you're committing on whatever branch; checkout descriptions branch and commit the descriptions there | 14:50 |
| → jonatasnona joined | 14:52 |
| → tiglog joined | 14:52 |
| → ilteris_ joined | 14:54 |
| → kpreid joined | 14:54 |
| ← cooloney left | 14:55 |
| → ceej joined | 14:55 |
| ← muneeb left | 14:56 |
| → kvanderw joined | 14:56 |
| → arvind_khadri joined | 14:57 |
| ← ISF_ left | 14:57 |
| → psakrii joined | 14:57 |
| ← oc80z left | 14:57 |
| ← troyt left | 14:57 |
| ← Praise left | 14:57 |
| → oc80z joined | 14:57 |
| ← ceej_ left | 14:57 |
| → ph^ joined | 14:57 |
| → Praise joined | 14:57 |
| ← eeadc left | 14:57 |
| → kR15T0 joined | 14:57 |
| ← yorick left | 14:57 |
| → aidenhong joined | 14:57 |
| → troyt_ joined | 14:57 |
| → drl joined | 14:57 |
| → jpalmer joined | 14:57 |
| ← arvind_khadri left | 14:57 |
| → arvind_khadri joined | 14:57 |
| → yorick joined | 14:58 |
| ← ph^_ left | 14:58 |
|
phluks
| cmn: Ah, well. That would work. I was beginning to look into add, write-tree and then update the desctiption ref to the new tree-object. | 14:58 |
|
| ah, I would need a commit too :) | 14:58 |
| ← kerrick left | 14:59 |
| → eeadc joined | 14:59 |
| → scottschulthess joined | 14:59 |
|
scottschulthess
| i'm getting | 14:59 |
|
| fatal: could not read '/etc/git-commit-template': No such file or directory | 14:59 |
| → ISF joined | 14:59 |
|
scottschulthess
| when doing "git commit" | 15:00 |
| → muneeb joined | 15:00 |
|
scottschulthess
| any ideas where i can get that file | 15:00 |
| → cannonball joined | 15:00 |
|
cmn
| phluks: yeah, git will probably get confused otherwise | 15:00 |
| → dobby156 joined | 15:01 |
|
dobby156
| hi | 15:01 |
| ← Cogito_ left | 15:01 |
| ← nyuszika7h left | 15:01 |
|
dobby156
| when i do a git branch -a I am fairly sure it's list is out of date | 15:02 |
|
| how do I get it to fetch the list of remote branches | 15:02 |
|
| thank you | 15:02 |
| → Cogito joined | 15:02 |
|
cmn
| dobby156: git fetch | 15:02 |
|
frogonwheels
| dobby156: git ls-remote ? | 15:02 |
| ← bjornbjorn left | 15:02 |
|
cmn
| if you have several remotes, git remot update or git fetch --all | 15:02 |
| → herdingcat joined | 15:03 |
| → nwp__ joined | 15:03 |
| herdingcat → ericlee_home | 15:03 |
|
frogonwheels
| dobby156: git ls-remote will list the branches on the remote, but won't update locally. | 15:03 |
| → bjornbjorn joined | 15:03 |
|
frogonwheels
| dobby156: git doesn't update stuff locally until you fetch | 15:03 |
| → Swimming_Bird joined | 15:04 |
|
canton7
| scottschulthess, git config commit.template ? | 15:04 |
|
guardian
| i have a placeholder file in my repo; which is dummy content aimed to be replaced by generated content. once the file is added to git, is .gitignore the right solution to prevent other developers from the team to override that placeholder content ? | 15:04 |
|
canton7
| guardian, no. .gitignore will not ignore files which are tracked | 15:04 |
|
cmn
| dobby156: when you say out-of-date, do you mean that you have branches that have been delted? if want to get rid of those, use git fetch --prune | 15:04 |
| ← ph^ left | 15:05 |
| → hashpuppy joined | 15:05 |
|
guardian
| canton7: so what's the solution? | 15:05 |
|
| is there kind of lock? | 15:05 |
| ← kpreid left | 15:05 |
|
FauxFaux
| No. | 15:05 |
|
hashpuppy
| new git user. i did "git branch feature1" and then git add .; git ci -m "adding to feature1". but it added it to master. how do i rollback this commit from master and commit it to feature1 branch | 15:05 |
|
frogonwheels
| guardian: you should have dummy content as blah.sample or something | 15:05 |
|
| .. and don't commit that file. | 15:05 |
|
cmn
| hashpuppy: branch creates a branch, it doesn't switch you to it | 15:06 |
|
frogonwheels
| you can use sparse-checkout to ignore it if you really need to. | 15:06 |
|
canton7
| hashpuppy , 'git branch' creates a new branch, but doesn't check it out. Use 'git branch feature1; git checkout feature1', or 'git checkout -b feature1' for short | 15:06 |
|
hashpuppy
| cmn: ha. yeah, i learned that the hard way | 15:06 |
| → elyob joined | 15:06 |
|
FauxFaux
| hashpuppy: git checkout feature1 && git cherry-pick master && git branch -f master master~ && git checkout master | 15:06 |
| → gerard0 joined | 15:06 |
|
canton7
| hashpuppy, git reset --soft HEAD^; git checkout feature1; git commit should do what you want | 15:07 |
|
FauxFaux
| Mmm, that's a waste. | 15:07 |
|
canton7
| or FauxFaux's way :P | 15:07 |
|
hashpuppy
| which way is preferred? as i'll spend sometime learning to decipher it | 15:07 |
|
FauxFaux
| git branch -f feature1 master && git reset --hard HEAD~ # is what I'd do, but I told myself I'm not going to use reset unless absolutely necessary. ¬_¬ | 15:07 |
|
| I suggest my way as it doesn't involve dealing with uncomitted stuff, so is conceptually simpler. Basically, it involves reset. :p | 15:07 |
|
hashpuppy
| your first suggestion? | 15:08 |
|
FauxFaux
| Uh, doesn't involve reset. | 15:08 |
|
| Yes. | 15:08 |
|
canton7
| (mine uses a reset --soft, so much less dangerous than a reset --hard. FauxFaux uses fewer commands. It's up to you, really) | 15:08 |
|
hashpuppy
| thanks | 15:08 |
|
canton7
| well, dangerous if you screw up the command. it's not *that* dangerous | 15:08 |
|
FauxFaux
| It involves asking if you have uncomitted changes, at least. | 15:08 |
|
canton7
| true | 15:09 |
|
| (as always, there are lots of solutions which will work just fine) | 15:09 |
|
hashpuppy
| FauxFaux: that was almost magical. thanks. i will need to figure out how that works now. | 15:09 |
| ← Praise left | 15:10 |
| ← CannedCorn left | 15:10 |
| → Praise joined | 15:10 |
| ← Praise left | 15:10 |
| → Praise joined | 15:10 |
| ← childbear2000 left | 15:10 |
| ← frogonwheels left | 15:11 |
|
canton7
| FauxFaux, is there any advantage in doing "git branch -f master master~; git checkout master" as opposed to "git checkout master; git reset --hard HEAD~" ? | 15:11 |
| → the_metalgamer joined | 15:12 |
|
Silex
| it doens't do the same thing? | 15:12 |
| ← eletuchy left | 15:12 |
|
Silex
| hum, actually it does... or not... errr | 15:12 |
|
| Silex is confused and shuts up | 15:12 |
| → talexb joined | 15:12 |
|
canton7
| to be fair, if there are uncommitted changes, they'll be safe with FauxFaux's version | 15:12 |
| ← opalka|lunch left | 15:13 |
|
FauxFaux
| Yeah, as I said, I try and avoid trying to get people to understand reset. :) | 15:13 |
| ← rdz left | 15:13 |
| ← jspiros left | 15:14 |
|
Silex
| except if I'm ignorant, I find reset much more understandable than "branch -f" | 15:14 |
| → jspiros joined | 15:14 |
|
dobby156
| cmn: thanks for the answer | 15:15 |
|
canton7
| intuitively, branch is for creating/modifying branches. I don't tend to think of it as a branch moving tool. Maybe that's just me, though | 15:15 |
|
dobby156
| I just wanted a list of all the branchs on the remote server | 15:15 |
|
FauxFaux
| Silex: Mmm. Probably because the two-argument form of branch isn't very common. | 15:15 |
|
dobby156
| which it has done | 15:15 |
| → ngulden joined | 15:15 |
|
dobby156
| cmn: just another quick question if I don a git pull (of branch B) whilst in branch A it will try and merge them | 15:16 |
|
| or does it just switch branches | 15:16 |
|
| thank you | 15:16 |
|
CareBear\
| pull = fetch + merge | 15:16 |
|
| this is the first line in the man page | 15:16 |
|
hashpuppy
| so reset will wipe out uncomitted changes? | 15:16 |
|
dobby156
| CareBear\: thank you | 15:16 |
|
CareBear\
| hashpuppy : reset will point your branch at somewhere else than it is now | 15:17 |
|
FauxFaux
| hashpuppy: Read http://progit.org/2011/07/11/reset.html . It does hundreds of things, most of which you don't want or need. | 15:17 |
|
CareBear\
| hashpuppy : --hard will drop uncommitted changes | 15:17 |
| → cwillu_at_work joined | 15:17 |
|
hashpuppy
| thanks. i def asked my question at the right time | 15:17 |
| → nixmaniack joined | 15:17 |
| → drake01 joined | 15:18 |
| ← drake01 left | 15:18 |
| → drake01 joined | 15:18 |
|
FauxFaux
| "The right time", also known as working hours in Europe. ¬_¬ | 15:18 |
| → dfr|mac joined | 15:18 |
| ← drake01 left | 15:18 |
|
CareBear\
| hashpuppy : when in doubt, commit | 15:18 |
| → cakehero joined | 15:18 |
| ← angelsl left | 15:19 |
|
CareBear\
| hashpuppy : as long as you have committed, your work can usually always be retrieved | 15:19 |
|
canton7
| (then, even if you throw away the commit by accident, you can still get it back. If you throw away uncommitted changes by accident, they're gone) | 15:19 |
|
CareBear\
| (of course not if you rm -rf) | 15:19 |
| ← Parkotron left | 15:19 |
| ← tizzo-afk left | 15:19 |
| → angelsl joined | 15:19 |
| ← muneeb left | 15:20 |
| ← dfr|mac left | 15:20 |
| ← kenperkins left | 15:20 |
| ← drl left | 15:21 |
| → Kotoc joined | 15:21 |
| → dfr|mac joined | 15:21 |
| ← frsk left | 15:21 |
| ChanServ set mode: +v | 15:22 |
| → flyz_ joined | 15:22 |
|
Kotoc
| looking to do a non-root, local dir install of git on redhat .. anyone know how? I don't have make/gcc,cc either :( | 15:22 |
| → drake01 joined | 15:23 |
| ← drake01 left | 15:23 |
| → drake01 joined | 15:23 |
| ← vdv left | 15:23 |
|
PerlJam
| Kotoc: Is this an embedded system of some sort, or just severely impoverished for no good reason? | 15:23 |
| ← drake01 left | 15:24 |
| → Know1edge joined | 15:24 |
|
FauxFaux
| Kotoc: Get an identical redhat machine on which you do have root, build everything inside a prefix, copy the entire thing over. | 15:24 |
|
Know1edge
| Hey guys, im trying to get my boss to learn to use git…he's on a mac, what's a pretty nice gui git client for him to start on? | 15:24 |
| → charco joined | 15:24 |
| ← flyz left | 15:24 |
|
charco
| Hello all :) | 15:24 |
| ← ipalaus_ left | 15:25 |
| → airborn joined | 15:26 |
|
charco
| I want a friend to pull from my machine, but I just don't know how.. I don't want to give everyone access to the repo using git daemon to serve the repo over http, and I don't want to give the other user full ssh access.. Is there an easy way to achieve this? | 15:26 |
| → mdunham918_ joined | 15:27 |
|
canton7
| charco, git-daemon doesn't use http. You can use apache to give him http access (it's a pain and pretty ugly), or you can set him up a shell account, but set his shell to git-shell (very restricted_ | 15:27 |
|
FauxFaux
| charco: You can create a new user with git-shell, and they can use that user, or you can install gitolite (which is probably packaged and hence easier). | 15:27 |
|
wereHamster
| charco: so you want to allow someone else to access your data without giving him permisison to access your data? | 15:27 |
| ← drev1_ left | 15:27 |
|
PerlJam
| charco: I'd go with gitolite :) | 15:27 |
|
FauxFaux
| M-M-MEGAJINX. | 15:28 |
|
canton7
| you can also send him a patchset over email, using git-format-patch and friends | 15:28 |
|
| haha :) | 15:28 |
| ← freimatz2 left | 15:28 |
|
FauxFaux
| git bundle | 15:28 |
|
wereHamster
| I'm curious how you manage to do that.. | 15:28 |
|
phluks
| Know1edge: im not mac-dude, but if you cannot make the linux-stuff run on your mac, you can try to check out smart git: http://www.syntevo.com/smartgit/index.html | 15:28 |
|
mdunham918_
| hello i'm working on building a github tracker so if a project I'm following has a new release i will be notified. The way I'm thinking of doing this is by tracking the tags on a project if a new tag is created in the repo then i would know it has been updated would this be the best way of knowing when a project has a new release? | 15:28 |
| → codebeaker joined | 15:28 |
| ← weiyang left | 15:28 |
|
FauxFaux
| She wants bob to have access to the code without bob having shell access or charlie getting access, wereHamster. | 15:28 |
|
PerlJam
| mdunham918_: github does have an RSS feed | 15:29 |
|
mdunham918_
| sweet | 15:29 |
| ← Araxia left | 15:29 |
| Araxia_ → Araxia | 15:29 |
|
Know1edge
| phluks: I can make the linux stuff run on my mac, it's just my boss isn't that "tech savvy" | 15:29 |
|
charco
| I am a guy | 15:29 |
|
mdunham918_
| where do i find it PerlJam | 15:29 |
|
FauxFaux
| No, your name is Alice, sorry. | 15:29 |
|
wereHamster
| mdunham918_: if you define a 'release' as 'a new tag' then yes. But not all projects use tags | 15:29 |
|
FauxFaux
| mdunham918_: Github also has ways to notify you about loads of things. See the admin interface and #github. | 15:29 |
|
mdunham918_
| RSS might be a better way | 15:29 |
|
charco
| canton7, that would be nice, but I prefer just giving pull access | 15:29 |
| ← Suresht left | 15:29 |
|
PerlJam
| mdunham918_: what FauxFaux said | 15:29 |
|
charco
| wereHamster, I want to give him permissions, but not to my whole computer | 15:29 |
|
phluks
| Know1edge: I am not a mac-dude :) - but Smartgit looks shiny | 15:30 |
|
canton7
| Bob and Alice are such strong conventions that we're not going to break them, just because of someone's real gender :P | 15:30 |
|
mdunham918_
| thanks guys | 15:30 |
|
charco
| git-shell is enough to pull ? | 15:30 |
|
FauxFaux
| Yes. | 15:30 |
|
Know1edge
| thanks phluks | 15:30 |
|
phluks
| Know1egde: ur welcome :) | 15:30 |
|
wereHamster
| charco: is that a one time thing or do you want that to work in the future? | 15:30 |
|
PerlJam
| charco: I'd still go with gitolite. | 15:31 |
|
charco
| wereHamster, it's a one time thing, but I want to know if there's a clean way if I need to do this in the future | 15:31 |
| → ecthiender joined | 15:31 |
|
FauxFaux
| canton7: The conventionts SHOULD NOT be violated, it is RECOMMENDED that any violators are shot. | 15:31 |
|
wereHamster
| charco: if it's one time, just fire up git-daemon | 15:31 |
|
charco
| PerlJam, I think gitolite is overkill | 15:31 |
|
wereHamster
| if it's recurring, install gitolite | 15:31 |
|
| or use git-shell | 15:31 |
|
charco
| I think I will go with git-shell, if I can't get it going, I will go with git-format-patch and send it via email.. | 15:32 |
|
| Thank you all :) | 15:32 |
|
FauxFaux
| charco: gitolite from packages is, like, four operations. | 15:32 |
|
canton7
| the git mailing list (and therefore the development of git) functions very well using primarily emailed patches | 15:32 |
|
FauxFaux
| That's for write, though; this is for read. | 15:32 |
| → spearce joined | 15:32 |
|
canton7
| Well, when you think that one alternative to the git mailing list system is lots of pull requests from lots of contributers, it ends up much the same | 15:33 |
| → swombat joined | 15:33 |
|
canton7
| but yes | 15:34 |
| → regedit joined | 15:34 |
| → Textmode joined | 15:34 |
| ← Praise left | 15:35 |
| → dr_lepper joined | 15:36 |
| ← dr_lepper left | 15:36 |
| → dr_lepper joined | 15:36 |
| → Praise joined | 15:36 |
|
regedit
| i have "/foo/bar/" and "!/foo/bar/exception.txt" in my .gitignore file, the exception doesn't seem to work - git whines about that file (/foo/bar/exception.txt) being ignored when i try to git add it | 15:36 |
| ← cyphase left | 15:37 |
|
canton7
| make the first like /foo/bar/* | 15:37 |
|
| *line | 15:37 |
| → avinashhm joined | 15:37 |
| ← wbednars_ left | 15:37 |
| ← Cogito left | 15:38 |
|
canton7
| "unignore" lines only match files which are explicitely ignored. if you ignore a folder, git doesn't consider each of the files inside for ignoring, and so the unignore rule never kicks in | 15:38 |
| → cyphase joined | 15:38 |
| → Cogito joined | 15:38 |
|
regedit
| ok thanks! | 15:38 |
| ← Error404NotFound left | 15:39 |
| ← harshpb left | 15:39 |
| → harshpb joined | 15:39 |
| ← mdunham918_ left | 15:39 |
| → mikewintermute joined | 15:40 |
|
dobby156
| Hi sorry another question, I am having a problem with branchs, i do a git fetch origin otherbranch | 15:40 |
|
| and I get this | 15:40 |
| → MUILTFN joined | 15:40 |
|
dobby156
| * branch otherbranch -> FETCH_HEAD | 15:41 |
|
| ok | 15:41 |
|
| but when I do a git branch it isn't listed there | 15:41 |
| → ^slacker^ joined | 15:41 |
|
dobby156
| and i can't switch into it | 15:41 |
| ← oriba left | 15:41 |
| ← pidus left | 15:41 |
| → mklappstuhl joined | 15:42 |
|
offby1
| that's because you didn't fetch it properly. | 15:42 |
| ← canton7 left | 15:42 |
| ← harshpb left | 15:42 |
|
offby1
| just do "git fetch"; that should get all branches; then you try checking it out again | 15:42 |
| → harshpb joined | 15:43 |
| → tvw joined | 15:45 |
| ← ixti left | 15:45 |
| → kai joined | 15:45 |
| → Suresht joined | 15:45 |
| ← Suresht left | 15:45 |
| → Suresht joined | 15:45 |
|
kai
| hey folks | 15:45 |
| → ixti joined | 15:46 |
| → bindaasomatic joined | 15:46 |
|
dobby156
| offby1: thank you | 15:46 |
| ← Vampire0 left | 15:47 |
|
kai
| if I want to write a hook that takes the references a user just pushed to the repository, makes sure those pass the unit tests and only commits them if they do pass, what hook would I want to use? | 15:47 |
| → Vampire0 joined | 15:47 |
| spyraway → spyro | 15:48 |
| → antoniojasr joined | 15:48 |
|
kai
| and can I check out a tree with the user's sha1 even if that's not in the repo yet? | 15:48 |
| → jaequery joined | 15:49 |
|
talexb
| kai I think you want a pre-commit hook for running the user tests. | 15:49 |
|
PerlJam
| kai: what you're attempting sounds misguided to me (good idea, applied poorly) | 15:49 |
| → stodan joined | 15:49 |
| → n8o-mba joined | 15:49 |
|
kai
| PerlJam: why misguided? I think continous integration that checks after the tree is broken is the wrong approach | 15:49 |
|
talexb
| kai I'm not sure who you'd want to check our a tree as you've described .. if you set up a hook to be triggered by a user's command, you *are* running as that user. | 15:49 |
| ← stoffus left | 15:50 |
|
codebeaker
| kai: what happens when your team run the tests, anyway … and then have to wait for another test run to do their commit? | 15:50 |
|
| one of the best things about git is that it's fast to commit | 15:50 |
|
| don't ruin that for your team | 15:50 |
|
kai
| codebeaker: my tests currently take 0.11s | 15:50 |
|
PerlJam
| kai: see talexb and codebeaker :) | 15:50 |
| → kukks joined | 15:50 |
|
kai
| it takes me hours to fix breakages to the tree | 15:50 |
| ← arvind_khadri left | 15:51 |
|
codebeaker
| putting road blocks in place for your team isn't the answer | 15:51 |
|
| education, and support is | 15:51 |
|
kai
| ok, so here's the thing | 15:51 |
|
codebeaker
| unless you don't respect them | 15:51 |
| → nyuszika7h joined | 15:51 |
|
kai
| it's an academic software project. I'm in no position to fire people who don't play along, because they're working in other departments at other universities | 15:51 |
| → ew0 joined | 15:51 |
| → SegFaultAX joined | 15:51 |
|
kai
| I do control the repository, though, so that's my only lever | 15:52 |
| ← ew0 left | 15:52 |
| ← tuxx- left | 15:52 |
| → jrm2k6 joined | 15:52 |
|
codebeaker
| also kai, regarding your point about CI being "too late" - just treat the CI as the "working" branch, and have the CI merge anything to master that passes your standard requirements | 15:52 |
|
| that's much cleaner, imo | 15:52 |
|
talexb
| kai What codebreaker said. | 15:52 |
|
kai
| I know this is trying to fix a people problem by technical measures, but it's all I have | 15:52 |
|
talexb
| kai It's the wrong approach. | 15:52 |
|
kai
| hmm | 15:52 |
| → tuxx- joined | 15:53 |
|
kai
| can I restrict who's allowed to push to master? | 15:53 |
|
| or do I need to set up personal repositories that the CI system pulls from? | 15:53 |
| ← SegFaultAX left | 15:53 |
|
codebeaker
| you could create a pre-commit hook to reject commits on master | 15:53 |
| → baburdick joined | 15:53 |
| ← lamont left | 15:53 |
|
bremner
| gitolite can enforce that kind of thing | 15:53 |
|
codebeaker
| and encourage them to push on a "review" branch | 15:53 |
| → SegFaultAX joined | 15:54 |
|
PerlJam
| kai: Also, by never letting the branch get broken you miss the opportunity for publicly humiliating the person(s) who broke it! ;) | 15:54 |
|
kai
| PerlJam: well, given it's a private repo, I don't really have that | 15:54 |
| ← muv left | 15:54 |
|
PerlJam
| kai: sure you do ... it's just that your version of "public" is smaller than the general idea of public | 15:54 |
| → erik_tr joined | 15:55 |
| ← baburdick left | 15:55 |
|
kai
| well, it's too small, I guess. at least the satisfaction of complaining about the broken branch doesn't make up for the productivity loss of having to spend a day or two to fix the branch | 15:56 |
| ← neurodrone left | 15:56 |
|
codebeaker
| kai: would it be unreasonably time consuming to "review" branches? | 15:56 |
| ← ericlee_home left | 15:56 |
|
codebeaker
| and have your committers work on pull request/ something based workflow | 15:56 |
| → ArseneRei joined | 15:56 |
|
codebeaker
| ala-github (yes, I'm aware some of the Git beards frown on the pull req. methodology) | 15:57 |
|
bremner
| no, we just frown on thinking it requires github ;) | 15:58 |
|
kai
| codebeaker: well, the politics here are a bit touchy. I think I can sell a CI setup as a 'quality improvement' step, I doubt I can sell the 'you don't get commit rights anymore because you keep breaking the tree' | 15:58 |
| → lamont joined | 15:58 |
|
bremner
| kai: just make a seperate branch for CI then | 15:58 |
|
kai
| even though this'd be the single step that would fix my problems :) | 15:58 |
|
codebeaker
| kai: having worked in a team where this was a problem, put everybody on a mailing list, and mail broken-build notifications from the CI to everyone | 15:59 |
|
| and when it becomes an issue (soon) start taking names, and bringing people up on it | 15:59 |
|
regedit
| why am i getting errors when pushing to a bare remote? "fatal: remote end hung up unexpectedly"..."error in sideband demultiplexer"..."died of signal 13"..."failed to push some refs to '/home/foo/bar/'" and yet the push seems to have been successful, i even pulled to another repo to check the history - looks ok | 15:59 |
|
codebeaker
| and remember `git revert` is politically insenstive | 15:59 |
| → imarcusthis joined | 16:00 |
| → ipalaus_ joined | 16:00 |
|
codebeaker
| have your CI revert the commit if it doesn't pass | 16:00 |
| ← Sitethief left | 16:00 |
| → ofus joined | 16:00 |
| ← kennethreitz left | 16:00 |
| ChanServ set mode: +v | 16:01 |
| ← jwmann1 left | 16:02 |
| ← Tianon left | 16:02 |
| → jwmann joined | 16:02 |
| → Tianon joined | 16:03 |
| ← Tianon left | 16:03 |
| → Tianon joined | 16:03 |
| ← gusnan left | 16:03 |
| ← erik_tr left | 16:03 |
| → tjh joined | 16:04 |
| jwmann → blah | 16:04 |
| blah → jwmann | 16:04 |
| → ScottE joined | 16:04 |
| ← phluks left | 16:04 |
| → kennethreitz joined | 16:05 |
| → giallu joined | 16:05 |
| ← giallu left | 16:05 |
| → giallu joined | 16:05 |
| → CannedCorn joined | 16:07 |
| → ericdc joined | 16:07 |
| → tewecske joined | 16:08 |
| ← tewecske left | 16:08 |
| → workmad3 joined | 16:08 |
| ← CannedCorn left | 16:09 |
| → Flogalen joined | 16:09 |
| ← mrsrikanth left | 16:10 |
|
kai
| codebeaker: thanks for the input, I'll see if I can get the CI push working revisions to a "curated" branch | 16:10 |
| → nsevn joined | 16:10 |
| → kenperkins joined | 16:10 |
|
codebeaker
| kai: sorry if you feel "shot-down" but you can't be "that guy" - plus there's more tactful ways to embarrass your hopeless users :) | 16:10 |
|
| and CI rejecting anything that fails tests seems reasonable to me :) | 16:10 |
|
kai
| codebeaker: no, I think you're right | 16:11 |
| ← Flogalen2 left | 16:11 |
| ← tiglog left | 16:11 |
| → Ryback_ joined | 16:11 |
| ← Guest93405 left | 16:12 |
|
kai
| basically all I'm trying to fix is that I need to spend too much time to work on a tree that doesn't run the tests after a fetch/rebase | 16:12 |
| → necromancer joined | 16:12 |
|
kai
| and your suggestion gives me a tree that will work like that | 16:12 |
|
regedit
| i'm getting these errors when pushing to a bare remote http://pastebin.mozilla.org/1376656 and yet the push seems to have been successful (i pulled from the bare to another repo, history looks ok) any help please? | 16:13 |
| → Guest64080 joined | 16:13 |
| ← mattalexx left | 16:13 |
|
kai
| I don't actually care if that tree is called "master" or "bob" | 16:13 |
| ← gebi left | 16:13 |
| ← cbreak-work left | 16:13 |
|
nsevn
| hey- i'm a new git user and i'm having trouble figuring out the right way to organize my project in git | 16:13 |
|
| my project combines three projects that are in other git repositories | 16:14 |
| → Drakonite2 joined | 16:14 |
|
nsevn
| each project will be in its own subdirectory at the root of my project | 16:14 |
| → Patabugen joined | 16:14 |
| ← Guest64080 left | 16:14 |
| ← axl_ left | 16:14 |
|
kai
| nsevn: do those subprojects change often? | 16:14 |
|
nsevn
| submodules don't seem to make sense because i'll be making a lot of local changes to each project | 16:14 |
|
kai
| ah :) | 16:14 |
| ← ecthiender left | 16:14 |
| ← antoniojasr left | 16:15 |
|
nsevn
| and different repositories don't seem to make sense because very often a commit will relate to all three projects at once | 16:15 |
| → intripoon_ joined | 16:15 |
|
nsevn
| but i do want to be able to merge changes from the external projects occasionally | 16:15 |
| → Drakonite3 joined | 16:15 |
|
nsevn
| i feel like i'm looking for some kind of "merge into directory" command | 16:16 |
|
Patabugen
| Hey. I've made some changes (including some file renames) and commited them. I then realised I should have done a merge first. What's the best way to sort everything out? | 16:16 |
| ← Drakonite left | 16:16 |
| ← Drakonite3 left | 16:16 |
| → axl_ joined | 16:16 |
|
nsevn
| where i can track each project as a local branch and then merge it into the corresponding subdirectory in my master branch when i need to | 16:16 |
|
| does something like this exist? | 16:16 |
|
Patabugen
| I've been playing with git-diff and patch, but that's getting confused because of the file renames | 16:16 |
| ← MUILTFN left | 16:16 |
| → ehsan joined | 16:17 |
|
nsevn
| Patabugen: i think you want to do "git reset --soft HEAD^" to undo the commit | 16:17 |
|
SethRobertson
| nsevn: Perhaps you should consider gitslave as an alternative to git-submodule, depending on your development workflow it may be better (or worse). | 16:18 |
|
nsevn
| Patabugen: then "git stash save" to save all your changes | 16:18 |
|
SethRobertson
| nsevn: gitslave (http://gitslave.sf.net) is useful when you control and develop on the subprojects at more of less the same time as the superproject, and furthermore when you typically want to tag, branch, push, pull, etc all repositories at the same time. | 16:18 |
|
| nsevn: git-submodule is better when you do not control the subprojects or more specifically wish to fix the subproject at a specific revision even as the subproject changes upstream | 16:18 |
|
nsevn
| Patabugen: then do your merge and restore your changes with "git stash apply" | 16:18 |
| → mikepack joined | 16:18 |
|
Patabugen
| nsevn ahh thank you! I'll give that a go! | 16:19 |
| ← Drakonite2 left | 16:19 |
| ← Cope left | 16:19 |
|
nsevn
| SethRobertson: thanks, i hadn't heard of gitslave, i'll give it a look :) | 16:20 |
| ← variable left | 16:20 |
| ← tommyvyo left | 16:20 |
| ← ouyes left | 16:21 |
| → MUILTFN joined | 16:21 |
|
regedit
| will git tell me "error: failed to push some refs to '/home/foo/bar'" if a post-receive hook fails on the receiving end of the push (such as not reading its STDIN or wtvr) ? | 16:21 |
|
thiago
| regedit: no | 16:21 |
|
| regedit: post-receive failure does not count as Git error | 16:22 |
|
| regedit: pre-receive failure does | 16:22 |
|
SethRobertson
| It does print the output of the script, though | 16:22 |
|
thiago
| regedit: but you get the log | 16:22 |
| → tommyvyo joined | 16:22 |
| ← Praise left | 16:22 |
| → ShadesofGraylin| joined | 16:22 |
|
regedit
| i can blame most of the errors here http://pastebin.mozilla.org/1376656 on post-receive failure. but the last error still bothers me "error: failed to push some refs to '/home/foo/bar'"... | 16:23 |
| → Praise joined | 16:23 |
|
regedit
| why did that error happen and how come it looks as if the entire push DID succeed? | 16:23 |
|
| (i pulled from the pushed repo and checked the history, looks like the push was ok) | 16:23 |
| ← verto left | 16:24 |
| → Kulrak joined | 16:24 |
| ← Kulrak left | 16:24 |
| → Kulrak joined | 16:24 |
| ← nwp__ left | 16:24 |
| ← Dreadnaught left | 16:24 |
| → bob_ joined | 16:24 |
| ← tuxx- left | 16:25 |
| ← ISF left | 16:25 |
| → tuxx- joined | 16:25 |
|
jwmann
| Can anybody explain this for me? http://d.pr/2jYn | 16:26 |
| → alvaro_o joined | 16:26 |
| → platzhirsch joined | 16:27 |
|
yrlnry
| You pushed to origin, but you should have pushed to upstream. | 16:27 |
|
| jwmann^^ | 16:27 |
|
regedit
| thiago: any idea? ^^^ | 16:27 |
| ← ipalaus_ left | 16:27 |
|
jwmann
| yrlnry: upstream is not my repo | 16:27 |
|
yrlnry
| jwmann: what exactly is it that you want to have explained? | 16:28 |
|
jwmann
| my master is a forked repo of upstream/master | 16:28 |
|
| I pulled from upstream | 16:28 |
|
| and somehow I'm AHEAD by 24 commits. | 16:28 |
| → gebi joined | 16:29 |
|
yrlnry
| jwmann: When it says "upstream/master", it means the local branch named "upstream/master" that is supposed to be tracking the actual master branch on the "upstream" remote. | 16:29 |
|
Patabugen
| nsevn: That's still giving me trouble because of the renames. It seems to be doing the rename before it does the modifications. Any ideas? | 16:30 |
|
yrlnry
| jwmann: when you "git pull upstream master" it gets the changes from the upstream master and pulls them into the local "master" branch and moves "master" forward 24 commits. But it doesn't change the "upstream/master" ref that is supposed to be tracking the upstream repo; that stays where it was. | 16:30 |
|
| So master is now ahead of "upstream/master" by 22. | 16:30 |
|
| 24. | 16:30 |
| → codetroll joined | 16:30 |
|
yrlnry
| It is not, of course, ahead of the *actual* upstream master. | 16:30 |
|
| Did that make sense? | 16:30 |
| → Liquid-Silence joined | 16:31 |
| ← alvaro_o left | 16:31 |
| ← traviscj left | 16:31 |
| → dcarper joined | 16:31 |
| → Sico joined | 16:32 |
| → ReekenX joined | 16:32 |
| ← SicoWork left | 16:33 |
| → poppiez joined | 16:33 |
| ← ks_Marian left | 16:34 |
| ← bburhans left | 16:36 |
| ← ShadesofGraylin| left | 16:36 |
| → marvin__ joined | 16:36 |
| ← _aeris_ left | 16:37 |
|
Patabugen
| Can I stash some changes, but when I apply them tell git to forget about the file renames and put the things back where they were? | 16:37 |
| ← platzhirsch left | 16:37 |
| ← JeffJohnson left | 16:37 |
| ChanServ set mode: +v | 16:37 |
| → Prasad joined | 16:37 |
| ← mquin left | 16:37 |
| → _aeris_ joined | 16:37 |
| → bburhans joined | 16:38 |
|
marvin__
| hi | 16:38 |
| → Hounth joined | 16:38 |
| → dreiss joined | 16:38 |
| → JeffJohnson joined | 16:38 |
| ← JeffJohnson left | 16:38 |
| → JeffJohnson joined | 16:38 |
|
talexb
| Patabugen, Your question's not really clear. | 16:38 |
| ← bburhans left | 16:38 |
|
talexb
| If you want to pop a stash, then rename files after that, go ahead and do that. | 16:39 |
|
Patabugen
| The problem I'm in is that I've made some changes including some file renames. I've then realised I should have done this after merging from master | 16:39 |
|
marvin__
| I got some vendor linux kernel code, I checkout the mainline tree and unpacked the vendor code into the working tree. | 16:39 |
|
Patabugen
| I've tried using git-diff and patch, and stashing the changes first. But it all fails because I've got renamed files | 16:39 |
|
| so it's not merging the file, then moving it, it's just creating the old one again | 16:39 |
|
marvin__
| how to tell git diff to ignore the mode changes? | 16:39 |
|
| or how to tell git to restore only the mode of all files it knows already off? | 16:40 |
|
Patabugen
| So I'm thinking if I can stash the changes leaving the files where they were before, the merge will be better and I can move them afterwards | 16:40 |
|
talexb
| Patabugen, It sounds like you know what you have to do. | 16:40 |
|
Patabugen
| I don't know how to apply the stashed changes without the renames though | 16:41 |
| ← _md left | 16:41 |
|
talexb
| Patabugen, How about starting a branch, popping the stashed changes, renaming the files back to what they should be, then merging that branch into the master? | 16:42 |
|
Patabugen
| I guess I could | 16:42 |
|
| I think it'll be easier just to make all the changes again | 16:43 |
| → bburhans joined | 16:43 |
| → _md joined | 16:43 |
|
Patabugen
| they weren't hard, just lots of re-naming :) | 16:43 |
| ← giallu left | 16:43 |
|
Patabugen
| In the process I have learned how to move files without git losing their history though... so it's been worth the time | 16:43 |
|
talexb
| Right .. git mv is your friend. | 16:43 |
| ← yuriks_ left | 16:44 |
| → yuriks_ joined | 16:44 |
|
| yuriks_ neves uses git mv | 16:44 |
|
yuriks_
| :[ | 16:44 |
|
bremner
| git mv is a placebo | 16:44 |
|
Patabugen
| Will git mv also keep the history, even if I make changes in the same commit? | 16:44 |
| → traviscj joined | 16:44 |
|
bremner
| rename detection does not depend on git mv at all afaik | 16:44 |
| → baburdick joined | 16:44 |
| → drev1 joined | 16:44 |
|
Silex
| git mv is a shortcut for "cp oldname newname; git add newname; git rm oldname" afaik | 16:45 |
|
bremner
| that matches my understanding | 16:45 |
|
jwmann
| yrlnry: No that's doesn't make sense | 16:46 |
|
| yrlnry: Do you think you could explain it? :( | 16:46 |
|
bremner
| I'm not even sure if it matters if the add and remove happens i the same commit. | 16:46 |
|
Patabugen
| I know you lose the history if you rename and edit in the same commit | 16:47 |
|
| This article says if you do it in two commits you're OK http://blog.bauermann.eng.br/2008/01/03/take-care-when-renaming-files-in-git/ | 16:47 |
|
regedit
| thiago: i deactivated (renamed) the post-receive hook and now pushes work just fine, otherwise i get "error: failed to push some refs to '/home/foo/bar'". given the fact that it doesn't even say [rejected] or such, i'm assuming this is a direct result of post-receive failures... | 16:47 |
|
bremner
| Patabugen: I suspect it depends how much you edit. | 16:48 |
| → jceb joined | 16:48 |
|
Patabugen
| I don't think it matters, though I've not specifically looked I have noticed that history was lost | 16:48 |
| ← jaequery left | 16:49 |
| ← AaronMT left | 16:49 |
| → jaequery joined | 16:49 |
|
bremner
| Patabugen: have you noticed renames detected with e.g. 85% written after them? | 16:49 |
| → msponge joined | 16:49 |
|
bremner
| those are combined edit+renames. | 16:49 |
| → AaronMT joined | 16:49 |
|
Patabugen
| Yeah, but then a git log -- path/to/file shows a shortened history | 16:49 |
|
bremner
| anyway, it's probably a good idea to do the edits in a seperate commit, independently of how it interacts with the rename detection heuristics | 16:50 |
| JEEBcz → JEEB | 16:50 |
| ← JEEB left | 16:50 |
| → JEEB joined | 16:50 |
|
Patabugen
| I think I will be doing so from now, it's caused quite a pain to have not done it this afternoon | 16:50 |
| → flavius joined | 16:51 |
| ChanServ set mode: +v | 16:52 |
|
bob_
| Why is there no 1.7.7.2 at http://code.google.com/p/msysgit/downloads/list ? | 16:52 |
| ← dreiss left | 16:52 |
|
jast
| I think the msysgit maintainers don't build every single release | 16:53 |
|
| anyway, they're human and don't always build everything instantly | 16:54 |
|
bob_
| @jast thanks | 16:54 |
|
poppiez
| hi, might be a stupid question: I have a reposity that hosts my main website. here all my JS libs, default CSS classes etc. are included. now, I've created a new repo that I want to use as a submodule. for the repo to work, I have to include libs that my main website already uses. how would that work in practice? | 16:54 |
|
| as I see it, I'll have files that overlap | 16:54 |
|
| and if I provide a build script in my repo uses as a submodule, all the JS will be bundled as a single file | 16:55 |
| → bitkiller joined | 16:55 |
| ← Praise left | 16:56 |
| → wbednarski joined | 16:56 |
| → Praise joined | 16:57 |
| ← EugeneKay left | 16:58 |
| ← dharrigan left | 16:59 |
| ← mklappstuhl left | 16:59 |
| ← EnderMB left | 16:59 |
| → EugeneKay joined | 16:59 |
| ← Cipher-0 left | 17:00 |
| → phlipper joined | 17:01 |
| ← dr_lepper left | 17:01 |
| → tshauck joined | 17:01 |
| ← Praise left | 17:02 |
| → Jay_Levitt joined | 17:02 |
| ← harshpb left | 17:03 |
| → harshpb joined | 17:04 |
| → SicoWork joined | 17:04 |
| ← whitman left | 17:04 |
| ← Sico left | 17:04 |
| → vdv joined | 17:04 |
| ← marvin__ left | 17:05 |
| → Praise joined | 17:05 |
| ← psoo_ left | 17:09 |
| ← ArseneRei left | 17:09 |
| ← Praise left | 17:09 |
| → Praise joined | 17:10 |
| ← Praise left | 17:10 |
| → Praise joined | 17:10 |
|
regedit
| is there a linux command for "do nothing" ? | 17:10 |
| ← teweWork left | 17:10 |
|
mmattice
| true | 17:11 |
| → arvind_khadri joined | 17:11 |
| ← arvind_khadri left | 17:11 |
| → arvind_khadri joined | 17:11 |
|
regedit
| hm that works, thanks! | 17:11 |
| → Galaxor joined | 17:11 |
|
thiago
| : | 17:11 |
| ← MacGyverNL left | 17:11 |
| ← jrm2k6 left | 17:12 |
| ← baburdick left | 17:12 |
| ← mishok13 left | 17:12 |
|
thiago
| : works everywhere, but true is a Linuxism | 17:12 |
| → MacGyverNL joined | 17:12 |
| ← MacGyverNL left | 17:12 |
| → MacGyverNL joined | 17:12 |
|
jast
| the BSDs have true as well | 17:12 |
| ← scottschulthess left | 17:13 |
| → teweWork joined | 17:13 |
|
regedit
| thiago: it seems that a post-receive hook failure does not really stop a push from completing, but a (misleading) error "error: failed to push some refs to '/home/foo/bar'" still shows | 17:13 |
| → baburdick joined | 17:13 |
|
regedit
| it is (apparently) false; all refs have been successfully pushed | 17:13 |
|
mmattice
| thiago: : is a shell builtin. not a 'command' | 17:14 |
|
regedit
| how do i submit a bug to git? | 17:15 |
|
Galaxor
| Hi. I had a repo I was working on. I decided I wanted to share it, so I made a bare copy with git clone --mirror. It's all good, except that I had a development branch checked out in my work tree when I made the clone. Therefore, now, when you make clones off of the bare repo, you don't get master, you get my dumb development branch. | 17:15 |
|
jast
| regedit: post to the mailing list, see link in topic | 17:15 |
|
Galaxor
| Is there a way to change the default branch in the bare repo? | 17:15 |
|
jast
| Galaxor: you need remote shell access or something | 17:15 |
|
| if you have that: git symbolic-ref HEAD refs/heads/otherbranch | 17:15 |
|
Galaxor
| jast: Aha. Glorious, thank you very much. | 17:16 |
| → alphacow joined | 17:16 |
| → mandric joined | 17:17 |
| → Raging_Hog joined | 17:18 |
|
regedit
| lol "true command- Do nothing, successfully" | 17:18 |
| ← Hounth left | 17:18 |
| ← wbednarski left | 17:19 |
| ← MUILTFN left | 17:19 |
| ← Liquid-Silence left | 17:20 |
| ← hwrdprkns__ left | 17:20 |
| ← Nikoli left | 17:20 |
| → Antisoche joined | 17:21 |
| → Liquid-Silence joined | 17:21 |
|
SethRobertson
| poppiez: have you figured it out? | 17:22 |
| → ipalaus_ joined | 17:23 |
| ← bob_ left | 17:23 |
| → hwrdprkns_ joined | 17:23 |
| ← flavius left | 17:23 |
| → MUILTFN joined | 17:24 |
| ← airborn left | 17:24 |
| → kerrick joined | 17:25 |
| ← Liquid-Silence left | 17:26 |
| ← kenyon left | 17:26 |
| ← shachaf_ left | 17:26 |
| ← ipalaus_ left | 17:26 |
| → kenyon joined | 17:27 |
| → shachaf joined | 17:27 |
| → rhl joined | 17:27 |
| ← hwrdprkns_ left | 17:27 |
| → innociv joined | 17:28 |
| → marvin__ joined | 17:28 |
| → MANCHUCK joined | 17:28 |
| ← tshauck left | 17:28 |
| ← MUILTFN left | 17:29 |
| → ipalaus_ joined | 17:29 |
| ChanServ set mode: +v | 17:29 |
|
marvin__
| any ideas what I can do about the wrong file modes? | 17:29 |
|
MANCHUCK
| how do I "merge" multiple submodules into 1 directory | 17:29 |
| ← innociv_ left | 17:30 |
| → kedare joined | 17:30 |
| → kenichi joined | 17:31 |
| → DofLeFou joined | 17:31 |
| → psoo joined | 17:31 |
| ← ReekenX left | 17:32 |
| ← mirage335 left | 17:32 |
| → maletor joined | 17:32 |
| ← nicoulaj left | 17:32 |
| → hwrdprkns joined | 17:32 |
| → infogulch joined | 17:32 |
|
MANCHUCK
| or better yet how can i have multiple submodules be in the same path? | 17:32 |
| → MUILTFN joined | 17:34 |
| ← ipalaus_ left | 17:34 |
| ← omn left | 17:35 |
| ← kR15T0 left | 17:35 |
| ← mandric left | 17:36 |
| → Araxia_ joined | 17:36 |
| ← babilen left | 17:36 |
|
jast
| MANCHUCK: not possible | 17:37 |
|
PerlJam
| MANCHUCK: perhaps you could explain in more detail why you want what you want? | 17:37 |
|
jast
| you can create a new repository and merge two others together in it, then use that as a submodule | 17:37 |
|
| not terribly maintenance-friendly, though | 17:38 |
|
MANCHUCK
| jast, I am using doctrine and I pulleld it in as a submodule however that has its own submodules | 17:38 |
|
jast
| oh. | 17:38 |
|
| well, you can nest submodules recursively | 17:38 |
| ← hwrdprkns left | 17:38 |
| → gusnan joined | 17:38 |
| → yakko joined | 17:38 |
| ← MUILTFN left | 17:38 |
| → ipalaus_ joined | 17:39 |
| ← charco left | 17:39 |
|
MANCHUCK
| how do I do that> | 17:39 |
|
marvin__
| okay. try mailing list then | 17:39 |
| ← niloc132 left | 17:39 |
| ← teweWork left | 17:39 |
| ← _kud left | 17:39 |
| ← jceb left | 17:39 |
| ← Octalot left | 17:39 |
|
yakko
| hey guys, 3 commits ago I did some stuff and I regret, how can I remove that commit's sha1 while still keeping the latest commits? | 17:40 |
| ← JSHANAB_ left | 17:40 |
| ← gebi left | 17:40 |
|
marvin__
| not possible, yakko | 17:40 |
|
yakko
| marvin__, since it's a one file thing, can I unstage those somehow? | 17:41 |
|
jast
| uh what? of course it's possible | 17:42 |
|
yakko
| I don't mean to cherry pick | 17:42 |
|
jast
| it's only recommended if you haven't shared that commit yet, nor the newer ones | 17:42 |
| ← baburdick left | 17:42 |
|
yakko
| I just wanna kill a commit ( I have it's sha1) | 17:42 |
| → hwrdprkns joined | 17:42 |
|
jast
| yes, but have you published that commit or the newer ones? | 17:43 |
|
yakko
| I'm the only developer in the project | 17:43 |
|
jast
| if you haven't, we can make it like the commit never happened | 17:43 |
|
| all right | 17:43 |
|
| the solution is git rebase. see the section 'interactive mode' in its manpage. | 17:43 |
|
marvin__
| git rebase, for unpublished trees. but wont this change the other commit ids? | 17:43 |
| → baburdick joined | 17:43 |
|
jast
| interactive rebase is pure magic. :) | 17:43 |
|
| sure will | 17:43 |
|
yakko
| I can checkout to a later one and remove it | 17:43 |
| → luxurymode joined | 17:44 |
| → airborn joined | 17:44 |
|
marvin__
| git rebase to the previous commit id that you want to remove | 17:45 |
|
jast
| look, just use interactive rebase. remove the messed up commit from the list. done. | 17:45 |
| ← psoo left | 17:45 |
|
MANCHUCK
| oh its just running git submodule update --recursive --init | 17:46 |
| → pidus joined | 17:46 |
| → dreiss joined | 17:47 |
| ← whodevil left | 17:47 |
| → psoo joined | 17:47 |
| ← asakura left | 17:47 |
| ← iknite left | 17:47 |
| ← ngulden left | 17:47 |
|
yakko
| marvin__, so "git rebase 9346327462398478293" will remove those changes? | 17:48 |
|
jast
| no. | 17:49 |
| → mirage335 joined | 17:49 |
|
jast
| reading the section about interactive rebase will remove those changes. indirectly. :) | 17:49 |
| → asakura joined | 17:49 |
| → MUILTFN joined | 17:49 |
|
jast
| git rebase <ID of broken commit> just won't do anything at all. | 17:49 |
|
marvin__
| correct | 17:50 |
|
yakko
| what am I missing? | 17:50 |
|
marvin__
| do an interactive rebae | 17:50 |
| ← iXeno left | 17:50 |
| → tystr joined | 17:50 |
|
jast
| the part where you read about interactive rebase. | 17:50 |
| ← tystr left | 17:51 |
| ← roflin left | 17:51 |
| → Turicas joined | 17:51 |
| → babilen joined | 17:51 |
| → tystr joined | 17:52 |
| → roflin joined | 17:52 |
| → canton7 joined | 17:52 |
| ← traviscj left | 17:53 |
| → Dreadnaught joined | 17:53 |
| ← Dreadnaught left | 17:53 |
| → Dreadnaught joined | 17:53 |
| → EricDalquist joined | 17:54 |
| ← Kulrak left | 17:54 |
| ChanServ set mode: +v | 17:54 |
| ← benrush left | 17:54 |
| → cytrinox joined | 17:54 |
| ← kerrick left | 17:55 |
|
yakko
| there were people asking me something IRL | 17:55 |
|
| ok interactive rebase, I'll give it a read | 17:55 |
| ← padams left | 17:55 |
|
marvin__
| git rebase -i commit-id~1 or something | 17:56 |
| ← workmad3 left | 17:56 |
| ← arvind_khadri left | 17:58 |
| flyz_ → flyz | 17:58 |
| → Chillance joined | 17:58 |
| ← achadwick left | 17:58 |
| → ksawicki joined | 17:58 |
| ← iPHP left | 18:00 |
|
EricDalquist
| Is there a way to grab a folderfrom project A and move it into project B? | 18:00 |
|
marvin__
| I got some vendor linux kernel code, I checkout the mainline tree and unpacked the vendor code into the working tree. | 18:00 |
|
| I got some vendor linux kernel code, I checkout the mainline tree and unpacked the vendor code into the working tree. | 18:00 |
|
| how to tell git diff to ignore the mode changes? | 18:00 |
|
PerlJam
| EricDalquist: just like you would with any other folder. | 18:00 |
|
marvin__
| or how to tell git to restore only the mode of all files it knows already off? | 18:01 |
| ← Suresht left | 18:01 |
|
marvin__
| i want to find out what they did change. but git diff is showing me all the file modes changes as diffs. probably the tar was packed incorretly | 18:02 |
| → PySloan joined | 18:03 |
| ← dobby156 left | 18:04 |
| → solofight joined | 18:04 |
| ← ksawicki left | 18:04 |
| → mandric joined | 18:05 |
| → ksawicki joined | 18:05 |
|
bremner
| marvin__: look for core.filemode in man git-config | 18:05 |
|
jast
| marvin__: *automatic message* the 'git-config' manpage can be found at <http://git.kernel.org/?p=git/git-htmldocs.git;a=blob_plain;f=git-config.html;hb=master> | 18:05 |
|
solofight
| people when git is being installed it asks me to close other applications (the first screen of the installation process displays it)- any idea why ? | 18:05 |
|
| thought i didnt close any application it installed successfully | 18:05 |
|
marvin__
| if git doesn't have that functionality, it would be great if somebody add it | 18:05 |
| ← EricDalquist left | 18:05 |
|
bremner
| solofight: that sound like a windows/msysgit thing, not git per se | 18:06 |
|
canton7
| solofight, what are you using to install git? chances are it wasn't made by the git devs | 18:06 |
|
bremner
| jinx :) | 18:06 |
| ← madduck left | 18:06 |
| ← envi_ left | 18:06 |
|
solofight
| bremner, yes windows git | 18:06 |
|
| canton7: am installing git on windows | 18:07 |
| → big_dog joined | 18:07 |
| → gebi joined | 18:07 |
| ← _md left | 18:07 |
| → madduck joined | 18:08 |
| → mishok13 joined | 18:08 |
|
marvin__
| excellent. filemode is my friend. thanks :-) | 18:08 |
| ← tatsuya_o left | 18:09 |
| ← codebeaker left | 18:10 |
| ← big_dog left | 18:12 |
| ← Jay_Levitt left | 18:12 |
|
yakko
| thanks for the rebase people people :D | 18:12 |
|
| I'd never use that command, dead simple | 18:12 |
|
| :DDDDDDD | 18:12 |
|
| I was so afraid | 18:13 |
| ← baburdick left | 18:13 |
| → prasadkr joined | 18:13 |
| → baburdick joined | 18:13 |
|
marvin__
| this is also why you probably want to work on a seperate branch, but master :-) | 18:13 |
| → traviscj joined | 18:14 |
| ← vdv left | 18:14 |
| ← Prasad left | 18:14 |
| ← stodan left | 18:14 |
| → big_dog joined | 18:14 |
| → soc42__ joined | 18:14 |
| ← marvin__ left | 18:15 |
| → EricInBNE joined | 18:16 |
| ← soc42_ left | 18:16 |
| prasadkr → Prasad | 18:17 |
| → amitayh joined | 18:17 |
| → niloc132 joined | 18:18 |
| ← fermo left | 18:18 |
| ← big_dog left | 18:18 |
| ← cyphase left | 18:18 |
| ← poppiez left | 18:19 |
| ← Galaxor left | 18:19 |
|
talexb
| :( Just tried git-stitch-repo, and saw 'git-fast-import died of signal 9' after about 20 minutes. Swap was at 14.5G last time I looked. | 18:20 |
| → big_dog joined | 18:20 |
| ← amitayh left | 18:22 |
| → codebeaker joined | 18:23 |
| ← nsevn left | 18:23 |
| → k_89 joined | 18:24 |
|
k_89
| what hashing algo does git use .. and does it use it per file basis?? | 18:25 |
| ← infogulch left | 18:25 |
|
talexb
| k_89, I think git uses SHA1 for hashing. | 18:25 |
|
k_89
| talexb, k .. thanks | 18:26 |
|
talexb
| Each commit has a hash value .. not sure about whether each file has its own hash value as well. | 18:26 |
|
EugeneKay
| Yes. | 18:26 |
|
| Everything is hashed. | 18:26 |
|
k_89
| it should .. how else would it check for changesi n files | 18:26 |
| → shruggar joined | 18:27 |
| ← big_dog left | 18:27 |
|
k_89
| hmmm... i'm gonna make a git like thing (without rollbacks) for dbs in php | 18:28 |
|
canton7
| k_89, it's more than that. !bottomup | 18:28 |
|
jast
| k_89: *automatic message* 'Git from the bottom up' starts with explaining the building blocks of git and proceeds to tell you how they fit together. http://ftp.newartisans.com/pub/git.from.bottom.up.pdf | 18:28 |
| → _kud joined | 18:28 |
| ← guardian left | 18:28 |
|
EugeneKay
| k_89 - make sure to look up libgit2 and php-git on Github. | 18:30 |
| → gragoery joined | 18:30 |
|
k_89
| EugeneKay, k .. thanks | 18:30 |
| ← codebeaker left | 18:30 |
| → cyphase joined | 18:30 |
| ← gragoery left | 18:31 |
| ← shruggar left | 18:31 |
| ← niloc132 left | 18:32 |
| ← berserkr left | 18:32 |
| ← k_89 left | 18:32 |
| ← _kud left | 18:33 |
| ← cannonball left | 18:35 |
| → doshi joined | 18:35 |
| ← PigeonFriend left | 18:37 |
|
solofight
| people apon seeing people not replying as soon as i said i installed git on windows i understand i am in the wrong room ? if correct please point me to the right direction ? | 18:37 |
|
| my question was | 18:37 |
|
| people when git is being installed it asks me to close other applications (the first screen of the installation process displays it)- any idea why ? | 18:37 |
|
| thought i didnt close any application it installed successfully | 18:37 |
| → CannedCorn joined | 18:37 |
| ← CannedCorn left | 18:38 |
|
talexb
| solofight, I'm not that familiar with Windows, but it doesn't always behave well during installations. Contention of the registry, perhaps? | 18:38 |
| ← tvw left | 18:39 |
| → Jay_Levitt joined | 18:40 |
|
solofight
| talexb: i have around 12 programs opened and i was still able to install it succesfully | 18:40 |
|
| ? | 18:40 |
| 64MAA169I → LiohAu | 18:40 |
|
talexb
| solofight, No idea. Ask Microsoft. | 18:40 |
|
solofight
| talexb: ok thanks for your time | 18:40 |
|
bremner
| err, whomever makes git-for-windows | 18:40 |
|
cbreak
| solofight: windows is weird | 18:41 |
|
canton7
| solofight, that's the juristiction of the msysgit team. It's probably just for safety. Lots of programs seem to do it | 18:41 |
|
bremner
| where if FauxFaux when we need him to defend windows | 18:41 |
|
FauxFaux
| Watching Harry Potter and talking to my significant other. | 18:41 |
| → Cipher-0 joined | 18:42 |
| spyro → spyraway | 18:42 |
| ← dr_win left | 18:43 |
| ← baburdick left | 18:43 |
| → baburdick joined | 18:43 |
| ← Patabugen left | 18:45 |
| ← Swimming_Bird left | 18:46 |
| ← eeadc left | 18:46 |
| → t4nkd joined | 18:46 |
| → eeadc joined | 18:46 |
| → ColKurtz joined | 18:47 |
| ← msponge left | 18:49 |
| → _iron joined | 18:50 |
| → kerrick joined | 18:50 |
| → sedwards joined | 18:50 |
| ← drev1 left | 18:51 |
| ← swombat left | 18:51 |
| ← Prasad left | 18:51 |
|
solofight
| canton7: exactly am wondering for long time now | 18:51 |
| ← innociv left | 18:51 |
| → variable joined | 18:51 |
| → drev1 joined | 18:51 |
|
variable
| with git-svn how do I "pull" updates ? | 18:51 |
|
canton7
| git svn rebase | 18:52 |
| ← psakrii left | 18:52 |
| → flavius joined | 18:52 |
|
variable
| canton7: thanks | 18:52 |
| ← sedwards left | 18:52 |
| → sedwards joined | 18:52 |
| → innociv joined | 18:52 |
| ← sedwards left | 18:53 |
|
canton7
| solofight, from googling, it seems to be to avoid a (remote) chance of a shared dll/exe/whatever being used by another program during installation | 18:54 |
| → sedwards joined | 18:54 |
| ← sedwards left | 18:54 |
| → sedwards joined | 18:54 |
|
canton7
| (if it is being used elsewhere, a reboot will be required to complete the installation) | 18:54 |
| ← sedwards left | 18:54 |
| → sedwards joined | 18:54 |
| ← sedwards left | 18:54 |
| → sedwards joined | 18:54 |
|
canton7
| iirc, ext uses a system where currently-in-use files can be modified, and new programs get the new version, programs using it prior to the change get the old version... So this issue doesn't occur. It's also why linux updates don't require a restart (except for kernel upgrades) | 18:55 |
|
solofight
| canton7: yeah lot of people say lot of things. when i googled found out that its to save memory which is required in huge amounts while installation process which also makes sense ? | 18:55 |
|
canton7
| could, could. I suspect that's less of an issue nowadays, though | 18:56 |
| → icwiener joined | 18:56 |
|
canton7
| I suspect the main motivation is "everything else says it, and we might as well be on the safe side" | 18:56 |
| → abyssal joined | 18:56 |
| ← sedwards left | 18:57 |
| → ProLoser|Work joined | 18:57 |
|
solofight
| canton7: a shared dll/exe being used ? you mean replacing a shared dll/exe when its being used by other programs ? | 18:57 |
|
canton7
| possibly. On that point, I'm parroting what I've read elsewhere :P | 18:58 |
|
solofight
| canton7: you say ext file systems maintain multiple copies of files ? old for programs which are already using it and new one for upgraded/newly installed programs ? | 18:58 |
| ← doshi left | 18:58 |
|
canton7
| http://it.toolbox.com/blogs/locutus/why-linux-can-be-updated-without-rebooting-12826 | 18:58 |
|
| that's where I first read it, I think | 18:58 |
| → doshi joined | 18:59 |
|
solofight
| canton7: thank you. will read now | 18:59 |
|
canton7
| I remember another article decribing how to recover a file that you'd just deleted, but was still referenced by something... or other. Can't remember the details off the top of my head | 18:59 |
| ← abyssal left | 19:00 |
|
canton7
| this looks similar: http://linuxshellaccount.blogspot.com/2008/08/recovering-deleted-files-by-inode.html | 19:00 |
|
jast
| ext2/3/4 don't allow modification of files that are already open for writing by another application | 19:00 |
|
| but it's possible to delete a file that's open for reading | 19:00 |
|
canton7
| jast, open for reading, then | 19:00 |
|
| aha | 19:00 |
|
jast
| I'm not sure about modifying a file that's open for reading | 19:01 |
|
| most of the time, updates don't modify the existing file but just clobber it and write a new one | 19:02 |
|
canton7
| it appears at least executables are loaded into memory prior to execution, so changing the file on-disk doesn't affect the one that's executing | 19:02 |
|
jast
| yep | 19:03 |
| → storrgie joined | 19:03 |
| ← p3rror left | 19:03 |
| ← MUILTFN left | 19:03 |
| → ner0x joined | 19:03 |
| ← _Vi left | 19:03 |
|
jast
| works the same way on windows... but the file is still open in both cases, and windows won't let you change/delete it | 19:03 |
|
ner0x
| Is there a way to ignore a directory in a file tree? | 19:03 |
|
canton7
| man gitignore | 19:04 |
|
jast
| *automatic message* the 'gitignore' manpage can be found at <http://git.kernel.org/?p=git/git-htmldocs.git;a=blob_plain;f=gitignore.html;hb=master> | 19:04 |
| → _Vi joined | 19:04 |
| ← EricInBNE left | 19:04 |
| → CannedCorn joined | 19:04 |
| → iXeno joined | 19:05 |
|
ner0x
| canton7: I used git ignore and it doesn't seem to be working. | 19:05 |
|
canton7
| ner0x, is the file tracked? | 19:05 |
|
| git won't ignore tracked files/folders | 19:05 |
|
ner0x
| canton7: Brand new files | 19:06 |
| → desaila joined | 19:06 |
|
ner0x
| Actually, adding t/files seemed to do the trick, odd. | 19:06 |
|
canton7
| ner0x, what's the contents of your .gitignore, where is it, and where are the files? | 19:06 |
|
| hmmm | 19:06 |
| ← kerrick left | 19:06 |
| → guy___brush joined | 19:06 |
|
ner0x
| base/t/files is what I was trying to get rid of. Added t/files to base/.git/info/exclude and it seemed to work. | 19:06 |
| ← hurikhan|Work left | 19:06 |
|
desaila
| if you're on a local branch, and you do something like, "git pull origin master", does it automatically update your branch's code as well? | 19:07 |
| ← Cogito left | 19:07 |
| → dcarper_ joined | 19:07 |
|
canton7
| desaila, it will update all local-tracking branches, and merge origin/master into the local branch | 19:07 |
| → Cogito joined | 19:07 |
|
canton7
| ahem, remote-tracking branches. the ones that begin with "origin/" | 19:07 |
| ← dcarper left | 19:08 |
|
desaila
| ah | 19:08 |
| → alecthegeek joined | 19:08 |
|
desaila
| so how do pull origin/master into my local branch without creating a new branch? | 19:08 |
|
| or is that a merge operation? | 19:08 |
|
canton7
| a pull is a fetch plus a merge | 19:08 |
|
| it's a shortcut, if you like | 19:08 |
| ← heinrich5991 left | 19:08 |
|
jast
| 'git pull origin master' merges into the currently checked out branch | 19:08 |
|
desaila
| ^ | 19:08 |
| → phishy joined | 19:08 |
|
desaila
| that's what i thought jast | 19:08 |
| → p3rror joined | 19:09 |
|
canton7
| hmm, i should have said "merge origin/master into the currently-checked-out branch", not "local branch" | 19:09 |
|
| clarity fail | 19:09 |
| ← doshi left | 19:09 |
| → MUILTFN joined | 19:10 |
| → heinrich5991 joined | 19:10 |
| ← Vile left | 19:10 |
| → aspotashev| joined | 19:10 |
| ← sheriff left | 19:10 |
| → UnsignedCode joined | 19:10 |
| → swombat joined | 19:11 |
| → alanp_ joined | 19:11 |
| → kerrick joined | 19:11 |
| → vdv joined | 19:11 |
|
UnsignedCode
| hi all, running gitosis on Ubuntu for personal projects… do I have to connect to the server every time I want to 'create' a new project from Windows, and create it there first, edit the gitosis-conf file etc... | 19:12 |
| ← kriegerod left | 19:12 |
| → alecthegeek_ joined | 19:12 |
|
kevlarman
| UnsignedCode: no, in fact you shouldn't ever do that | 19:12 |
| ← Kotoc left | 19:12 |
|
kevlarman
| UnsignedCode: clone the gitosis-admin repo | 19:12 |
| ← alecthegeek left | 19:13 |
| alecthegeek_ → alecthegeek | 19:13 |
|
kevlarman
| and edit there | 19:13 |
| → carutsu joined | 19:13 |
|
kevlarman
| when you push, the server's configuration updates | 19:13 |
|
UnsignedCode
| but i need to do something on the server for every project? | 19:13 |
|
kevlarman
| UnsignedCode: also, !gitosis | 19:13 |
|
jast
| UnsignedCode: *automatic message* gitosis is no longer maintained and supported by the author; we usually recommend gitolite instead which has much better documentation and more features: http://github.com/sitaramc/gitolite | 19:13 |
|
UnsignedCode
| no way to say "dump this project over there" | 19:13 |
|
kevlarman
| UnsignedCode: you need to update gitosis-admin for every project | 19:13 |
| → joch_n joined | 19:14 |
| ← baburdick left | 19:14 |
|
canton7
| UnsignedCode, you can set up permissions for entire folders, with the create permissions (gitolite only I think?), then just push new projects to the folder | 19:14 |
|
UnsignedCode
| that's the kind of thing i'm looking for. | 19:14 |
|
| for the short term, there's only me working on these things. | 19:14 |
|
canton7
| the line from my gitolite config file: | 19:14 |
| ← p3rror left | 19:15 |
|
EugeneKay
| gitolite has CREATOR syntax you can abuse | 19:15 |
| → baburdick joined | 19:15 |
| ← alanp left | 19:15 |
|
canton7
| repo projects/.*\nC = canton7\nRW+ = canton7 | 19:15 |
|
carutsu
| I have an alias that works in the command line but not when added to my .gitconfig file | 19:15 |
|
| here's it pristine = !git clean -fxd -e \*.kdev4 -e .kdev4/ && git reset --hard | 19:15 |
|
UnsignedCode
| ok, so steps to get rid of gitosis and get gitolite set up? :) | 19:15 |
|
carutsu
| how do I debug it? | 19:15 |
|
EugeneKay
| Gitolite has a migrate doc | 19:16 |
|
UnsignedCode
| ooooh. | 19:16 |
|
EugeneKay
| http://sitaramc.github.com/gitolite/migr.html | 19:16 |
|
UnsignedCode
| magic. | 19:16 |
| → doshi joined | 19:16 |
|
UnsignedCode
| thanks very much. | 19:16 |
|
| i'll have a poke around. | 19:16 |
|
| does gitolite use keys like gitosis or passwords? | 19:17 |
|
| (or configurable) | 19:17 |
|
kevlarman
| keys | 19:17 |
| → workmad3 joined | 19:17 |
|
UnsignedCode
| thanks. i'll give this migration a go. | 19:17 |
|
canton7
| yeah, the concept's pretty much identical | 19:17 |
| ← doshi left | 19:17 |
| → guardian joined | 19:18 |
| ← Know1edge left | 19:18 |
| → Know1edge joined | 19:19 |
| ← gusnan left | 19:19 |
| ← stepnem left | 19:21 |
| ← nixmaniack left | 19:21 |
| ← lindenle left | 19:22 |
| → stepnem joined | 19:22 |
| ← workmad3 left | 19:23 |
| ← NetHawk left | 19:23 |
| → kevwil joined | 19:23 |
| → p3rror joined | 19:24 |
| → rzec joined | 19:24 |
| → marekw2143 joined | 19:25 |
|
marekw2143
| what's the difference between push and pushurl? | 19:26 |
|
ProLoser|Work
| push url? | 19:27 |
|
| i don't know of a command that has pushurl | 19:27 |
|
canton7
| neither does google | 19:27 |
| ← p3rror left | 19:28 |
|
ProLoser|Work
| i know of git push <url> branch | 19:28 |
|
ner0x
| So let me git this straight. Git will add all the files to .git/objects even if they are untracked? | 19:28 |
|
marekw2143
| nono, but there's config parameter when doing: git config remote.origin.pushurl | 19:28 |
|
ner0x
| Just as a hash? Or what? | 19:28 |
|
| ProLoser|Work wonders if ner0x's pun was deliberate | 19:28 |
|
canton7
| ner0x, no. git ignores untracked files | 19:28 |
|
jmah
| ner0x: if you "git add" a file, a blob for it gets added to objects and it becomes tracked. | 19:29 |
|
ProLoser|Work
| ner0x: have you worked with svn? | 19:29 |
|
jmah
| (even though it may not be in a commit yet) | 19:29 |
|
canton7
| marekw2143, aaah. I believe that's for if you want to push somewhere different to where you pull from | 19:29 |
|
ProLoser|Work
| but if you remove it before committing it i think it's taken out of the objects | 19:29 |
|
ner0x
| Well, when I do git status, the files are not there. Git add . also does not add them. But when I upload the entire directory to my backup server, it's making a .git/objects file for each... Very odd. | 19:29 |
|
marekw2143
| canton7: thanks | 19:30 |
|
canton7
| it'll sit there for x days, won't it? | 19:30 |
|
marekw2143
| and what is remote.origin? is it the default remote repository, e.g. the one that is used when doing: git push | 19:30 |
|
ProLoser|Work
| ner0x: why don't you just git push to a backup server? | 19:30 |
|
| marekw2143: usually | 19:30 |
|
ner0x
| ProLoser|Work: More than just the app that has to get backed up, it's just one folder located in centralized folder. | 19:31 |
|
canton7
| ProLoser|Work, it remains in objects if you un-add an untracked file | 19:31 |
|
ProLoser|Work
| but i think that's more convention than anything else | 19:31 |
|
jmah
| marekw2143: "origin" is the default remote name for an upstream repository, like "master" is the default branch name (but there's nothing special about the name) | 19:31 |
|
ProLoser|Work
| what's in a name? | 19:31 |
|
marekw2143
| jmah: so when doing push then always name of remote repository should be specified? | 19:31 |
|
ProLoser|Work
| would a rose by any other name still smell as sweet? | 19:31 |
| → p3rror joined | 19:31 |
| ← yakko left | 19:31 |
|
ProLoser|Work
| probably if it was called shit-tulips | 19:32 |
| → sudanix joined | 19:32 |
|
canton7
| marekw2143, look at push.default | 19:32 |
| ← swombat left | 19:32 |
|
ner0x
| It's adding 1 byte files under .git/objects for each object, but not tracking it. | 19:32 |
|
canton7
| ner0x, when you do what? add the file? | 19:32 |
|
jmah
| marekw2143: each branch can be configured to track a certain upstream branch | 19:33 |
|
| if you "git push -u myremote mybranch", the -u sets the default upstream for mybranch to myremote/mybranch | 19:33 |
|
ner0x
| canton7: After I've done a git add . | 19:33 |
|
jmah
| then plain "git push" will use that by default | 19:33 |
|
canton7
| jmah, only when push.default is set to upstream, which it isn't by default | 19:33 |
|
| ner0x, that's right. the object is created when you add the file to the index | 19:34 |
|
ner0x
| canton7: But it is indeed still not tracked? | 19:34 |
| ← angelsl left | 19:34 |
|
canton7
| (the object is compressed. I suspect the min filesize on yoru filesystem is 1 byte) | 19:34 |
|
| ner0x, it isn't tracked until you make a commit, no | 19:34 |
|
ner0x
| But should show up in git status? | 19:35 |
|
canton7
| hmm? Yes. Git status shows all (well, except ignored) files | 19:35 |
|
| that are changed | 19:35 |
|
| (or added, removed, untracked, etc) | 19:35 |
|
ner0x
| canton7: These files do not show up in git status. | 19:36 |
|
| But an object file is created for them. | 19:36 |
|
| Most odd. | 19:36 |
| ← soc42__ left | 19:36 |
|
marekw2143
| hmm, what's upstream branch? | 19:36 |
|
| is it the branch which was branched ? | 19:37 |
|
canton7
| ner0x, what are you doing exactly? step by step? | 19:37 |
|
ner0x
| candybar: Well, I'd like to remove all files from t/files from being tracked, currently they are showing up in git status. | 19:37 |
|
| canton7: ^ sorry | 19:37 |
|
canton7
| marekw2143, depends on the context tbh. In the context of push.default, it's the branch you set as the upstream branch, using push -u or branch --set-upstream. Git also sets the config automatically when you create a local branch based off a remote one | 19:37 |
|
| ner0x, git rm --cached t/files ? | 19:38 |
| → eletuchy joined | 19:38 |
|
ner0x
| canton7: Okay, good so far. Now add t/files to .git/info/exclude? | 19:38 |
|
canton7
| commit the removal | 19:39 |
| → whitman joined | 19:39 |
|
canton7
| then add t/files to .git/info/exclude | 19:39 |
|
ner0x
| Alright. Done. | 19:39 |
| → aisipos joined | 19:39 |
|
ner0x
| All of the git object remain. :-/ | 19:40 |
|
| .git/objects have not gone away | 19:40 |
| → gusnan joined | 19:40 |
|
jmah
| ner0x: have they been committed? | 19:40 |
|
| (the t/files) | 19:40 |
|
ner0x
| jmah: I never once have I committed them after seeing them in git status. | 19:40 |
|
canton7
| ner0x, the file's object in .git/objects won't go away until git gc cleans it up, which will be another 90 days or so | 19:40 |
|
ner0x
| canton7: Can I do it manually? | 19:41 |
|
marekw2143
| so for example git push origin master:satellite/master will push changes in local master to the master branch on what? | 19:41 |
| → wbednarski joined | 19:41 |
|
marekw2143
| that example is from git push help | 19:41 |
|
canton7
| ner0x, if the files were ever tracked, they'll always remain in .git/objects | 19:41 |
|
jmah
| canton7: blobs don't have a date, won't they go away immediately? | 19:41 |
|
ner0x
| canton7: They were never tracked. | 19:41 |
|
canton7
| jmah, let me test.. | 19:41 |
|
jmah
| ner0x: try "git prune --dry-run" | 19:41 |
| ← flyz left | 19:42 |
|
canton7
| jmah a straight gc doesn't clear them. a git gc --prune=now did, though | 19:42 |
|
ner0x
| jmah: Tons and tons of blobs listed. | 19:42 |
| → macmartine joined | 19:42 |
| ← jonatasnona left | 19:42 |
|
canton7
| prune, by default, takes 90 days iirc | 19:42 |
|
kevlarman
| 30 | 19:42 |
|
canton7
| ner0x, git gc --prune=now | 19:42 |
| → Swimming_Bird joined | 19:42 |
|
canton7
| hmm, 14 according to the man page, kevlarman | 19:43 |
|
kevlarman
| weird | 19:43 |
|
| i would have expected 30 just like the reflog | 19:43 |
|
canton7
| well, that's the value of gc.pruneexpire, which I assume is what we're after | 19:43 |
|
ner0x
| canton7: Looks like that worked. objects are now 1.2 MB, which sounds about right. | 19:44 |
|
canton7
| the reflog (gc.<pattern>.reflogexpire is 90 days, kevlarman | 19:44 |
| ← baburdick left | 19:44 |
|
canton7
| (which is where I got my 90 days from, under much the same assumption) | 19:44 |
|
ProLoser|Work
| hey | 19:45 |
|
| git stash apply --index 1 isn't working | 19:45 |
|
| what's the proper order if i want the stash at index 1 (not index 0) | 19:45 |
|
ner0x
| canton7++ # thanks | 19:45 |
|
| jmah++ # thanks | 19:45 |
|
canton7
| kevlarman, or actually, reflogexpireunreachable is probably what we're after, in which case you're right on that one | 19:45 |
| → baburdick joined | 19:45 |
|
jmah
| ProLoser|Work: "git stash apply stash@{1}" | 19:46 |
|
ProLoser|Work
| oh that's the stash name? | 19:46 |
|
| i thought i just use the 1 | 19:46 |
|
jmah
| this way works, I'd love to hear if there's another way | 19:46 |
|
canton7
| "If the --index option is used, then tries to reinstate not only the working trees changes, but also the indexs ones. However, this can fail, when you have conflicts (which are stored in the index, where you therefore can no longer apply the changes as they were originally" | 19:46 |
| kvanderw → kvanderw|lunch | 19:47 |
|
canton7
| so --index *isn't* what you're after | 19:47 |
| → shruggar joined | 19:47 |
| ← p3rror left | 19:48 |
| → spatulasnout joined | 19:49 |
| → mysphyt joined | 19:49 |
| → Kazii joined | 19:49 |
| ← PySloan left | 19:52 |
| ← wbednarski left | 19:53 |
| ← harshpb left | 19:53 |
| ← n8o-mba left | 19:54 |
| ← OOPMan left | 19:54 |
| ← guardian left | 19:55 |
| ← solofight left | 19:55 |
| → poppiez joined | 19:56 |
| ← pfsmorigo left | 19:57 |
| ← kenichi left | 19:58 |
| ← aspotashev| left | 19:58 |
| → infogulch joined | 19:58 |
| → Nikoli joined | 19:58 |
| ← infogulch left | 19:58 |
| → retoryter joined | 19:59 |
| ← retoryter left | 19:59 |
| ← alecthegeek left | 20:00 |
| → tvw joined | 20:00 |
| → marthinal joined | 20:00 |
| ← rzec left | 20:00 |
| ← dfr|mac left | 20:01 |
| ← mysphyt left | 20:02 |
| → n8o-mba joined | 20:02 |
| → p3rror joined | 20:02 |
| ← koo6 left | 20:03 |
| → boombatower joined | 20:04 |
| ← ipalaus_ left | 20:04 |
| → alecthegeek joined | 20:05 |
| → omn joined | 20:05 |
| ← Spockz left | 20:06 |
| → codebeaker joined | 20:07 |
| ← kerrick left | 20:08 |
| ← pidus left | 20:09 |
| → OOPMan joined | 20:09 |
| ← ner0x left | 20:09 |
| kvanderw|lunch → kvanderw | 20:10 |
| → FylGood joined | 20:11 |
| → workmad3 joined | 20:11 |
| → infogulch joined | 20:11 |
| ← dc5ala left | 20:12 |
| ← agile left | 20:14 |
| → giallu joined | 20:14 |
| ← baburdick left | 20:15 |
| → srji joined | 20:15 |
| ← ketas left | 20:15 |
| → ketas joined | 20:15 |
| ← comawhite left | 20:15 |
| → comawhite joined | 20:15 |
| ← oc80z left | 20:15 |
| → baburdick joined | 20:15 |
| ← p3rror left | 20:16 |
| ← nyuszika7h left | 20:16 |
| ← UnsignedCode left | 20:17 |
| → oc80z joined | 20:17 |
| → arnpr joined | 20:17 |
|
arnpr
| is there any support for gitolite here? it keeps asking my new user about a password, I already copied his public key and added him to admin repo | 20:18 |
|
canton7
| yeah, we handle gitolite queries. sitaram is normally lurking for the really complex questions, too :) | 20:19 |
|
| the new user... does he have his private key set up correctly? permissions right? is he using sudo? what does ssh -vvv git/gitolite:host give? | 20:19 |
|
arnpr
| canton7: how can I know if his key is correctly setup? he made it with ssh-keygen | 20:20 |
|
| I added it to the keydir/ and made a new project and gave him RW+ | 20:20 |
|
canton7
| arnpr, well these are the most common ssh problems. chances are the key problems are on his end | 20:21 |
| → agile joined | 20:21 |
| ← the_metalgamer left | 20:22 |
|
canton7
| if he's being asked for a password, then either gitolite hasn't accepted his key, or he's set his side up wrong. have a look in <gitolite-home>/.ssh/authorized_keys. Don't mod anything, but see if his public key's in there | 20:22 |
|
| if it is, the problem is almost certainly on his end | 20:22 |
| → nyuszika7h joined | 20:23 |
| → ldlework joined | 20:23 |
|
ldlework
| If I have a repository that contained a/ and b/ and I want to take b/ and all history concerning it and break it out into a seperate repo, that's pretty much flagrant wishful thinking? | 20:23 |
|
canton7
| git filter-branch --subdirectory-filter | 20:24 |
|
ldlework
| wo | 20:24 |
|
| w | 20:24 |
| ← lamont left | 20:24 |
|
canton7
| more common than you'd think :P there are lots of SO posts on it, some tuts, and the man page gives good examples | 20:24 |
| ← codebeaker left | 20:24 |
|
ldlework
| canton7, what happens, if you know offhand, if a commit touched both? Is the commit present in the new history? | 20:24 |
|
canton7
| I believe it just takes the original repo, and rewrities it to be the subdirectory only. you need to play another trick to remove a/ from the original repo | 20:25 |
| → thedeeno joined | 20:25 |
| → dfr|mac joined | 20:25 |
|
canton7
| (not a complex trick, though) | 20:26 |
| ← BlindOracle left | 20:26 |
| → Vile joined | 20:26 |
| ← alecthegeek left | 20:26 |
|
jmah
| ldlework: I did this when converting a complex repo from svn | 20:26 |
|
canton7
| the first two examples on the man page will cover you | 20:26 |
|
jmah
| you'll need a good understanding of git | 20:27 |
|
| (if you want to go the whole way) | 20:27 |
| ← eletuchy left | 20:27 |
|
jmah
| in summary, use filter-branch --subdirectory-filter to make a new repo with that dir | 20:28 |
| ← dcarper_ left | 20:28 |
|
jmah
| then I made a file mapping the commits to the trees | 20:28 |
|
| then in the parent repo, make a script that for each commit, copies the tree of the subdir, deletes the files, and makes a submodule ref with the corresponding commit (looking up the commit corresponding to the tree) | 20:29 |
|
_ikke_
| I'm running behind a firewall now, but I have access to a VPS. My plan was to make an ssh tunnel to forward the port to the server: ssh -f user@host -L 9418:github.com:9481 -N. I added a remote with the following url: git@localhost:username/repo.git. But when I try to push to it, it asks for a password for git@localhost. Why is that? | 20:29 |
|
canton7
| jmah, was that necessary? surely filter-branch --index-filter 'git rm --cached --ignore-unmatch a' HEAD will trips a/ from the origin repo? aaah you were setting it up as a submodule | 20:29 |
|
jmah
| indeed. | 20:29 |
|
| not sure if Idlework wants to go that far | 20:30 |
|
CareBear\
| _ikke_ : user@host is the short version of scp URLs | 20:30 |
|
| _ikke_ : try git://localhost/username/repo.git | 20:30 |
|
| _ikke_ : I might just push to the VPS and let the VPS push to github | 20:31 |
| → verto joined | 20:31 |
| → alecthegeek joined | 20:31 |
|
_ikke_
| CareBear\: I would still need to create a tunnel to push to the VPS | 20:31 |
|
arnpr
| canton7: we remade the key and re-added it to the repo, and problem persist | 20:31 |
|
| I checked the authorized_keys file but don't know what I should be looking for, canton7 | 20:31 |
|
canton7
| arnpr, have you tried answering any of the questions I asked you? | 20:32 |
|
_ikke_
| CareBear\: And user@host normally works for ssh | 20:32 |
| ← ThomasLocke left | 20:32 |
| → btanaka joined | 20:32 |
|
canton7
| arnpr, in the authorized_keys in gitolite's home dir, you're after a line which begins "command=/some/path/gl-auth-command <his username>",somestuff ssh-rsa <his public key | 20:33 |
| ← alecthegeek left | 20:33 |
|
canton7
| arnpr, it's far, far more likely that the problem is on his end, though | 20:33 |
|
CareBear\
| _ikke_ : git runs transparently over ssh | 20:33 |
| → ThomasLocke joined | 20:33 |
|
CareBear\
| _ikke_ : if you can ssh to the vps and set up a tunnel then git can also ssh to the vps and transfer stuff | 20:33 |
|
_ikke_
| CareBear\: right | 20:34 |
|
CareBear\
| _ikke_ : port 9418 does not use ssh | 20:34 |
|
| _ikke_ : port 9418 is git: | 20:34 |
|
_ikke_
| CareBear\: Got it | 20:34 |
|
CareBear\
| _ikke_ : git over ssh always uses port 22 like every other ssh | 20:34 |
| ← TrineLocke left | 20:34 |
|
_ikke_
| yup | 20:34 |
|
| Still need to use 443 | 20:34 |
|
| 22 is blocked too | 20:34 |
| → kerrick joined | 20:34 |
|
CareBear\
| that's fine | 20:34 |
|
| git will run ssh | 20:34 |
|
| so you just add a stanza in .ssh/config | 20:35 |
|
_ikke_
| ok | 20:35 |
|
canton7
| arnpr, quick checklist for you, on his machine: 1. does ~/.ssh/id_rsa exist? 2. does it have 600 permissions? 3. does .ssh have 700 permissions? 4. what does "ssh -vvv git@your_machine" give? (I'm assuming the gitolite user is git. Correct if it isn't) | 20:35 |
| ← ofus left | 20:35 |
| → lamont joined | 20:36 |
|
CareBear\
| echo -e 'host myvpson443\n port 443\n hostname myvpspublicip' >> ~/.ssh/config && git add remote vps myvpson443:repo.git | 20:36 |
|
| _ikke_ : ^ | 20:36 |
| ← workmad3 left | 20:36 |
|
CareBear\
| _ikke_ : then, git push vps master will end up using ssh to port 443 on the vps | 20:36 |
| dilfridge → dilfridge_ | 20:37 |
| dilfridge_ → helium-4 | 20:37 |
| helium-4 → dilfridge | 20:37 |
| ← saschagehlich left | 20:37 |
| dilfridge → helium-3 | 20:37 |
| ← alphacow left | 20:37 |
| helium-3 → dilfridge | 20:37 |
| ← srji left | 20:38 |
| → khmarbaise joined | 20:38 |
| → dirkle joined | 20:39 |
| → srji joined | 20:41 |
| ← dv310p3r left | 20:42 |
| ← nyuszika7h left | 20:43 |
|
ldlework
| jmah, I don't want submodules. I want a/ and b/ to be seperate repositories, both taken from the original repo | 20:43 |
| ← lamont left | 20:43 |
|
ldlework
| I don't need the original repo any longer, but each of the two new repos need their relevant history | 20:43 |
|
canton7
| ldlework, nice and easy, then. follow the example from man git-filter-branch | 20:43 |
|
jast
| ldlework: *automatic message* the 'git-filter-branch' manpage can be found at <http://git.kernel.org/?p=git/git-htmldocs.git;a=blob_plain;f=git-filter-branch.html;hb=master> | 20:43 |
|
ldlework
| Is it enough to run filter-branch on each subdirectory to get two new? | 20:43 |
|
canton7
| yes | 20:43 |
|
ldlework
| Nice. | 20:43 |
|
| thank you | 20:44 |
| → ReekenX joined | 20:44 |
|
jmah
| just duplicate the repo first | 20:44 |
| ← sudanix left | 20:44 |
|
canton7
| bear in mind that filter-branch will operate on the repo you run it in | 20:44 |
|
| so, yeah, duplicate it furst | 20:44 |
| ← baburdick left | 20:45 |
|
infogulch
| whoa my whole git directory is a friggin mess, but github is fine. how do i completely reset it to match exactly what it is on github | 20:45 |
| → baburdick joined | 20:45 |
|
canton7
| infogulch, git fetch. for each branch you want to reset, 'git reset --hard origin/branchname' | 20:46 |
|
infogulch
| ty | 20:46 |
|
canton7
| well, checkout the branch first, then reset | 20:47 |
|
infogulch
| oh ok | 20:47 |
|
canton7
| (as reset operates on the current branch) | 20:47 |
|
infogulch
| it's not working... | 20:47 |
|
canton7
| ok, so what are you running, and how do you know it isn't working? | 20:47 |
| ← Kazii left | 20:47 |
|
infogulch
| i only have one branch, "master" | 20:47 |
|
| i'm running: git reset --hard origin/master | 20:48 |
|
| and i know it's not working because when i run git status it shows a bunch of untracked files | 20:48 |
| → lamont joined | 20:48 |
| ← psoo left | 20:48 |
|
infogulch
| unless that would be fixed with something else | 20:48 |
|
canton7
| git won't touch untracked files. use git clone -dfx to nuke those (git clean -dxn to test what will be removed first) | 20:48 |
|
| ack | 20:48 |
|
| git clean | 20:48 |
| ← ThomasLocke left | 20:49 |
|
canton7
| can't type tonight | 20:49 |
|
infogulch
| ah i see | 20:49 |
| → LongBeach joined | 20:49 |
| ← mishok13 left | 20:49 |
| → ipalaus_ joined | 20:50 |
|
ldlework
| canton7, git clone original separated; cd separated; git filter-branch --subdirectory-filter b HEAD --prune-empty; git remote rm origin; git reset --hard; rm -rf .git/refs/original/; git reflog expire --expire=now --all; git gc --aggressive --prune=now; ? | 20:51 |
|
canton7
| no! git clone with that syntax will usee hardlinks | 20:51 |
|
ldlework
| okay, adding --no-hardlinks | 20:51 |
|
canton7
| either use file:/// syntax, or just us a box-ordinary copy -- that's safest :P | 20:52 |
|
| *bog-ordinary | 20:52 |
|
infogulch
| whew much better | 20:52 |
|
_ikke_
| CareBear\: I'll just use https | 20:52 |
|
ldlework
| Not sure what a box-ordinary copy is | 20:53 |
| → stickyboot joined | 20:53 |
| → DAAN5U1 joined | 20:53 |
| → ahmedkotb joined | 20:53 |
|
canton7
| ldlework, you'll also probably want git filter-branch --subdirectory-filter a --prune-empty -- --all. Then you can clone it, which is the easiest way of cutting out the crap | 20:53 |
|
| sorry, I mean bog-ordinary. as in, cp -R | 20:54 |
| ← srji left | 20:55 |
| → metcalfc joined | 20:56 |
|
infogulch
| heh, i suppose dropbox really doesn't like symlinks xD | 20:56 |
| ← marthinal left | 20:56 |
|
_ikke_
| infogulch: I don't have any problems with symlinks in dropbox | 20:57 |
| ← LiohAu left | 20:57 |
| → the_metalgamer joined | 20:57 |
|
infogulch
| i'm symlinking one github repo into a subdir of another | 20:58 |
|
| on multiple computers... | 20:58 |
|
| lets just say it wasn't pretty and that i'm glad i pushed to github last night | 20:58 |
|
arnpr
| canton7: worked like a charm, think it was the name of his pub key | 20:59 |
|
canton7
| arnpr, sweet! | 20:59 |
|
arnpr
| which wasnt id_rsa, changed that and eprmissions, worked | 20:59 |
|
canton7
| ssh problems usually boil down to 2 or 3 things. those are the main 2 | 21:00 |
| ← Jackneill left | 21:02 |
| → nyuszika7h joined | 21:05 |
| ← the_metalgamer left | 21:05 |
| → alecthegeek joined | 21:07 |
| ← kerrick left | 21:08 |
| ← FylGood left | 21:10 |
| → workmad3 joined | 21:13 |
| ← marekw2143 left | 21:15 |
| ← GunArm left | 21:16 |
| ← baburdick left | 21:16 |
| ← mastro left | 21:16 |
| → mishok13 joined | 21:17 |
| → baburdick joined | 21:17 |
| ← alecthegeek left | 21:18 |
| ← dfr|mac left | 21:18 |
| → GunArm joined | 21:18 |
| ← cburroughs left | 21:18 |
| → the_metalgamer joined | 21:19 |
| → pantsman joined | 21:19 |
| ← pantsman left | 21:19 |
| → pantsman joined | 21:19 |
| ← heptadecagram left | 21:20 |
| → mklappstuhl joined | 21:20 |
| ← cortana` left | 21:20 |
| ← GunArm left | 21:21 |
| ← iXeno left | 21:22 |
| ← Raging_Hog left | 21:22 |
| → dfr|mac joined | 21:22 |
| → GunArm joined | 21:23 |
| ← dfr|mac left | 21:23 |
| ← GunArm left | 21:23 |
| → mithridates joined | 21:24 |
|
mithridates
| does git use mmap to read/write/search data for its objects? | 21:25 |
|
| my eyes are so tired to check the code :( | 21:25 |
|
FauxFaux
| "git grep mmap" in git.git returns loads of things including in sha1_file, the internals of hash-object. | 21:26 |
| ← khmarbaise left | 21:27 |
| ← workmad3 left | 21:27 |
|
CareBear\
| _ikke_ : why https? | 21:27 |
| ← Shusshu left | 21:27 |
| ← phishy left | 21:28 |
| ← arnpr left | 21:28 |
| ← btanaka left | 21:28 |
| ← bindaasomatic left | 21:28 |
| ← poppiez left | 21:29 |
| → jonnyATroot joined | 21:29 |
| → jacknagel joined | 21:29 |
| ← Turicas left | 21:30 |
| ← jacknagel left | 21:30 |
| ← kl4m left | 21:30 |
| → neurodrone joined | 21:31 |
| → alex__c2022 joined | 21:31 |
|
_ikke_
| CareBear\: Because I then can directly connect to github in stead of using my vps | 21:31 |
| → dfr|mac joined | 21:32 |
|
mithridates
| FauxFaux: what are the internals of hash-object? what do u mean by hash-object? it's a new terminology in git! | 21:32 |
|
FauxFaux
| mithridates: hash-object is the thing that creates entries in the object database, in .git/objects. man git-hash-object | 21:32 |
|
_ikke_
| mithridates: git hash-object is a git command | 21:32 |
|
jast
| mithridates: *automatic message* the 'git-hash-object' manpage can be found at <http://git.kernel.org/?p=git/git-htmldocs.git;a=blob_plain;f=git-hash-object.html;hb=master> | 21:32 |
|
jmah
| mithridates: hashing is kinda core to git | 21:32 |
|
| why are you wondering about mmap? | 21:33 |
|
mithridates
| I'm making a system similar to git's db, I do hashing for names, and I want to write/read data on files so I was wondering how git handles these stuff | 21:33 |
|
| I asked in #c what's the most efficient way to do that, they said mmap so I thought git should use that too for its objects | 21:34 |
| → cooloney joined | 21:34 |
| ← flavius left | 21:35 |
| ← dfr|mac left | 21:35 |
|
cbreak
| do you even have a clue what mmap is? | 21:35 |
| → dfr|mac joined | 21:35 |
|
mithridates
| I think I know, it takes a chunk of memory and write it to a file | 21:35 |
|
| that's the impression that I get from its name and header of its man page | 21:36 |
|
cbreak
| nope | 21:36 |
|
mithridates
| so I guess I can put my structs or whatever there | 21:36 |
|
| so what is it? | 21:36 |
|
cbreak
| it's a method to map a file into memory | 21:36 |
|
ProLoser|Work
| git stash pop like git stash apply + drop? | 21:36 |
|
cbreak
| instead of reading it | 21:36 |
| ← neurodrone left | 21:36 |
|
canton7
| ProLoser|Work, yes | 21:36 |
|
cbreak
| ProLoser|Work: yes | 21:36 |
| → Wilto joined | 21:36 |
|
ProLoser|Work
| cool | 21:37 |
|
mithridates
| cbreak: oh cool, but how does it handle data types? does it make everything char * ? | 21:37 |
| ← Wilto left | 21:37 |
|
cbreak
| mithridates: it has advantages over simply reading a file sequentially if you do random access or the file is big | 21:37 |
|
| no | 21:37 |
|
| it does not handle data types | 21:37 |
| ← babilen left | 21:38 |
|
cbreak
| as the name says, it maps raw memory | 21:38 |
|
| -> if you store things like integers, floats or even pointers, you're in deep trouble :) | 21:38 |
| ← airborn left | 21:38 |
| ← leen^| left | 21:39 |
|
mithridates
| right, so whats its advantage to simple open the file and read it? does it just save the time of for each line going to the disk, getting data and read it to memory? and load the whole file at once? | 21:39 |
| → jtr__ joined | 21:40 |
| → booginga joined | 21:40 |
| → youngblood joined | 21:40 |
| ← mishok13 left | 21:41 |
| → eletuchy joined | 21:41 |
|
mithridates
| copy everything from the location of file on disk to memory only one time? | 21:41 |
|
| like if I have 2kb file, it makes 2kb space on memory and drag and drop all data from the disk on that space? | 21:41 |
| → frogonwheels joined | 21:42 |
| → kpreid joined | 21:42 |
| ← Davey left | 21:43 |
| → oriba joined | 21:43 |
| → p3rror joined | 21:44 |
| ← stickyboot left | 21:44 |
| ← flijten left | 21:44 |
| ← Cipher-0 left | 21:44 |
| → airborn joined | 21:44 |
| ← CannedCorn left | 21:45 |
| ← airborn left | 21:45 |
|
mithridates
| I think I don't make sense right now, thanks anyway | 21:45 |
| → airborn joined | 21:45 |
| → stickyboot joined | 21:46 |
| ← baburdick left | 21:46 |
|
canton7
| well tbh, this is #git, not #c. cbreak knows a lot of C, but, of the regulars, he's probably in the minority. basically, don't be too surprised if you don't get answers to very off-topic questions :) | 21:46 |
| ← airborn left | 21:47 |
|
cbreak
| mithridates: it uses the Virtual Memory subsystem | 21:47 |
|
| so it can map in and out pages as needed | 21:47 |
|
| -> you use less memory, and random access is faster | 21:48 |
| → Kazii joined | 21:48 |
|
cbreak
| (and/or easier) | 21:48 |
|
| page size is 4kb on Mac OS X | 21:48 |
|
| I think that's similar on Linux and Windows | 21:48 |
| → airborn joined | 21:48 |
| ← gigamonkey left | 21:49 |
|
cbreak
| also, block size of new hard disks is also 4kb | 21:49 |
|
CareBear\
| mithridates : yes, you got it. when you use mmap, the system drags and drops the file | 21:49 |
|
| that's exactly how it works | 21:49 |
| ← __class__ left | 21:49 |
|
CareBear\
| "it's a unix system. I know this!" (bonus points: name the film!) | 21:49 |
| ← bartek left | 21:50 |
| → baburdick joined | 21:50 |
|
_ikke_
| Jurasic Park | 21:50 |
|
CareBear\
| points for you | 21:50 |
| → alecthegeek joined | 21:51 |
| ← sangeeths left | 21:51 |
| ← estan_ left | 21:51 |
| ← boombatower left | 21:52 |
|
jmah
| CareBear\: keep in mind, mmap doesn't work on systems without a mouse (like servers) because the dragging is crucial | 21:52 |
|
_ikke_
| lol | 21:52 |
| → NetHawk joined | 21:52 |
| ← ldlework left | 21:52 |
| → koo6 joined | 21:53 |
|
_ikke_
| Sometimes when you can't find the mouse pointer, it's the system dragging page files | 21:53 |
|
CareBear\
| mithridates : mapping is a concept of exposing something in a different way | 21:54 |
| ← airborn left | 21:54 |
|
CareBear\
| mithridates : memory mapping is the concept of exposing something as if it was memory, even though it is not memory | 21:54 |
|
jmah
| mithridates: it's kinda like "mounting" a file into memory | 21:54 |
|
CareBear\
| mithridates : files can be memory mapped, and hardware devices can also be memory mapped | 21:54 |
| → airborn joined | 21:54 |
|
mithridates
| thanks a lot guys, I logged this conversation and I will read it later, I must go. Thanks a lot! | 21:55 |
|
talexb
| Crap .. did a reset --hard and lost the merge updates I'd done .. | 21:55 |
|
cbreak
| more specifically: the memory of devices can. | 21:55 |
|
CareBear\
| mithridates : this is significant, because accessing memory is very easy for programs (as you know, there is a mov instruction for this) | 21:55 |
|
canton7
| talexb, have you come across the reflog? | 21:55 |
|
CareBear\
| cbreak : not neccessarily | 21:55 |
|
cbreak
| talexb: merge updates? | 21:55 |
| → s0ber_ joined | 21:55 |
|
canton7
| (assuming you did the merge, then undid it...) | 21:55 |
|
talexb
| canton7, Not often enough :/ | 21:55 |
| ← alecthegeek left | 21:55 |
|
jmah
| talexb: was your stuff (ever) committed? | 21:55 |
|
talexb
| jmah Yes. | 21:56 |
|
cbreak
| I wonder if he meant "Merge conflict resolutions" when he said "merge updates" | 21:56 |
|
CareBear\
| mithridates : so instead of a program needing to deal with the concept of bytes stored inside a file, with mmap the operating system takes care of all I/O, and makes it look like the entire file is stored somewhere in memory | 21:56 |
|
jmah
| what was the reset command you used? | 21:56 |
|
talexb
| I committed, then did another pull, which made me realize the work I'd done may not have been complete. | 21:57 |
| ← pimpin left | 21:57 |
|
talexb
| To reverse the merge, I did a hard reset. | 21:57 |
|
| That appeared to have deleted the merges that I'd done. | 21:57 |
| → btanaka joined | 21:57 |
|
CareBear\
| git reflog | 21:57 |
|
talexb
| git reset --hard HEAD~ | 21:57 |
| ← s0ber left | 21:58 |
| s0ber_ → s0ber | 21:58 |
|
jmah
| talexb: run "git reflog", find a place that looks better, and git reset --hard to that (e.g. "git reset --hard HEAD@{1}") | 21:58 |
| → amalloy joined | 21:58 |
| → lnostdal_ joined | 21:58 |
| ← fisted left | 21:58 |
| ← ipalaus_ left | 21:58 |
| → nicxvan joined | 21:59 |
| → xeno__ joined | 21:59 |
| ← Jay_Levitt left | 21:59 |
| → Jonny_ joined | 21:59 |
| ← traviscj left | 21:59 |
| Jonny_ → Guest84035 | 21:59 |
| → rzec joined | 22:00 |
|
talexb
| jmah++ Wow. Cool. Thank you. | 22:00 |
| → niloc132 joined | 22:00 |
|
mediaslave
| I have a .htaccess file that needs to belong in a repo in a certian state. I also need to change this file locally, is there a way to have git ignore my changes to this file? | 22:00 |
| → alecthegeek joined | 22:00 |
| ← Guest84035 left | 22:00 |
|
amalloy
| i can't figure out the right set of parameters to pass to rebase. i want to rewrite a topic branch so that it applies cleanly (without merges) to master, and then update master to point at the new rebased head | 22:00 |
| ← oriba left | 22:00 |
| → fisted joined | 22:00 |
|
canton7
| mediaslave, advice is the commit e.g. .htaccess.sample, and ignore .htaccess. | 22:00 |
| ← OOPMan left | 22:01 |
|
amalloy
| i can do this with a lengthy multi-command process, but i'm sure if i just said the right magic word to rebase it would do this in one step | 22:01 |
|
frogonwheels
| mediaslave: can't you just put the .htaccess stuff in the config file of the server? | 22:01 |
|
jast
| amalloy: with the topic branch checked out, git rebase master; then go to master and git merge topicbranch | 22:01 |
| ← airborn left | 22:01 |
| → jtdowney joined | 22:01 |
| → kerrick joined | 22:01 |
| ← innociv left | 22:01 |
|
canton7
| mediaslave, (I've had some luck with smudge filters myself, but it's hacky) | 22:01 |
| dilfridge → helium-3 | 22:01 |
|
mediaslave
| frogonwheels: Yes I can and do. This is just an example. There are other files like this that I may need to do it with | 22:01 |
|
frogonwheels
| mediaslave: otherwise canton7's advise is the best. Have something that copies the default default.htaccess to .htaccess if it doesn't exist | 22:01 |
|
mediaslave
| I see... | 22:02 |
|
frogonwheels
| mediaslave: well have a process that copies all those other file 'defaults' if they don't exist. | 22:02 |
|
amalloy
| jast: right, that's the three-step (four, really, if i'm going to check topic back out in a minute) that i'm trying to avoid | 22:02 |
|
frogonwheels
| mediaslave: yes, there IS a way. but it's not something you should be relying on if you have a choice. | 22:02 |
|
mediaslave
| Okay, thanks. I was kinda hoping there was a file in the .git folder that I could mess with... | 22:02 |
| → airborn joined | 22:02 |
|
mediaslave
| frogonwheels: okay, thanks. | 22:03 |
|
jast
| amalloy: okay, you can reduce it to two steps if you really feel that you need to do that: after the first step (the rebase), git push . topicbranch:master. you'll notice that this is slightly hacky. | 22:03 |
|
jmah
| amalloy: after the rebase, you can "git update-ref refs/heads/master HEAD" | 22:03 |
| ← jonnyATroot left | 22:03 |
|
mediaslave
| I can use capistrano to do the defaults. idea... | 22:03 |
|
frogonwheels
| mediaslave: you CAN use the sparse checkout feature .. | 22:03 |
|
jmah
| which sets master to HEAD, but keeps the current branch checked out | 22:03 |
|
jast
| I recommend against using update-ref | 22:03 |
|
canton7
| amalloy, you can use rebase --onto, I believe, to avoid checking out the feature branch first | 22:03 |
| → babilen joined | 22:04 |
|
jast
| canton7: but it'll still checkout master at some point | 22:04 |
|
canton7
| jast, for sure | 22:04 |
|
jmah
| jast: it requires caution, but I use it a bunch, why do you recommend against it? | 22:04 |
|
jast
| so he has to go back to the other branch after that | 22:04 |
| → OOPMan joined | 22:04 |
|
jast
| jmah: because it requires caution, unlike the solution I suggested | 22:04 |
|
canton7
| jast, it saves a checkout command if he starts on master | 22:04 |
| → sangeeths joined | 22:04 |
|
jast
| canton7: I don't know that he does | 22:04 |
| helium-3 → dilfridge | 22:04 |
|
canton7
| jast, then it won't help, of course :) That's why I adorned my comment with "to avoid checking out the feature branch first" | 22:05 |
|
jast
| canton7: also, re the list of links you suggested earlier... I'm kind of divided on including the website howto since it uses the problematic checkout -f trick | 22:05 |
| dilfridge → helium-3 | 22:05 |
|
jast
| the "problematic" part being that it doesn't delete files that got removed upstream | 22:06 |
|
canton7
| jast, it's a fair point. It's a common scenario and the link gets posted a lot, though. I guess it's between you being able to put whatever warning you like next to the link, and hoping that whoever hands the link out in the channel knows to supply a warning | 22:06 |
| → boombatower joined | 22:06 |
| ← sangeeths left | 22:06 |
| → ldlework joined | 22:06 |
|
canton7
| well, that against having the link be seen as "official" | 22:06 |
|
| canton7 doesn't know which is best | 22:07 |
|
jast
| canton7: yeah, I'd like to solve it properly which would involve providing a warning, an explanation and instructions on alternatives. at that point I'd essentially have to write a new article. :) | 22:07 |
| ← helium-3 left | 22:07 |
| → dilfridge_ joined | 22:07 |
|
canton7
| heh, too true | 22:07 |
| ← tommyvyo left | 22:07 |
| ← joshsmith left | 22:08 |
|
jast
| generally I think I might have to setup some kind of system where people can submit content for triggers | 22:08 |
|
frogonwheels
| jast: I use update-ref quite often, but every now and again, I update-ref my checked out branch :( ... which is something you really have to avoid doing! | 22:08 |
| → __class__ joined | 22:08 |
|
jast
| with an overview page | 22:08 |
| ← Textmode left | 22:08 |
|
canton7
| that could work | 22:08 |
|
jast
| frogonwheels: yeah, that's why I recommend the "push to ." trick instead | 22:08 |
| ← luxurymode left | 22:08 |
|
jmah
| jast: what's this "push to ." trick? can I subscribe to your magazine? | 22:09 |
|
canton7
| hmm, couldn't you pull the branch -f trick as well? | 22:09 |
| dilfridge_ → helium-3 | 22:09 |
| ← avinashhm left | 22:09 |
|
jast
| that's more unsafe than push ., isn't it? | 22:09 |
| helium-3 → dilfridge_ | 22:09 |
| dilfridge_ → helium-3 | 22:10 |
|
jast
| jmah: the magazine is this channel. ;) "git push . src:dest" locally changes dest to match src, but only if it's possible as a fast-forward | 22:10 |
|
canton7
| no idea. throwing it out there to see what the more experiences gitters say about it | 22:10 |
|
frogonwheels
| jast: I know of that trick but haven't used it. I should use it for that specific circumstance. | 22:10 |
| ← xarragon left | 22:10 |
| → xarragon joined | 22:10 |
|
jast
| it should also prevent you accidentally updating the checked out branch, but I haven't tested that | 22:10 |
|
frogonwheels
| jast: It will surely, 'cause you can't push (by default) to a checked out branch | 22:11 |
|
jast
| yeah, I'm just not sure whether this is tested for local pushes. it *should* be. | 22:11 |
| → linusoleander joined | 22:12 |
| helium-3 → dilfridge | 22:12 |
| ← Guest72597 left | 22:13 |
| ← xeno__ left | 22:13 |
|
frogonwheels
| jast: tested. behaves as expected | 22:13 |
|
jast
| good. | 22:14 |
| → ricky joined | 22:14 |
| → ipalaus_ joined | 22:14 |
| ← kedare left | 22:14 |
|
frogonwheels
| jast: and now that I've done it.. I'll remember to use it more likely than not ;) | 22:14 |
|
jast
| my work here is done. ;) | 22:15 |
| ← the_metalgamer left | 22:16 |
| ← guy___brush left | 22:16 |
| → dv310p3r joined | 22:16 |
| ← vdv left | 22:16 |
| ← alecthegeek left | 22:17 |
| ← baburdick left | 22:17 |
| → baburdick joined | 22:18 |
| ← whitman left | 22:18 |
| ← cytrinox left | 22:18 |
| ← ramusara left | 22:19 |
| ← w0bni left | 22:19 |
| ← Ryback_ left | 22:19 |
| ← gusnan left | 22:20 |
| → CannedCorn joined | 22:20 |
| ← jtr__ left | 22:20 |
| ← p3rror left | 22:21 |
| ← d0k left | 22:22 |
| → avinashhm joined | 22:22 |
| ChanServ set mode: +o | 22:23 |
| jast changed the topic to: 1.7.7.2 | http://git-scm.com | Please skim http://jk.gs/git/ before asking, or at least before giving up! | 22:23 |
| jast set mode: -o | 22:23 |
| ← mklappstuhl left | 22:24 |
| → ESphynx joined | 22:24 |
|
ESphynx
| Hey guys, something I've discovered recently, when working on a side branch... it's very useful to do: 1. git rebase master 2. git rebase origin/sidebranch | 22:25 |
|
| Is there any operation that kind of automates that? | 22:25 |
| ← Arrowmaster left | 22:25 |
| ChanServ set mode: +v | 22:26 |
| ChanServ set mode: -v | 22:26 |
|
jmah
| shell history? | 22:27 |
|
| :) | 22:27 |
|
ESphynx
| hehe | 22:27 |
|
| I just see find git a bit dumb sometimes :| | 22:27 |
| → c00kiemon5ter joined | 22:27 |
|
ESphynx
| what feels like the natural workflow to me is never default | 22:27 |
| ← c00kiemon5ter left | 22:27 |
| → c00kiemon5ter joined | 22:27 |
|
jmah
| well, some people like to rebase a lot, some don't | 22:28 |
| ← chris_99 left | 22:28 |
|
ESphynx
| I like obvious histories... seeing merges all over when no merge really happened is annoying | 22:28 |
|
| jsut because someone did something else and pushed to the repo before me shouldn't clutter the history with merges | 22:29 |
|
| git rebase master : this brings him stuff tha happened on the master branch... then git rebase origin/sidebranch lets me push it to the central repo's sidebranch in a chronological order... | 22:30 |
|
| no rebase option would let me do this in a single operation, is kind of my question? | 22:30 |
|
jast
| the problem with automatic consecutive rebases is that each rebase might involve you fixing a series of conflicts... and it can get pretty confusing if it seamlessly goes from one rebase to the next during that | 22:30 |
| → wbednarski joined | 22:30 |
|
ESphynx
| I guess so. | 22:30 |
|
jmah
| git rebase master && git rebase origin/sidebranch | 22:30 |
|
ESphynx
| I was kind of happy when I figured out that is what I needed to do. | 22:31 |
|
| note that here... nothing NEW was on origin/sidebranch | 22:31 |
|
| i'm just doing the rebase on master as if it happened 'after' the current sidebranch | 22:32 |
|
| in fact it's really confusing to me that there is no one operation for this | 22:32 |
|
jmah
| why isn't just "git rebase master" enough then? | 22:32 |
|
ESphynx
| i.e. origin/sidebranch is the same as 'sidebranch' BEFORE the operation | 22:32 |
| → thursday joined | 22:32 |
|
ESphynx
| jmah: because then I cannot push it to origin/sidebranch ... | 22:33 |
| ← ProLoser|Work left | 22:33 |
|
jast
| you're setting yourself up for a lot of pain if you ever try to merge any of this stuff | 22:33 |
|
ESphynx
| Am I? | 22:33 |
|
jast
| the reason it's different is because the second rebase takes the new commits from master and rewrites them with new commit IDs | 22:33 |
|
| i.e. they're now slightly different on master vs. your side branch | 22:34 |
|
ESphynx
| yes. | 22:34 |
| ← joch_n left | 22:34 |
|
jast
| not to mention that if they contained any merges on master, those merges are now gone in the side branch | 22:34 |
|
ESphynx
| jast: I just tried doing a git merge sidebranch from master, and there's just 2 conflicts easily fixed... | 22:35 |
| ← ipalaus_ left | 22:35 |
|
jast
| well, it won't *always* cause pain | 22:35 |
|
ESphynx
| sidebranch here is temporary while performing the work. | 22:35 |
| ← amalloy left | 22:36 |
|
ESphynx
| what i'm trying to do with my 2 rebases... is bring in the stuff that happened on master, but make it as if it happened after whateve I have right now. | 22:36 |
|
jast
| this stuff gets pretty unpredictable. it depends on the degree to which the new stuff on sidebranch and the new stuff in master touch the same parts of code. | 22:36 |
| ← c00kiemon5ter left | 22:36 |
| → ipalaus_ joined | 22:36 |
|
ESphynx
| jast: But I expect most conflicts to be fixed as part of those rebase... | 22:37 |
|
jast
| well, I suppose you could use interactive rebase and reorder the commits to your liking | 22:37 |
|
| that gives you maximum flexibility | 22:37 |
| → envi_ joined | 22:38 |
|
ESphynx
| yeah I know... pretty tricky to figure out though :P although I started using interactive rebases recently as well... | 22:38 |
|
jmah
| "bring in the stuff that happened on master, but make it as if it happened after whateve I have right now" means merge to me | 22:38 |
|
ESphynx
| but to me 'git merge' is a feature I'd do away completely with :P | 22:38 |
| ← timmywil left | 22:38 |
| ← ReekenX left | 22:38 |
|
ESphynx
| jmah: do this without any ugly 'Merge' commit | 22:38 |
| → nicksagona joined | 22:38 |
|
jast
| see, it's a question of aesthetics | 22:38 |
|
| if you don't like the look of merge commits, you sign up for more hassle :) | 22:39 |
|
ESphynx
| I do not. | 22:39 |
|
| they get super confusing when you try to look at the history of what happened there. | 22:39 |
| → jrm2k6 joined | 22:39 |
|
ESphynx
| especially with git log. | 22:39 |
|
FauxFaux
| git log --graph --oneline | 22:40 |
| → Arrowmaster joined | 22:40 |
|
canton7
| (add --decorate for more prettyness) | 22:40 |
|
ESphynx
| yeah... but most of the times, the code don't even touch | 22:40 |
|
| so why the merges? | 22:40 |
|
cbreak
| git config --global alias.graph 'log --graph --decorate --oneline --all' | 22:40 |
|
jast
| well, it may not be a syntactical merge, but it's a semantic one | 22:41 |
|
cbreak
| merges have many advantages over rebases | 22:41 |
| → nardev joined | 22:41 |
|
canton7
| (or use gitk, if you're not on cli-only, and you prefer it) | 22:41 |
|
cbreak
| I often do it to bring a multi-commit feature branch into master | 22:42 |
|
jast
| a merge says: this joins two lines of development. I (git) have no way to determine whether they influence each other in any way, so that's all I'm gonna say about them. | 22:42 |
|
cbreak
| (I rebase onto master, and then --no-ff merge that branch) | 22:42 |
|
jast
| a more flexible model would require a different design and new ideas | 22:42 |
|
| (let's not talk about the overkill darcs does in that area) | 22:42 |
|
ESphynx
| But rebase seems pretty good... | 22:43 |
|
| --ff-only and rebases make me happy. | 22:43 |
|
| I just wish git was friendlier to those who prefer this model ;) | 22:43 |
|
jast
| well, at any rate, this is the first time I've ever seen anyone do this two-part rebase thing | 22:43 |
|
cbreak
| you can do it if you want. | 22:43 |
|
jast
| and I've been active in this channel for several years | 22:43 |
|
ESphynx
| jast: that fact is interesting :) I thought people would do this. | 22:43 |
|
cbreak
| you can add --ff-only as default | 22:43 |
|
| ESphynx: see man git-config merge.ff | 22:44 |
|
jast
| ESphynx: *automatic message* the 'git-config' manpage can be found at <http://git.kernel.org/?p=git/git-htmldocs.git;a=blob_plain;f=git-config.html;hb=master> | 22:44 |
|
ESphynx
| yeah I'm very happy with git... | 22:44 |
|
jast
| it's possible that you can prevent the extra rebase by structuring your workflow slightly differently | 22:44 |
|
| I'm not up to thinking about it right now, though ;) | 22:44 |
|
ESphynx
| I just wanted to hear your opinion on this workflow: P | 22:44 |
| → rosco_y joined | 22:44 |
|
cbreak
| imho, rewriting public history is dumb | 22:45 |
|
| your master is public | 22:45 |
|
| so rebasing onto master and then something else is dumb. | 22:45 |
|
jast
| so after you've done those two rebases, what is it you want to do? | 22:45 |
|
cbreak
| -> logic 101 :) | 22:45 |
|
ESphynx
| cbreak: well no because that is on the sidebranch... | 22:45 |
|
jast
| push them to a remote copy of sidebranch? | 22:45 |
| → drizzd joined | 22:45 |
|
cbreak
| ESphynx: master is master | 22:45 |
|
ESphynx
| cbreak: the poitn of the 2nd master is to 'not' rewrite the public history of the sidebranch | 22:45 |
|
| of the 2nd rebase* | 22:45 |
|
cbreak
| you would rewrite public history of master | 22:46 |
|
jmah
| I use rebases for trivial changes, or for rebase -i with a series of fixups etc. on a branch | 22:46 |
|
ESphynx
| cbreak: How so? | 22:46 |
|
jast
| thinking about it, you could do a squash merge of master into sidebranch | 22:46 |
|
cbreak
| you rebased onto master | 22:46 |
|
ESphynx
| cbreak: mater doesn't change... this is all on the sidebranch | 22:46 |
|
cbreak
| so you potentially got master commits | 22:46 |
|
jast
| if your sense of aesthetics allows for that ;) | 22:46 |
|
cbreak
| then you rebase those onto some other branch | 22:46 |
|
| the master commits might not be on that branch, so they would get rewritten | 22:46 |
|
| -> bad | 22:46 |
| ← envi_ left | 22:46 |
|
ESphynx
| i don't see the issue here. master always goes forward, the history of master does not change. | 22:47 |
|
cbreak
| it does. | 22:47 |
| ← booginga left | 22:47 |
|
ESphynx
| it sure does not! | 22:47 |
| ← baburdick left | 22:47 |
|
cbreak
| let's try it with an example | 22:47 |
|
ESphynx
| git log master always shows the same commit hash IDs | 22:47 |
|
cbreak
| let's say you have a new commit on master | 22:47 |
|
| (Commit A) | 22:48 |
|
ESphynx
| ok | 22:48 |
|
cbreak
| you rebase onto master | 22:48 |
|
| now your history contains A | 22:48 |
|
ESphynx
| history of sidebranch ? | 22:48 |
| → baburdick joined | 22:48 |
|
cbreak
| then you rebase onto some other branch | 22:48 |
|
| that commit A now gets rewritten | 22:48 |
|
ESphynx
| right the origin's sidebranch | 22:48 |
|
| it does on the sidebranch. | 22:48 |
|
jast
| yeah, so A has gotten rewritten on sidebranch... but not on master | 22:48 |
|
cbreak
| you now have a new commit that was A | 22:48 |
|
| so masters history was rewritten | 22:48 |
|
| -> commit duplication | 22:49 |
|
jast
| I don't follow | 22:49 |
| ← kevwil left | 22:49 |
|
jast
| yeah, it's duplicated, but that's just like a cherry-pick | 22:49 |
|
cbreak
| it's like implicit cherry picking | 22:49 |
|
ESphynx
| cbreak: yes... but the whole sidebranch is temporary and will be deleted at the end. | 22:49 |
|
jast
| I don't personally like cherry-picking all that much, but it's a viable thing to do in general | 22:49 |
|
ESphynx
| yes... I love cherry-picking. | 22:49 |
|
cbreak
| in general cherry picking is a stupid thing to do | 22:49 |
|
jast
| so what happens to the stuff on the branch when you delete it? I'm curious... | 22:49 |
| ← jtdowney left | 22:49 |
|
cbreak
| it provokes the same problems rebase has | 22:49 |
|
| without even preserving basic ordering | 22:50 |
|
ESphynx
| jast: I rebase it onto master at the end. | 22:50 |
|
| jast: and then merge it into master. | 22:50 |
|
| and then delete sidebranch | 22:50 |
|
cbreak
| your history will be a tangled mess | 22:50 |
|
ESphynx
| cbreak: it will be perfectly clear. as if everything happened chronologically. | 22:50 |
|
jast
| hmm | 22:50 |
|
cbreak
| you'll have to retest every commit after every rebase if you want to take it exactly | 22:50 |
| → jtdowney joined | 22:50 |
|
cbreak
| because every rebase can introduce errors in the history | 22:51 |
|
| because it creates NEW history that was never tested | 22:51 |
|
jast
| but you don't want to force-update sidebranch at any part during the progress, right? | 22:51 |
|
| *process | 22:51 |
|
ESphynx
| jast: right I never force update. | 22:51 |
|
cbreak
| I only rebase private branches for good reasons: | 22:51 |
|
| to keep the potential problems of rebasing to a minimum | 22:51 |
|
| interactions between code can lead to invalid results without creating merge conflicts | 22:52 |
|
ESphynx
| cbreak: I consider these sidebranches as private branches with a backup. | 22:52 |
|
cbreak
| if they are private, then you don't need to rebase onto the remote | 22:52 |
|
| you can just force push | 22:52 |
|
ESphynx
| they are not e.g. a development branch. | 22:52 |
|
jast
| if you're fine with doing a bunch of "rebase --skip"s during the final rebase (before you delete sidebranch), you can do "git merge --squash master" instead of the double rebase | 22:52 |
|
cbreak
| saving you the potential problems when rewriting master commits | 22:52 |
|
ESphynx
| true... but they are not totally private. | 22:53 |
|
| other people can use them e.g. for trying it out. | 22:53 |
|
jast
| what's your take on that? I think it's probably going to be the least effort. | 22:53 |
|
ESphynx
| but read-only by them | 22:53 |
|
cbreak
| that doesn't matter | 22:53 |
| → joshsmith joined | 22:53 |
|
cbreak
| as long as they don't base work on them, you can rebase | 22:53 |
|
jast
| short of using more complicated commands instead of the double rebase | 22:53 |
|
cbreak
| and force push | 22:53 |
|
jast
| such as cherry-picks with an explicit range | 22:53 |
|
ESphynx
| cbreak: was afraid they'd have trouble on a pull? | 22:53 |
|
cbreak
| they won't pull | 22:53 |
|
| if they just try out, they would just check out a new branch | 22:54 |
| ← joshsmith left | 22:54 |
|
ESphynx
| well yeah they do pull. | 22:54 |
|
cbreak
| and when they are done, throw it away | 22:54 |
|
ESphynx
| for quicker update. | 22:54 |
|
cbreak
| quicker update? | 22:54 |
|
ESphynx
| they might try it out a few times | 22:54 |
|
| after I fix some thing :P | 22:54 |
|
cbreak
| they might not even make a branch | 22:54 |
|
| just git checkout origin/foo | 22:54 |
|
ESphynx
| so they keep the brnach around | 22:54 |
|
cbreak
| and stay in detached head | 22:54 |
|
ESphynx
| they could. | 22:54 |
|
| jast: what will that --squash do? | 22:55 |
| → traviscj joined | 22:55 |
| ← regedit left | 22:55 |
|
ESphynx
| basically make it one commit? | 22:55 |
|
cbreak
| squash will just make one single merge commit | 22:55 |
|
| like a normal merge | 22:55 |
|
jast
| ESphynx: it creates a standard, non-merge commit that just happens to contain the changes a merge would otherwise introduce | 22:55 |
|
ESphynx
| bringing master up to date... | 22:55 |
|
cbreak
| but without the second parent | 22:55 |
|
ESphynx
| but as a single commit... | 22:55 |
|
jast
| yeah | 22:55 |
|
ESphynx
| as opposed to a bunch of cherry-picked commits (which I like) | 22:55 |
| → whyking joined | 22:55 |
|
jast
| well you *can* cherry-pick ranges | 22:56 |
|
cbreak
| it's basically like svn's merges :) | 22:56 |
|
ESphynx
| git rebase master && git rebase origin/sidebranch is easier :P | 22:56 |
|
jast
| so, roughly, instead of the double rebase you might do: git cherry-pick `git merge-base master sidebranch`..master | 22:56 |
| ← alex__c2022 left | 22:56 |
| ← tiagobutzke left | 22:56 |
|
jast
| this is very easy to abstract away in a script, unlike the double rebase | 22:56 |
|
ESphynx
| ah. | 22:56 |
|
jast
| (I haven't tested this, mind you) | 22:57 |
|
ESphynx
| jast: I guess that was the answer I was looking for :P | 22:57 |
|
jast
| okay, so my mind isn't completely asleep yet | 22:57 |
| ← mikewintermute left | 22:58 |
|
jast
| I still think there's a chance this will, at some point, create a hell of conflicts for you... but I can't make any kind of reliable prediction about it. | 22:58 |
|
ESphynx
| ithanks | 22:59 |
|
cbreak
| rebase --squash will lose your commits | 22:59 |
|
ESphynx
| jast: it seems to have worked well this far :P | 23:00 |
|
jast
| ESphynx: just giving you my perspective. the decision is, of course, all yours. | 23:00 |
|
ESphynx
| no easy way to `git merge-base` on cmd.exe eh? :) | 23:00 |
|
| appreciated :P | 23:01 |
|
jast
| I don't think so | 23:01 |
|
| but msysgit includes bash | 23:01 |
|
canton7
| one of the msysgit install options is whether you want to have git in your PATH | 23:01 |
|
| I think that's what FauxFaux uses | 23:01 |
|
ESphynx
| yeah, but I usually stick to cmd.exe without bash :P | 23:01 |
|
cbreak
| what do you need merge-base for? | 23:01 |
|
ESphynx
| cbreak: cherry-pick ranges :P | 23:02 |
|
| FauxFaux high-fives ESphynx. | 23:02 |
|
jast
| git itself uses bash for some of its commands, anyway | 23:02 |
|
ESphynx
| or just a git log `git merge-base` | 23:02 |
| ← metcalfc left | 23:02 |
|
cbreak
| ESphynx: you can do that with normal ranges maybe | 23:02 |
|
| ESphynx high-fives FauxFaux back | 23:02 |
| ← Samoi left | 23:02 |
|
jast
| yeah, *if* you can figure out the right starting point for the range | 23:02 |
|
cbreak
| so master..foo is the same as (merge-base master foo)..foo | 23:02 |
| → Samoi joined | 23:03 |
|
ESphynx
| anyways, I got the code rebased like I wanted, so I will resume my work :P thanks folks. | 23:03 |
|
| is it? | 23:03 |
|
jast
| cbreak: good point | 23:03 |
|
ESphynx
| master..foo is the same ? | 23:03 |
|
cbreak
| yes. | 23:03 |
|
ESphynx
| oh. interesting. | 23:03 |
|
cbreak
| master..foo means in foo but not master | 23:03 |
|
jast
| so, git cherry-pick sidebranch..master | 23:03 |
|
cbreak
| that would cherry-pick what is in master but not the sidebranch | 23:04 |
|
ESphynx
| So: git cherry-pick sidebranch..master ? | 23:04 |
|
jast
| it's a bit difficult to wrap your head around that since the syntax seems to suggest that it means something else | 23:04 |
| ← Amorphous left | 23:04 |
|
ESphynx
| cbreak: being in the sidebranch ? | 23:04 |
|
cbreak
| well, with git's history interpretation of "not in sidebranch" | 23:04 |
| ← kvanderw left | 23:04 |
|
jast
| doesn't matter where you are | 23:04 |
|
cbreak
| ESphynx: independent of where HEAD is | 23:04 |
|
| but careful | 23:04 |
|
jast
| it all comes down to reachability | 23:04 |
|
cbreak
| if you repeat that cherry pick, you'll get duplicate commits :) | 23:05 |
|
jast
| basically sidebranch..master takes all commits reachable from master, and subtracts the one reachable from sidebranch | 23:05 |
|
ESphynx
| oh. | 23:05 |
|
cbreak
| "not in blah" is decided with history order | 23:05 |
|
ESphynx
| the rebase addresses that though? right? | 23:05 |
|
cbreak
| and not something like patch-id | 23:05 |
| ← traviscj left | 23:05 |
|
jast
| this leaves the one that master added after it split off from sidebranch | 23:05 |
|
| in this case, anyway | 23:05 |
|
ESphynx
| i know I've done it a few times | 23:05 |
| ← MUILTFN left | 23:05 |
|
ESphynx
| multiple double-rebases | 23:06 |
|
cbreak
| well, cherry picking the same thing might just fail | 23:06 |
| ← ^slacker^ left | 23:06 |
|
cbreak
| if it can't apply the same thing multiple times | 23:06 |
|
| or create empty commits | 23:06 |
|
| or create no commits | 23:06 |
|
| I've not actually tried that | 23:06 |
|
ESphynx
| ah. | 23:06 |
|
cbreak
| be expected to be surprised... or not. :) | 23:06 |
| → Spockz joined | 23:06 |
|
jast
| yeah, I didn't think about that | 23:06 |
|
ESphynx
| I'll stick to what has served me well then :P | 23:06 |
|
jast
| it might create a conflict situation for each time it re-applies commits | 23:07 |
| → kevwil joined | 23:07 |
| → workmad3 joined | 23:08 |
|
cbreak
| rebase has the same problem | 23:10 |
|
| It will give you a weird conflict, and you have to rebase --skip to resolve it | 23:10 |
|
jast
| if the two commits have the same patch-id I think it would skip it | 23:10 |
| ← linusoleander left | 23:10 |
|
cbreak
| usually those irritate me since I search for an actual conflict first... :) | 23:10 |
|
jast
| in other cases... not so much :) | 23:10 |
| → neurodrone joined | 23:11 |
|
cbreak
| patch-id is a heuristic | 23:11 |
|
jast
| I know | 23:11 |
|
| if the sidebranch commits touch a different part of the codebase, it'll work | 23:11 |
|
| if they don't, all bets are off | 23:11 |
|
cbreak
| if it works it's nice. But I think it's prefering false positives over missed negatives | 23:12 |
| ← Cogito left | 23:12 |
|
cbreak
| a reasonable thing to do | 23:12 |
|
jast
| indeed. it's just a hash of the diff, actually, afaik | 23:12 |
|
ESphynx
| ah that's the patch-id? | 23:13 |
| → Cogito joined | 23:14 |
| → zarac joined | 23:14 |
|
cbreak
| see man git-patch-id | 23:14 |
|
jast
| *automatic message* the 'git-patch-id' manpage can be found at <http://git.kernel.org/?p=git/git-htmldocs.git;a=blob_plain;f=git-patch-id.html;hb=master> | 23:14 |
|
zarac
| Hey folks | 23:14 |
|
jast
| | 23:14 |
|
| whoops :) | 23:14 |
|
| hey to you too | 23:14 |
| → mysphyt joined | 23:15 |
|
zarac
| I did a bad commit (included some files i did not want to). Is reset the right command to use if i just want to undo the last commit (leaving the working directory as is)? | 23:15 |
|
| ; ) | 23:15 |
| ← glennpratt left | 23:16 |
| ← nicksagona left | 23:16 |
|
jast
| zarac: actually you can just fix things up and use git commit --amend to redo the bad commit | 23:16 |
|
zarac
| I included the build files. ; ) | 23:16 |
|
jast
| so the fix will probably involve git rm --cached | 23:16 |
|
zarac
| ah, that was my next question ; ) | 23:16 |
|
| thanks a bunch | 23:17 |
| → envi_ joined | 23:17 |
| ← baburdick left | 23:18 |
| → baburdick joined | 23:18 |
| ← Spockz left | 23:19 |
| → madewokherd joined | 23:19 |
| → vals_ joined | 23:20 |
| ← tango_ left | 23:20 |
| ← kermit left | 23:20 |
| ← rzec left | 23:20 |
| → kermit joined | 23:20 |
| → Amorphous joined | 23:20 |
| vals_ → tango_ | 23:21 |
| ← axl_ left | 23:21 |
| ← juvenal left | 23:21 |
| → subbyyy joined | 23:21 |
| ← koo6 left | 23:21 |
| → sirdancealot joined | 23:22 |
| ← ixti left | 23:24 |
| → lucasvo03 joined | 23:25 |
| ← jmah left | 23:25 |
| → juvenal joined | 23:25 |
| ← lucasvo03 left | 23:27 |
| ← giallu left | 23:27 |
| → lucasvo joined | 23:27 |
| ← madewokherd left | 23:28 |
| ← lucasvo left | 23:29 |
| → krazyj joined | 23:30 |
| → lucasvo_2 joined | 23:30 |
|
krazyj
| is it possible to make a git pull also do force a pull of all submodules, too? | 23:30 |
| ← lucasvo_2 left | 23:30 |
| → lucasvo_3 joined | 23:30 |
|
jast
| well, sort of... but the interface is kind of screwed up in that the new versions in the submodules won't be checked out automatically | 23:31 |
|
lucasvo_3
| Are there any tips on importing huge svn repositories? I'm trying to convert an svn repository with over 12k commits and about a 100 tags and it's been taking several hours already with no end in sight. | 23:31 |
|
jast
| so it's "git merge --recurse-submodules; git submodule update --recursive" | 23:32 |
| → [ESphynx] joined | 23:33 |
|
jast
| lucasvo_3: not really. some folks are working on a tool to do imports faster, but I don't think it's ready for use yet. I'm not following its development very closely, though. | 23:33 |
|
krazyj
| jast: so if i were to make that into a pull hook, every time i 'git pull' remote master, it'll pull+merge the submodules from their repos, too? | 23:33 |
| → madewokherd joined | 23:33 |
| ← mysphyt left | 23:34 |
| ← tabakhase left | 23:34 |
| ← mattp_ left | 23:34 |
|
jast
| krazyj: actually, you might want/have to use "git pull; git submodule --merge --recursive" instead. I haven't personally done anything like that, so it's going to involve a bit of experimenting. | 23:34 |
|
krazyj
| ah ok | 23:35 |
| → tabakhase joined | 23:35 |
| → mattp_ joined | 23:35 |
|
krazyj
| jast: basically, i'm using a plugin library that i will make no edits to and just want to keep it up to date with what the creators have posted | 23:35 |
|
| and make it easy for all of my coworkers to stay on a similar page | 23:35 |
| ← ESphynx left | 23:35 |
| [ESphynx] → ESphynx | 23:35 |
| → tizzo-afk joined | 23:36 |
| ← sontek left | 23:36 |
| ← JP left | 23:36 |
| ← akraut left | 23:36 |
| ← etcetera left | 23:36 |
| → akraut joined | 23:36 |
| → JP joined | 23:36 |
| → etcetera joined | 23:36 |
| ← envi_ left | 23:36 |
| ← tabakhase left | 23:36 |
| → tabakhase joined | 23:36 |
| → sontek joined | 23:37 |
|
jast
| krazyj: right. in that case there's another way you can do it that is more likely to never mess anything up: "git pull; [fix potential conflicts here and commit if necessary]; cd submodule; git fetch; git checkout <the branch> (probably master); cd ..; git add submodule; git commit -m "Update submodule blah blah blah" | 23:37 |
|
| not terribly pretty, I guess | 23:37 |
| → mklappstuhl joined | 23:38 |
|
krazyj
| jast: ahh, so basically i have to manage the submodule updates, i guess? | 23:38 |
|
lucasvo_3
| jast, do you know if github has their own method or are they using the same tools? | 23:38 |
|
| yeah they seem to do. | 23:39 |
|
jast
| krazyj: yeah | 23:39 |
|
krazyj
| jast: thanks for the help dude! | 23:39 |
|
jast
| krazyj: you're welcome | 23:40 |
| ← Flogalen left | 23:40 |
| → ISF joined | 23:41 |
| ← Fandekasp left | 23:42 |
| ← fedesilva left | 23:42 |
| ← wbednarski left | 23:43 |
| ← dfr|mac left | 23:43 |
| ← workmad3 left | 23:44 |
| ← airborn left | 23:45 |
| ← krazyj left | 23:45 |
| ← drizzd left | 23:46 |
| → macRover joined | 23:46 |
| → saschagehlich joined | 23:47 |
| ← ipalaus_ left | 23:51 |
| → alnewkirk joined | 23:51 |
| ← kevwil left | 23:52 |
| ← sirdancealot left | 23:52 |
| ← pantsman left | 23:57 |
| → sirdancealot joined | 23:58 |
|
lucasvo_3
| can I delete all modifications that are older than three months? | 23:58 |
| ← novettam left | 23:58 |
|
jast
| not without a lot of side-effects | 23:59 |