--- Log opened Wed Aug 29 00:00:38 2018 |
00:01 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
00:09 | | macdjord|wurk is now known as macdjord |
00:18 | <@macdjord> | git people: Working on a project at work. It's in git. I have a local copy. On this local copy, I have made a handful of small changes to various file to allow the project to run locally on my workstation for testing. These changes need to stick around pretty much forever, but /never/ get committed. Is there a good way of managing this workflow? |
00:19 | <@macdjord> | So far, I've just been leaving the files edited and occasionally stashing/unstashing them when I need to, e.g., do a merge, but that's awkward and error-prone. |
00:20 | <&[R]> | And you still want to push changes upstream right? |
00:20 | <@macdjord> | [R]: Yes, just not those /particular/ changes. |
00:20 | <&ToxicFrog> | macdjord: usually the recommendation there is to put the necessary changes in a completely different file and refer to it, e.g. for configuration files. This works less well if you need actual code changes. |
00:21 | <&ToxicFrog> | You could put it in a commit that constantly gets rebased to the end and then never pushed but that's really easy to get wrong; I don't think there's an automated way to do that workflow. |
00:21 | <@macdjord> | I considered adding the files in question to .gitignore, but this seems like it could have Consequences if those files ever get changed by someone else. |
00:22 | <&[R]> | The .gitignore gets commited |
00:22 | <&[R]> | So just comment in the ignore "these are used to make the repository work locally, do not remove" |
00:22 | <@macdjord> | [R]: Er, right. Um, I know there's something that's equivelent but doesn't get commited - some setting that lives in git/ |
00:25 | <&ToxicFrog> | macdjord: .git/info/exclude |
00:25 | <&ToxicFrog> | That won't do what you need here anyways, though |
00:25 | <&[R]> | core.excludesFile |
00:25 | <&[R]> | Specifies the pathname to the file that contains patterns to describe paths that are not meant to be tracked, in addition to .gitignore (per-directory) and .git/info/exclude. Defaults |
00:25 | <&[R]> | to $XDG_CONFIG_HOME/git/ignore. If $XDG_CONFIG_HOME is either not set or empty, $HOME/.config/git/ignore is used instead. See gitignore(5). |
00:26 | <&ToxicFrog> | .gitignore is used to tell git to ignore files it doesn't already know about. If the files are already tracked it will still see changes to them and pick them up in `add .` and `commit -a` and whatnot. |
00:27 | | * macdjord nods |
00:27 | <&ToxicFrog> | You could try `git update-index --assume-unchanged <files you've modified>`, which will tell git to always assume those files are not modified no matter what lstat() or read() say, but I have no idea if this safely interacts with `stash` and of course if you are also making changes to those files that you do want to commit it breaks down completely. |
00:28 | <&[R]> | Really though, the repo should just work out of the box, so I don't get why you don't just upload the commits that do so |
00:28 | <&ToxicFrog> | In general, git doesn't have good automatic support for "I want to make a bunch of changes and perpetually float some of them without ever committing/pushing them", which is why the recommendation is to structure your code such that you can put local modifications like that in a completely separate file. |
00:29 | <&[R]> | If it's a configuration file, that's a bit more understandable, but the normal way that's handled is to commit a .sample configuration file and ignore a real one. |
00:29 | <&ToxicFrog> | [R]: I'm assuming this is stuff like paths to local test databases or API keys or whatnot that really shouldn't be committed |
00:29 | <&[R]> | This kind of screams of an XY problem |
00:30 | <@macdjord> | [R]: It does work out of the box - on the intended enviroment. It has different configs for DEV, UAT, and PROD. But to run it on my local machine requires a different setup and some hacks to avoid firewall issues. |
00:31 | <&[R]> | And those changes are more complicated than changing an ingored configuration file? |
00:31 | <&ToxicFrog> | macdjord: are these purely config hacks, or do they involve code hacks as well? |
00:31 | <&ToxicFrog> | if the latter, how hard would it be to add configuration knobs for them and commit those, thus making it purely a config problem? |
00:31 | <@macdjord> | And yes, one of those changes is 'Connect to the database running in the other console window instead of logging into a different server'. |
00:31 | <@macdjord> | ToxicFrog: Code. |
00:32 | <@macdjord> | ANd... I don't know. I've only been working here a week. |
00:32 | <&[R]> | Ask how the others do it? |
00:32 | <@macdjord> | [R]: I will. |
00:32 | <&[R]> | Otherwise, see about adding the SQL connection information into the configuration files |
00:35 | <@macdjord> | [R]: It /is/ in the config files. The change is removing the whole connect-to-remote-server part in place of a local setup. |
00:35 | <&[R]> | Explain that? |
00:37 | | himi [sjjf@Nightstar-1drtbs.anu.edu.au] has joined #code |
00:37 | | mode/#code [+o himi] by ChanServ |
00:38 | <@macdjord> | [R]: Can't. Not actually at work right now, and we've reached the fuzzy limit of my memory and understanding here. |
00:43 | <&[R]> | If the issue is you need to connect to a hostname:port, and locally you only have a UNIX socket, and your DB license prevents you from running your local DB listening on TCP, then you could (ab)use spiped to listen on a TCP port, then forward it to a UNIX socket. |
00:43 | <&[R]> | If you can listen on TCP with the local daemon, just add the hostname into /etc/hosts |
00:44 | <&[R]> | If it's using a raw IP, you might be able to do some firewall trickery instead (but IMO that'd be less janky than the proposed work-around) |
00:44 | <&[R]> | https://www.tarsnap.com/spiped.html <-- spiped |
00:49 | <@macdjord> | [R]: I'll have to take another look tomorow. That's only one of the changes, though. |
00:50 | <@macdjord> | Hopefully one of the others has a beetter long-term solution. |
00:50 | <&[R]> | Fair enough |
00:50 | <&[R]> | Yeah, definately ask your coworkers |
00:52 | | celticminstrel [celticminst@Nightstar-v1qb0r.dsl.bell.ca] has joined #code |
00:52 | | mode/#code [+o celticminstrel] by ChanServ |
01:03 | | Derakon[AFK] is now known as Derakon |
01:35 | | Kindamoody is now known as Kindamoody[zZz] |
02:01 | | Degi [Degi@Nightstar-pkumc7.dyn.telefonica.de] has quit [Connection closed] |
02:46 | | mac [macdjord@Nightstar-grpbnp.mc.videotron.ca] has joined #code |
02:46 | | mode/#code [+o mac] by ChanServ |
02:49 | | macdjord [macdjord@Nightstar-grpbnp.mc.videotron.ca] has quit [Connection closed] |
03:44 | | Alek [Alek@Nightstar-o723m2.cicril.sbcglobal.net] has quit [Connection closed] |
04:22 | | Vorntastic [uid293981@Nightstar-6br85t.irccloud.com] has joined #code |
04:22 | | mode/#code [+qo Vorntastic Vorntastic] by ChanServ |
04:35 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code |
04:35 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
05:07 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
05:10 | | Derakon is now known as Derakon[AFK] |
05:22 | | celticminstrel [celticminst@Nightstar-v1qb0r.dsl.bell.ca] has quit [[NS] Quit: KABOOM! It seems that I have exploded. Please wait while I reinstall the universe.] |
05:25 | | mac [macdjord@Nightstar-grpbnp.mc.videotron.ca] has quit [Ping timeout: 121 seconds] |
05:28 | | macdjord [macdjord@Nightstar-grpbnp.mc.videotron.ca] has joined #code |
05:28 | | mode/#code [+o macdjord] by ChanServ |
05:35 | <&McMartin> | "1:26:06: Chihuahua on speed confirmed" |
06:32 | | Vorntastic [uid293981@Nightstar-6br85t.irccloud.com] has quit [[NS] Quit: Connection closed for inactivity] |
06:44 | | Vorntastic [uid293981@Nightstar-6br85t.irccloud.com] has joined #code |
06:44 | | mode/#code [+qo Vorntastic Vorntastic] by ChanServ |
06:52 | | macdjord is now known as macdjord|slep |
07:18 | | Vornicus [Vorn@Nightstar-sjaki9.res.rr.com] has joined #code |
07:18 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
07:24 | | Vornicus [Vorn@Nightstar-sjaki9.res.rr.com] has quit [Ping timeout: 121 seconds] |
08:25 | | McMartin [mcmartin@Nightstar-rpcdbf.sntcca.sbcglobal.net] has quit [Ping timeout: 121 seconds] |
08:25 | | McMartin [mcmartin@Nightstar-rpcdbf.sntcca.sbcglobal.net] has joined #code |
08:25 | | mode/#code [+ao McMartin McMartin] by ChanServ |
09:44 | | himi [sjjf@Nightstar-1drtbs.anu.edu.au] has quit [Ping timeout: 121 seconds] |
11:00 | | Kindamoody[zZz] is now known as Kindamoody |
13:23 | | Degi [Degi@Nightstar-kedf0l.dyn.telefonica.de] has joined #code |
13:32 | | Alek [Alek@Nightstar-o723m2.cicril.sbcglobal.net] has joined #code |
13:32 | | mode/#code [+o Alek] by ChanServ |
13:38 | | celticminstrel [celticminst@Nightstar-v1qb0r.dsl.bell.ca] has joined #code |
13:38 | | mode/#code [+o celticminstrel] by ChanServ |
13:41 | | macdjord|slep is now known as macdjord|wurk |
13:49 | | * TheWatcher uuughs at mongodb |
13:55 | | celticminstrel [celticminst@Nightstar-v1qb0r.dsl.bell.ca] has quit [[NS] Quit: KABOOM! It seems that I have exploded. Please wait while I reinstall the universe.] |
14:41 | <~Vorntastic> | I keep hoping to accidentally run into a system that runs Mongo just so I can quote Blazing Saddles at it |
14:46 | <@TheWatcher> | I now have three |
14:46 | <@TheWatcher> | And it's a pain in the arse |
14:57 | | Degi [Degi@Nightstar-kedf0l.dyn.telefonica.de] has quit [Ping timeout: 121 seconds] |
15:05 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code |
15:05 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
15:44 | | Alek [Alek@Nightstar-o723m2.cicril.sbcglobal.net] has quit [Connection closed] |
15:46 | | Alek [Alek@Nightstar-o723m2.cicril.sbcglobal.net] has joined #code |
15:46 | | mode/#code [+o Alek] by ChanServ |
15:47 | | Kindamoody is now known as Kindamoody|afk |
15:57 | | Alek [Alek@Nightstar-o723m2.cicril.sbcglobal.net] has quit [Ping timeout: 121 seconds] |
16:00 | < simon_> | when a function has an optional argument ?eq:('a -> 'a -> bool), should I specify it as ?eq:Foo.equal, or ~eq:Foo.equal? |
16:00 | | Alek [Alek@Nightstar-o723m2.cicril.sbcglobal.net] has joined #code |
16:00 | | mode/#code [+o Alek] by ChanServ |
16:01 | < simon_> | wait, never mind. ~. |
16:21 | <&[R]> | Vorntastic: which bit of blazing saddles? |
16:21 | <&[R]> | "Where the white women at?" seems random |
16:22 | <@ErikMesoy> | "Mongo only pawn in game of life", I would guess. |
16:23 | <~Vornicus> | "oh shit, it's mongo" |
16:34 | | mac [macdjord@Nightstar-grpbnp.mc.videotron.ca] has joined #code |
16:34 | | mode/#code [+o mac] by ChanServ |
16:37 | | macdjord|wurk [macdjord@Nightstar-grpbnp.mc.videotron.ca] has quit [Ping timeout: 121 seconds] |
16:51 | | M-E [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has joined #code |
16:52 | | M-E is now known as Emmy |
17:52 | | Vorntastic [uid293981@Nightstar-6br85t.irccloud.com] has quit [[NS] Quit: Connection closed for inactivity] |
18:19 | | Emmy is now known as Emmy-Noms |
18:21 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
19:04 | | * McMartin forgot to link https://bumbershootsoft.wordpress.com/2018/08/29/atari-2600-programmatic-sprite-placement/ last night |
19:23 | | Kindamoody|afk is now known as Kindamoody |
19:34 | | Emmy-Noms is now known as Emmy |
20:12 | <&McMartin> | I've managed to do a much "saner" routine, but that's for tonight since the saner routine is (a) actually much less sane in terms of derivation and (b) slower and larger than the half-assed stuff in the link above |
20:12 | <&McMartin> | I need to edit a bit in more because I realized at 2 AM that I can add four bytes and fix one of the annoying API anomalies |
20:12 | <&McMartin> | Taking it all the way up to 27, zomg |
21:01 | | Pink [user1@Nightstar-g7hdo5.dyn.optonline.net] has joined #code |
21:45 | | orthia [quassel@Nightstar-ksqup0.co.uk] has quit [[NS] Quit: http://quassel-irc.org - Chat comfortably. Anywhere.] |
21:45 | | Reiver [quassel@Nightstar-ksqup0.co.uk] has quit [[NS] Quit: Reblooting.] |
21:45 | | Orthia [quassel@Nightstar-ksqup0.co.uk] has joined #code |
21:45 | | mode/#code [+o Orthia] by ChanServ |
21:45 | | Reiver [quassel@Nightstar-ksqup0.co.uk] has joined #code |
21:45 | | mode/#code [+ao Reiver Reiver] by ChanServ |
22:29 | | Degi [Degi@Nightstar-p4m48c.dyn.telefonica.de] has joined #code |
22:34 | | Degi_ [Degi@Nightstar-f0r131.dyn.telefonica.de] has joined #code |
22:35 | | Degi [Degi@Nightstar-p4m48c.dyn.telefonica.de] has quit [Ping timeout: 121 seconds] |
22:39 | | Degi_ is now known as Degi |
22:46 | | Degi_ [Degi@Nightstar-e2fh5c.dyn.telefonica.de] has joined #code |
22:47 | | Degi [Degi@Nightstar-f0r131.dyn.telefonica.de] has quit [Ping timeout: 121 seconds] |
22:55 | | Degi_ is now known as Degi |
23:40 | | himi [sjjf@Nightstar-1drtbs.anu.edu.au] has joined #code |
23:40 | | mode/#code [+o himi] by ChanServ |
23:41 | | Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has quit [Ping timeout: 121 seconds] |
23:52 | | mac is now known as macdjord |
--- Log closed Thu Aug 30 00:00:40 2018 |