| 2019-12-17 |
| ← thiago left | 00:03 |
|
Moongoodgirl
| NeuroWinter: I would be averse to doing that. It sounds like it loses information about where the changes come from. | 00:04 |
|
| I would prefer just using an interactive rebase to retcon out the commit, if it was never pushed; or else `git revert` if it was | 00:05 |
| ← omnireq left | 00:05 |
| → khisanth_ joined | 00:07 |
| → thiago joined | 00:07 |
| → g4570n joined | 00:15 |
| → greatgatsby joined | 00:16 |
| → sidetrack joined | 00:19 |
| ← xcm left | 00:21 |
| → xcm joined | 00:21 |
| ← Aelius left | 00:26 |
| ← mokha left | 00:34 |
| ← fahadash left | 00:36 |
| → royal_screwup21 joined | 00:36 |
| → oatmealraisin joined | 00:42 |
| → fission6 joined | 00:46 |
| ← greggerz left | 00:50 |
| → omnireq joined | 00:52 |
| ← alesan left | 00:52 |
| ← mat001_ left | 00:52 |
| → beastDiv_ joined | 00:53 |
| ← thiago left | 00:57 |
| ← Sasazuka left | 01:00 |
| → libertyprime joined | 01:01 |
| → Sasazuka joined | 01:01 |
| → parallel21 joined | 01:03 |
| ← fission6 left | 01:08 |
| → prepend joined | 01:10 |
| ← n3wborn left | 01:14 |
| ← beastDiv_ left | 01:14 |
| ← ixian8 left | 01:16 |
| ← registerihateto left | 01:20 |
| ← LearnAllTheTime left | 01:22 |
| ← durham left | 01:23 |
| ← Enphuego left | 01:27 |
| ← davispuh left | 01:31 |
| ← Sonicbit left | 01:31 |
| ← lucasb left | 01:32 |
| ← Helenah left | 01:32 |
| ← dartmouthed left | 01:33 |
| → Helenah joined | 01:33 |
| ← g4570n left | 01:34 |
| → im0nde joined | 01:35 |
| ← im0nde_ left | 01:37 |
| ← themayor left | 01:39 |
| ← Sasazuka left | 01:52 |
| → bambanx joined | 01:53 |
| ← sidetrack left | 01:56 |
| qpdb → Guest2077 | 01:59 |
| ← Guest2077 left | 01:59 |
| → qpdb joined | 01:59 |
| ← xcm left | 01:59 |
| → Lucas_Gray joined | 02:01 |
| ← zulutango left | 02:02 |
| → thiago joined | 02:03 |
| → LearnAllTheTime joined | 02:03 |
| ← mowcat left | 02:03 |
| → fphilipe_ joined | 02:05 |
| → zulutango joined | 02:05 |
| ← yawkat left | 02:06 |
| → jimender2 joined | 02:09 |
| ← fphilipe_ left | 02:09 |
| → fission6 joined | 02:15 |
| ← libertyprime left | 02:18 |
| → libertyprime joined | 02:20 |
| → durham joined | 02:22 |
| → yawkat joined | 02:23 |
| ← wodim left | 02:24 |
| → Love4Boobies joined | 02:24 |
| → wodim joined | 02:24 |
| ← Arcaelyx left | 02:25 |
| ← libertyprime left | 02:25 |
| ← JanC left | 02:25 |
| → yonder joined | 02:26 |
| → JanC joined | 02:26 |
| → libertyprime joined | 02:26 |
| ← durham left | 02:27 |
| ← rardiol left | 02:34 |
| ← F0rTex left | 02:34 |
| → orbyt_ joined | 02:35 |
| → F0rTex joined | 02:36 |
| → sidetrack joined | 02:38 |
| ← finalbeta1 left | 02:38 |
| ← daurnimator left | 02:40 |
| ← zulutango left | 02:45 |
| → Ranhir joined | 02:47 |
| → finalbeta joined | 02:48 |
| → daurnimator joined | 02:49 |
| ← robertparkerx left | 03:01 |
| → robertparkerx joined | 03:01 |
| ← kreyren left | 03:05 |
| ← royal_screwup21 left | 03:10 |
| → Newami joined | 03:17 |
| → zulutango joined | 03:21 |
| ← Cabanossi left | 03:23 |
| → Sonicbit joined | 03:28 |
| → Cabanossi joined | 03:33 |
| → duderonomy joined | 03:45 |
| ← libertyprime left | 03:47 |
| ← prepend left | 03:48 |
| ← monr0e left | 03:50 |
| ← oatmealraisin left | 03:50 |
| → Garen joined | 03:52 |
| ← lagothrix left | 03:55 |
| → lagothrix joined | 03:55 |
| ← Newami left | 03:55 |
|
Eugene
| fury - tbh, just make your new projects history going forward. Include a reference to the Monolith' URL in the first commit; if anybody cares about the archaeology they can go look it up, but I bet you they won't | 04:00 |
| ← Sleepy63 left | 04:01 |
| → kiki_lamb joined | 04:02 |
| ← sidetrack left | 04:02 |
|
kiki_lamb
| Is there a way to exhaustively string search the entire history of a repo? Like, not just current heads and not just one branch - I want to know if a particular string has ever occured in any commit in my repo. | 04:03 |
| → sidetrack joined | 04:03 |
| → sporeball joined | 04:05 |
| ← fission6 left | 04:05 |
| ← sidetrack left | 04:08 |
| → sidetrack joined | 04:08 |
| ← sporeball left | 04:11 |
| ← khisanth_ left | 04:15 |
| ← Lucas_Gray left | 04:17 |
| → bjpenn joined | 04:32 |
|
bjpenn
| if i created a "branch-of-branch" off "branch", which is based off master | 04:33 |
|
| how do i eventually merge my "branch-of-branch" to master? | 04:33 |
| ← LearnAllTheTime left | 04:39 |
| ← ferdna left | 04:39 |
| → ahmedhany joined | 04:39 |
| → khisanth_ joined | 04:39 |
|
ahmedhany
| hi there everyone I have a technical question hope someone could help me | 04:40 |
|
| I want to know which specific "executable" within git is responsible for pushing (i.e. uploading) staged files to the remote repository. As a security team we need this piece of info to be able to implement DLP policy within our premises to prevent the leakage of proprietary source code. | 04:40 |
| → ferdna joined | 04:41 |
|
ahmedhany
| to be more specific.. when I issue this command: "git push" which process (i.e. executable) is responsible for uploading the files or modifications to the remote repo | 04:42 |
| ← ferdna left | 04:44 |
| → ferdna joined | 04:45 |
|
R2robot
| can't you use a trace on it to see what is being called? | 04:45 |
| ← bjpenn left | 04:46 |
| → omnireq_ joined | 04:47 |
|
ahmedhany
| I did with "process monitor" and I found "git-credential-manager.exe" but it didn't work I guess | 04:47 |
|
| I already hooked these executables with our dll but no result (the executables: "git-bash" "wish" "git-credential-manager" and I think something called mintty.exe) | 04:48 |
| ← sidetrack left | 04:49 |
| ← omnireq left | 04:50 |
| → sidetrack joined | 04:52 |
| → libertyprime joined | 04:53 |
| ← Shentino left | 04:56 |
| ← libertyprime left | 04:57 |
| → Shentino joined | 04:59 |
| ← Shentino left | 05:00 |
| → Shentino joined | 05:01 |
| → pks_ joined | 05:01 |
| ← pks left | 05:04 |
| pks_ → pks | 05:04 |
| → Sleepy63 joined | 05:06 |
| → fstd_ joined | 05:07 |
| → ricks_ joined | 05:10 |
| → beastDiv_ joined | 05:10 |
| ← fstd left | 05:11 |
| fstd_ → fstd | 05:11 |
| ← orbyt_ left | 05:11 |
| ← ricks_ left | 05:11 |
| → ricks_ joined | 05:12 |
| → beastDi__ joined | 05:16 |
| ← beastDiv_ left | 05:17 |
| ← bvdw left | 05:18 |
| → bvdw joined | 05:19 |
| ← beastDi__ left | 05:20 |
| → beastDiv_ joined | 05:21 |
| ← iam730 left | 05:24 |
| → dtux joined | 05:25 |
|
Eugene
| kiki_lamb - `git rev-list --all | xargs git grep foobar` | 05:25 |
| → mns_ joined | 05:25 |
| ← mns left | 05:25 |
|
Eugene
| ahmedhany - time to pay an expert to explain the source to you then ;-). git can use custom helpers, but basically git calls out to `ssh` for the heavy lifting | 05:27 |
|
| A better answer would be to monitor what processes actually open sockets when you run `git push`. I'm sure strace and lsof will be your friends | 05:27 |
| → YuGiOhJCJ joined | 05:31 |
| ← sidetrack left | 05:31 |
| → kjartan joined | 05:36 |
| ← kjartan_ left | 05:38 |
| → Goplat joined | 05:38 |
| ← Inline left | 05:39 |
| → sidetrack joined | 05:41 |
| ← g00s left | 05:42 |
| ← sidetrack left | 05:42 |
| → g00s joined | 05:45 |
| ← brettgilio left | 05:46 |
| → brettgilio joined | 05:46 |
| → BeerLover joined | 06:01 |
|
fury
| Eugene: normally I would agree, and that's what I started off with in the first project that split off into its own - first commit message just linked to the last commit from the monorepo. however, knowing how things work where I work, I will be the one being asked to enumerate the differences between version 1.xx and 2.xx and it will probably be easier for me to keep the boss from shitting his pants when I produce this next | 06:02 |
|
| release if I can prove the code is "the same" (other than moved around) | 06:02 |
| ← howdoi left | 06:03 |
|
Eugene
| If your boss doesn't trust the release engineer to run `diff` then you have bigger problems IMO | 06:03 |
| ← boombatower left | 06:03 |
| ← ahmedhany left | 06:04 |
|
fury
| I agree, my new repo is built in CI for that very reason, to make it easier to "trust but verify"... this is the kind of guy who if the application CRC is different his palms get sweaty, knees weak, arms are heavy, because one time 10 years ago this one thing changed in some stupid old crappy microcontroller compiler and something went wrong that got missed until after it went through production so now every little thing ever | 06:07 |
|
| since gets an inordinate amount of scrutiny | 06:07 |
| → ricks__ joined | 06:08 |
| ← ricks__ left | 06:08 |
| ← ricks_ left | 06:09 |
|
fury
| At least now I have full control over the software and can remove things like baking the build date into the application, for 100% reproducible builds :D | 06:10 |
| ← dtux left | 06:14 |
| → Mattiaslndstrm joined | 06:14 |
| ← bambanx left | 06:15 |
|
fury
| Small company, so, I am the software engineer, release engineer, testing engineer, web monkey, etc. :P I have to write the code, then the code that tests the code, then the code that tests the tester, etc. | 06:15 |
|
Eugene
| kno dat | 06:18 |
| → mikami joined | 06:18 |
| → kreyren joined | 06:20 |
| → sauvin joined | 06:22 |
| → Sonicbit_ joined | 06:41 |
| ← Sonicbit_ left | 06:41 |
|
tabakhase
| fury yea, dont "manually" anything... the tool to "split out foders" you alread yfound as it seems, from there one would usually "cut" with a trusted tree, keep that as archive and allow anyone who needs later to "pull both, and link them with git-replace" (what makes git-blame and everything work again) | 06:43 |
| ← Sonicbit left | 06:44 |
| ← tango_ left | 06:44 |
| ← Mattiaslndstrm left | 06:44 |
|
tabakhase
| git commit-tree and some back&forth branching | 06:45 |
| → senaps joined | 06:48 |
| ← senaps left | 06:49 |
| → nirmalhk7 joined | 06:49 |
| → senaps joined | 06:50 |
| ← nirmalhk7 left | 06:50 |
| → tango_ joined | 06:51 |
| → nirmalhk7 joined | 06:53 |
| ← Moongoodgirl left | 06:54 |
| ← nirmalhk7 left | 06:54 |
| → xcm joined | 06:56 |
| ← kreyren left | 06:57 |
| → dionysus69 joined | 06:59 |
| → kreyren joined | 06:59 |
| ← Cabanossi left | 06:59 |
| ← kreyren left | 07:01 |
| → dtux joined | 07:01 |
| → nirmalkhedkar joined | 07:03 |
| ← thiago left | 07:03 |
| ← duderonomy left | 07:04 |
| ← nirmalkhedkar left | 07:04 |
| → sQVe joined | 07:08 |
| → Cabanossi joined | 07:10 |
| ← cbreak left | 07:15 |
| ← senaps left | 07:15 |
| → Moongoodboy joined | 07:15 |
| → cbreak joined | 07:15 |
| Moongoodboy → Moongoodgirl | 07:17 |
| → Noti joined | 07:17 |
| ← Goplat left | 07:19 |
| ← Assault left | 07:24 |
| → senaps joined | 07:26 |
| ← sauvin left | 07:27 |
| ← pie_ left | 07:31 |
| → nirmalkhedkar joined | 07:33 |
| → BrainWork joined | 07:33 |
| ← nirmalkhedkar left | 07:33 |
|
BrainWork
| hi. in ancient version control systems like CVS, there was a way to put a tag into your file that would be munged on pre-commit, i think it was $CVS$. is there a way to do something similar with git, and to make it clear i'm after a human readable incrementing version number that isnt and shouldnt be the same as the git commit id. | 07:34 |
| → sauvin joined | 07:34 |
|
BrainWork
| i want it for a version *number* of a module | 07:34 |
|
| and also its fine if its just a single integer number, i'll hard code "1.0." on the start | 07:35 |
|
osse
| BrainWork: there isn't anything that is a direct replacement | 07:36 |
|
BrainWork
| i was kind of hoping someone had made a pre-commit hook i could just snaffle | 07:36 |
|
osse
| you can do it via a pre-commit hook or a clean/smudge filter | 07:36 |
| ← n000g left | 07:37 |
|
selckin
| sounds like a job for the CI/build server | 07:37 |
|
BrainWork
| yeah, except i dont do 'releases' of this as such | 07:37 |
|
tabakhase
| there is gitversion - what gives like "actual version +dirty commits" as one useable thing... | 07:38 |
|
BrainWork
| its a pair of rolling branches, a dev and live branch, that are updated as and when needed without proper releases | 07:38 |
| → n000g joined | 07:38 |
|
osse
| What do you need the number for? Maybe there's a different way of solving the underlying challenge | 07:38 |
| ← beastDiv_ left | 07:39 |
|
BrainWork
| my program has a core binary that's built by cmake, and a bunch of libraries that are shared objects, also built from the same cmake | 07:39 |
|
tabakhase
| but git is more as in "someone decides this state is this version" and then tags it, rather than "having it in a file" - and often some shellfu if that needs to be baked in a file to release something | 07:39 |
|
BrainWork
| its possible that i can be running the core binary and do a cmake to rebuild a module to hotpatch it | 07:39 |
|
| within the thing it runs on i can issue a 'modules list' command to show me what is running, theres a 'get version string' command for each module | 07:39 |
|
| i could put the first few or last chars of a git commit id in there ofc, but i wanted something more human readable where i can easily compare if the source code is newer or older than whats running atm | 07:40 |
|
osse
| you can put $Id$ into the file, but Git will use the object sha1 | 07:40 |
|
BrainWork
| without having to go into the shell | 07:40 |
|
| yeah $Id$ has no concept to me of whats newer or older does it | 07:40 |
|
selckin
| $date | 07:40 |
| → nirmalkhedkar joined | 07:41 |
|
osse
| BrainWork: not directly. you would have to look that up | 07:41 |
|
BrainWork
| hmm, turn the date into a version number? | 07:41 |
|
| i suppose i could do that if i turn it into unixtime and divide by 100 or something | 07:41 |
|
selckin
| well $commitid build on $date from branch v5.x | 07:41 |
|
BrainWork
| thats a bit long for the field i've got | 07:42 |
|
| i have display limitations, i can really only fit "n.n.nnnn" in there | 07:42 |
| → n3wborn joined | 07:42 |
|
BrainWork
| or maybe 5 digits on the last bit | 07:42 |
| ← nirmalkhedkar left | 07:42 |
|
tabakhase
| if thats a monorepo and the way people hop in gitbranches makes such things a bit troublesome too, so depends on a lot of other things in your workflow... | 07:42 |
|
selckin
| it'll take some brain work then | 07:42 |
| → nirmalkhedkar joined | 07:43 |
|
BrainWork
| its made a little easier by the fact the only maintainer is me atm | 07:43 |
|
| hmm, perhaps i can make a simple text only db, store it alongside the hook, with the filename and the increment number | 07:43 |
| ← nirmalkhedkar left | 07:44 |
|
BrainWork
| because all these files are under a specific subdirectory | 07:44 |
|
| and make a simple perl script or such | 07:44 |
|
tabakhase
| and if youre talking of "on a users workstation" - youve also got unstaged changes ontop of this.. so lotta info to decode into that | 07:44 |
|
osse
| I think I would use cmake for this. configure_file(config.h.in) or whatever, and that contains @VERSION@ etce tc | 07:44 |
|
BrainWork
| nope, the only place this runs is on my dedicated server | 07:45 |
|
| its a discord bot | 07:45 |
|
| hmm, interesting to use cmake for it | 07:45 |
| → breakingsad joined | 07:46 |
|
BrainWork
| i dont know that much about cmake and generally muddle my way along, so im going to read up on that, thanks osse :) | 07:46 |
|
tabakhase
| ive got a case where i build: ref="$(/usr/bin/git rev-parse --short=12 HEAD || date +%s)-dirty$(git status --porcelain | wc -l)/$(date +%s)" | 07:46 |
| → sydbarret joined | 07:48 |
| → chele joined | 07:48 |
| → dartmouthed joined | 07:49 |
|
BrainWork
| last time i did something like this, i was doing it on release | 07:50 |
|
| years before there was stuff like jenkins or circleci i'd made some kind of ghetto CI/release management that would run on crontab looking for tags matching a certain regular expression, and try to clone and build them, if they passed it would tar them up and upload them... back then, to sourceforge. | 07:51 |
|
| part of that was building a version.sh from an incrementing id | 07:52 |
|
| but that was much easier as i had tags etc to work from | 07:52 |
|
| perhaps i need to do something similar here and make sure i tag before i merge it to live | 07:52 |
|
| or as part of the process | 07:52 |
|
osse
| This limit you mention... Is that a hard limit in the binary or a limit in the display? | 07:52 |
|
BrainWork
| a display limit | 07:53 |
|
| due to the client which displays the module list, which i cant control | 07:53 |
| ← veegee left | 07:54 |
|
BrainWork
| i can trim some characters out of another field, but im a bit pressed for space (dont let the right hand edge deceive you, it has to be mobile friendly and any wider makes it wrap on mobile): https://snipboard.io/z4gP8m.jpg | 07:55 |
|
| tbh they just need to support tabular content already, instead of making me kludge it via code blocks and diff format | 07:56 |
| ← k_sze left | 07:56 |
| → k_sze joined | 07:57 |
| → veegee joined | 07:57 |
| → morfin joined | 07:57 |
|
morfin
| hello | 07:57 |
| ← dtux left | 07:57 |
|
morfin
| is there a way to wipe out some commits from the middle of history? | 07:58 |
|
_ikke_
| morfin: depends | 07:58 |
|
| technically possible: yes | 07:58 |
|
| feasible: depends | 07:58 |
|
BrainWork
| sounds dangerous to the commits that come after | 07:58 |
| → SteffanW joined | 07:58 |
|
_ikke_
| morfin: an iteractive rebase can do it | 07:58 |
| ← Noti left | 07:58 |
| → masuberu joined | 07:59 |
|
morfin
| well, i want somehow to do that to remove some commits from remote repo(yes i'll have to push -f and screw up remote history) | 07:59 |
| → pie_ joined | 08:00 |
|
masuberu
| hi, I am a little bit confused with git and I would like to ask what I'm missing... Basically I have 2 branches b1 and b2, I do git merge b2 from b1 | 08:00 |
|
| and then I run git diff b1 b2 | 08:00 |
|
| this shows me changes on both branches | 08:00 |
|
| it should only give me changes on one of them right? | 08:00 |
|
_ikke_
| masuberu: no, git diff diffs exactly 2 commits, what happend between them does not matter | 08:01 |
|
| masuberu: there is git diff b1...b2 (note the three dots) which does what you want | 08:01 |
| → nirmalhk7 joined | 08:04 |
| ← nirmalhk7 left | 08:04 |
| → netz_ joined | 08:05 |
| → apoos_maximus joined | 08:05 |
| ← netz_ left | 08:06 |
| ← netz left | 08:07 |
|
masuberu
| _ikke_ ok using `...` now does not show any input which is what I expected... but, what is the difference with not using the `...`? you mentioned git diff compares 2 commits but the last commit of one of the branches already have the changes of the other one? | 08:08 |
| → netz joined | 08:09 |
|
osse
| masuberu: git diff b1...b2 does a diff of their merge-base and b2 | 08:09 |
| ← veegee left | 08:10 |
| ← sydbarret left | 08:15 |
|
masuberu
| osse, so are you saying that git merge and git merge-base are the same? | 08:15 |
| → veegee joined | 08:16 |
| → SerialSmile joined | 08:16 |
| ← causasui left | 08:18 |
|
osse
| that's comments-section-of-political-news-article levels of assumption :O | 08:18 |
|
| git merge-base just find the common ancestor of two branches | 08:18 |
|
| git diff b1...b2 = git diff $(git merge-base b1 b2) b2 | 08:18 |
| ← masuberu left | 08:20 |
|
osse
| Oops | 08:21 |
|
| I might have gone over the top there | 08:21 |
| → BeerLove_ joined | 08:21 |
| ← BeerLover left | 08:23 |
| → gloomy joined | 08:25 |
| → masuberu joined | 08:26 |
|
masuberu
| osse, sorry, I still don't understand. So lets say I have master and then I create a branch feature1 and I with time feature1 has several commits. Then I make 3 more commits in master and I do git merge master from feature1 branch. From my understanding is that all changes in master are included in feature1. correct? | 08:29 |
|
osse
| masuberu: correct | 08:29 |
|
_ikke_
| but not all changes from feature1 are included in master | 08:29 |
|
masuberu
| correct | 08:30 |
|
_ikke_
| so if you do a git diff, you'll see the changes that are in feature1, but not in master | 08:30 |
|
masuberu
| but I expect when I do diff master feature1 to show only the codes of line that exists only in feature1 | 08:30 |
|
_ikke_
| Yes, but that's not how git diff works | 08:31 |
|
| just plain git diff A B does not care about branche | 08:31 |
|
| It just looks at the differences between commit A and commit B | 08:31 |
| → kleisli joined | 08:32 |
|
osse
| but you should see something close to that, though | 08:32 |
|
_ikke_
| right | 08:33 |
|
masuberu
| what is the definition of a commit? I thought it was like a snapshot of code after being persisted | 08:34 |
|
_ikke_
| 9yes | 08:34 |
| → fphilipe_ joined | 08:35 |
| ← masuberu left | 08:36 |
| → planetcall|work joined | 08:37 |
| → shady_traveller joined | 08:38 |
| → oxymoron93 joined | 08:41 |
| ← senaps left | 08:42 |
| → mobidrop joined | 08:45 |
| → beastDiv_ joined | 08:46 |
| ← BeerLove_ left | 08:51 |
| → sidetrack joined | 08:52 |
|
BrainWork
| hmm | 08:52 |
|
| i tried to make a pre-commit hook, but it seems i cant modify a file within the pre-commit hook | 08:53 |
|
| as its again considered modified and needs to be git add'ed again | 08:53 |
|
osse
| u r rong | 08:53 |
|
| yes, you have to add it again | 08:53 |
|
BrainWork
| but that defeats the point | 08:53 |
|
| i want to change the actual file in the git commit and have that treated as part of the change | 08:53 |
|
| e.g. ive made change A, im adding change B to that change (incrementing a version id) and then want to commit the lot under the "banner" of the commit | 08:54 |
|
osse
| and that's exactly what you accomplish if you git add in the hook | 08:54 |
|
| I mean, you can run git add from within the hook | 08:54 |
|
BrainWork
| hmm | 08:55 |
|
| it doesnt work if i do that | 08:55 |
|
| because then once the commit is complete, the files are 'add'ed again | 08:55 |
|
| which means i'd need to commit the change | 08:55 |
|
| which means it would change the files again | 08:56 |
|
| etc etc | 08:56 |
|
| basically the change i make becomes part of the /next/ commit | 08:56 |
|
osse
| I don't really know what to say. From my testing it works | 08:56 |
|
BrainWork
| https://superuser.com/questions/768826/how-to-commit-files-modified-by-pre-commit-hook-in-git | 08:57 |
| ← sidetrack left | 08:57 |
|
BrainWork
| this is the problem | 08:57 |
|
osse
| I have a pre-commit that does "echo lol >> file; git add file" and everything I make other changes it's updated and committed | 08:57 |
| ← ferdna left | 08:58 |
| ← jimender2 left | 08:59 |
|
BrainWork
| yes but then after the commit, does it show 'file' as modified, and added, in green ready for another commit? | 08:59 |
|
| rather than 'repository clean' | 08:59 |
|
osse
| no, it's clean | 08:59 |
|
BrainWork
| i basically have to commit twice | 08:59 |
|
| this doesnt work if you're also modifying 'file' as part of the workflow | 09:00 |
|
osse
| and when I do "git show" it'll show the changes the hook made as well | 09:00 |
|
BrainWork
| because you have a commit for your changes to 'file' and a commit for the pre-commits changes to 'file' | 09:00 |
|
osse
| what do you mean | 09:01 |
| → stkirk joined | 09:01 |
|
BrainWork
| https://ideone.com/i0rE9B | 09:01 |
|
| this | 09:01 |
| → mobidrop_ joined | 09:01 |
|
BrainWork
| so i make changes in an editor to the four cpp files and add them, then i commit my changes, like 1 thru 15 | 09:02 |
|
| i then do git status after git commit and it shows the files i just committed are now modified again, waiting for another commit (line 20) - this is because the pre-commit changed them and "git add"ed them | 09:02 |
|
| i commit *a second time* (line 29) | 09:02 |
| → figuinhas joined | 09:02 |
|
BrainWork
| this then pushes the changes to the repo that git-commit made | 09:03 |
|
| s/git-commit/pre-commit | 09:03 |
|
| then i do a git status, its clean | 09:03 |
|
| i do a git log, and i have two commits | 09:03 |
|
osse
| what does the pre-commit hook look like? | 09:03 |
| → lmariscal0 joined | 09:03 |
| → |Fitz|9 joined | 09:03 |
| → rfuentess joined | 09:03 |
| → lem-fr5 joined | 09:03 |
| → BtbN_ joined | 09:03 |
| → shored1 joined | 09:03 |
| → Case_Of_ joined | 09:03 |
| → LiENUX joined | 09:03 |
| → Qiz joined | 09:03 |
| → cyberpear_ joined | 09:03 |
| → tcsc_ joined | 09:03 |
| → Milos_ joined | 09:03 |
| → Nizumzen_ joined | 09:03 |
| → rknLA_ joined | 09:03 |
| → cebor_ joined | 09:03 |
| → LasseVK_ joined | 09:03 |
| → jleclanche_ joined | 09:03 |
| → heinrich5991_ joined | 09:03 |
| → lebster_ joined | 09:03 |
| → quesker_ joined | 09:03 |
| → Arguggi_ joined | 09:03 |
| → junderw_ joined | 09:03 |
| → holdsworth_ joined | 09:03 |
| → cluelessperson_ joined | 09:03 |
| → IAmNetx_ joined | 09:03 |
|
BrainWork
| https://ideone.com/BpmG5Y | 09:03 |
| → afisher_ joined | 09:03 |
|
BrainWork
| like that osse | 09:03 |
| → fury__ joined | 09:03 |
| → ssd532 joined | 09:04 |
| → yena_ joined | 09:04 |
| → \u joined | 09:04 |
| → ryjen joined | 09:04 |
| → chachasmooth_ joined | 09:04 |
| → prit_ joined | 09:04 |
|
BrainWork
| yeah its php, i found it quicker to prototype than remembering how perl worked | 09:04 |
| → moviuro_ joined | 09:04 |
| → JackMc_ joined | 09:04 |
|
BrainWork
| and ugh i hate netsplits | 09:04 |
| → dustinm- joined | 09:04 |
| → __salt joined | 09:04 |
|
osse
| BrainWork: do you have a shell wrapper around that? because the hook needs to be named "pre-commit" literally | 09:04 |
| → dansan_ joined | 09:04 |
|
BrainWork
| tbh it looks like im going to have to have a seperate modules/file.cpp.ver.h or such | 09:04 |
| → brethil_ joined | 09:04 |
|
BrainWork
| yes i do | 09:04 |
| → tjbp_ joined | 09:05 |
| → Decobus_ joined | 09:05 |
| → heftig_ joined | 09:05 |
|
BrainWork
| https://ideone.com/9pDeMY | 09:05 |
| → sentriz6 joined | 09:05 |
| → devster joined | 09:05 |
| → ztrawhcse joined | 09:05 |
| → PocketKiller joined | 09:05 |
| ← sauvin left | 09:05 |
| → bket_ joined | 09:05 |
| ← Whiskey left | 09:06 |
| → n3wborn_ joined | 09:06 |
|
BrainWork
| i based it off the example | 09:06 |
| → Seveas_ joined | 09:06 |
| → jtmusky_ joined | 09:06 |
| → Peng__ joined | 09:06 |
| → sgn_ joined | 09:06 |
|
osse
| on line 40 you got a clean repo | 09:06 |
|
BrainWork
| yes but only after two commits | 09:07 |
| → unCork joined | 09:07 |
|
BrainWork
| i never get a clean repo after just one commit, which is what i really want | 09:07 |
| → apetresc_ joined | 09:07 |
| → arooni_team_b joined | 09:07 |
|
osse
| shouldn't you *always* get have uncommitted changes if this works like you think? | 09:07 |
| → veegee_ joined | 09:07 |
|
BrainWork
| basically, the commit i made to change the .cpp files by hand | 09:07 |
| → fructose0 joined | 09:07 |
|
BrainWork
| no, i want those changes to the file to be transparent | 09:07 |
|
osse
| Yes I get that | 09:07 |
| → BeerLover joined | 09:07 |
|
osse
| But if you're right that this doesn't work like it should, why do you get a clean repo after two commits? | 09:08 |
|
| Shouldn't you NEVER have a clean repo then? | 09:08 |
|
BrainWork
| hmm. thats a good question | 09:08 |
|
| and i would expect to never have a clean repo | 09:09 |
| → Whiskey joined | 09:09 |
|
BrainWork
| so why were there two commits? | 09:09 |
| → cyberanger_ joined | 09:09 |
| → segnior_ joined | 09:09 |
| → varesa_ joined | 09:09 |
| → Defcronyke` joined | 09:09 |
|
osse
| ỳou made two commits :p | 09:09 |
| → markzen_ joined | 09:09 |
| → mu_ joined | 09:09 |
| → crose joined | 09:09 |
|
BrainWork
| hmm | 09:10 |
|
| it seems to work now | 09:10 |
|
osse
| ok, siomple test, with this hook in place: Make a small change somewhere else. add and commit. run git show | 09:10 |
| → steven- joined | 09:10 |
|
osse
| yaaay | 09:10 |
|
BrainWork
| every time i tested it before, there were two commits for every change i made | 09:10 |
|
| im at a loss why its suddenly working but lets not poke the bear lol | 09:10 |
|
| thanks osse :) | 09:10 |
| ← Whiskey left | 09:10 |
| → Kronuz_ joined | 09:10 |
| → polyrob_ joined | 09:10 |
|
osse
| PROBLEM!!! | 09:10 |
| → c0san0stra_ joined | 09:10 |
| ← mobidrop left | 09:10 |
| ← veegee left | 09:10 |
| ← n3wborn left | 09:10 |
| ← daurnimator left | 09:10 |
| ← qpdb left | 09:10 |
| ← Helenah left | 09:10 |
| ← IAmNetx left | 09:10 |
| ← Decobus left | 09:10 |
| ← roadie left | 09:10 |
| ← rfuentess__ left | 09:10 |
| ← steven left | 09:10 |
| ← grumble left | 09:10 |
| ← markzen left | 09:10 |
| ← Arguggi left | 09:10 |
| ← chachasmooth left | 09:10 |
| ← devster31 left | 09:10 |
| ← zerogue left | 09:10 |
| ← a--m left | 09:10 |
| ← CalimeroTeknik left | 09:10 |
| ← elibrokeit left | 09:10 |
| ← Kaisyu7 left | 09:10 |
| ← bremner left | 09:10 |
| ← StuartMI left | 09:10 |
| ← heftig left | 09:10 |
| ← mdk left | 09:10 |
| ← doug16k left | 09:10 |
| ← heinrich5991 left | 09:10 |
| ← BtbN left | 09:10 |
| ← shored left | 09:10 |
| ← Thorn left | 09:10 |
| ← _salt left | 09:10 |
| ← eblip left | 09:10 |
| ← apetresc left | 09:10 |
| ← sgn left | 09:10 |
| ← bket left | 09:10 |
| ← Milos left | 09:10 |
| ← polyrob left | 09:10 |
| ← ZachGibbens left | 09:10 |
| ← Nizumzen left | 09:10 |
| ← kashike left | 09:10 |
| ← Mindi left | 09:10 |
| ← cluelessperson left | 09:10 |
| ← lucasseikioshiro left | 09:10 |
| ← swalladge left | 09:10 |
| ← jleclanche left | 09:10 |
| ← jrun left | 09:10 |
| ← SJr left | 09:10 |
| ← sparr left | 09:10 |
| ← moviuro left | 09:10 |
| ← yena left | 09:10 |
| ← junderw left | 09:10 |
| ← rknLA left | 09:10 |
| ← Bilge left | 09:10 |
| ← xkr47 left | 09:10 |
| ← avu left | 09:10 |
| ← arooni left | 09:10 |
| ← segnior left | 09:10 |
| ← lem-fr left | 09:10 |
| ← jelmer left | 09:10 |
| ← PacKetSlayer left | 09:10 |
| ← de-vri-es left | 09:10 |
| ← jtmusky left | 09:10 |
| ← inscrutable left | 09:10 |
| ← lebster left | 09:10 |
| ← Peng left | 09:10 |
| ← ssd532_ left | 09:10 |
| ← batrick left | 09:10 |
| ← cebor left | 09:10 |
| ← prit left | 09:10 |
| ← fructose left | 09:10 |
| ← _flow_ left | 09:10 |
| ← sostenuto left | 09:10 |
| ← gitinfo left | 09:10 |
| ← synx left | 09:10 |
| ← rcn left | 09:10 |
| ← GGMethos left | 09:10 |
| ← raatiniemi left | 09:10 |
| ← Cork left | 09:10 |
| ← c0san0stra left | 09:10 |
| ← goldleader left | 09:10 |
| ← quesker left | 09:10 |
| ← Case_Of left | 09:10 |
| ← no_maam left | 09:10 |
| ← Kartagis left | 09:10 |
| ← alip left | 09:10 |
| ← holdsworth left | 09:10 |
| ← meowray left | 09:10 |
| ← LiENUS left | 09:10 |
| ← sentriz left | 09:10 |
| ← |Fitz| left | 09:10 |
| ← Seveas left | 09:10 |
| ← Qizzy left | 09:10 |
| ← dustinm left | 09:10 |
| ← Defcronyke left | 09:10 |
| ← lmariscal left | 09:10 |
| ← level3 left | 09:10 |
| ← slax0r left | 09:10 |
| ← tjbp left | 09:10 |
| ← brethil left | 09:10 |
| ← varesa left | 09:10 |
| ← dexterfoo left | 09:10 |
| ← sjohnson left | 09:10 |
| ← robinsmidsrod left | 09:10 |
| ← afisher left | 09:10 |
| ← DistantStar_ left | 09:10 |
| ← bittyx left | 09:10 |
| ← SpeakerToMeat left | 09:10 |
| ← mu left | 09:10 |
| ← andi_ left | 09:10 |
| ← eldritch left | 09:10 |
| ← Cathy left | 09:10 |
| ← DevAntoine left | 09:10 |
| ← ZeZu left | 09:10 |
| ← jan6 left | 09:10 |
| ← ross` left | 09:10 |
| ← nemesit|znc left | 09:10 |
| ← cjohnson left | 09:10 |
| ← cyberpear left | 09:10 |
| ← fuchstronaut left | 09:10 |
| ← tcsc left | 09:10 |
| ← Kobaz left | 09:10 |
| ← fury_ left | 09:10 |
| ← Kronuz left | 09:10 |
| ← sitaram left | 09:10 |
| ← JackMc left | 09:10 |
| ← LasseVK left | 09:10 |
| BtbN_ → BtbN | 09:10 |
| heinrich5991_ → heinrich5991 | 09:10 |
| |Fitz|9 → |Fitz| | 09:10 |
| unCork → Cork | 09:10 |
|
osse
| Do you use git add -p sometimes? | 09:10 |
| ryjen → zerogue | 09:10 |
| IAmNetx_ → IAmNetx | 09:10 |
| apetresc_ → apetresc | 09:10 |
| rknLA_ → rknLA | 09:10 |
| junderw_ → junderw | 09:10 |
| Case_Of_ → Case_Of | 09:10 |
| Kronuz_ → Kronuz | 09:10 |
| Defcronyke` → Defcronyke | 09:10 |
| yena_ → yena | 09:10 |
| prit_ → prit | 09:10 |
| → cjohnson_ joined | 09:10 |
| LasseVK_ → LasseVK | 09:10 |
| tcsc_ → tcsc | 09:10 |
| → a--m joined | 09:11 |
| jleclanche_ → jleclanche | 09:11 |
| cyberpear_ → cyberpear | 09:11 |
| lem-fr5 → lem-fr | 09:11 |
| ← rkta left | 09:11 |
|
BrainWork
| aaaaaaaaaaaaaaaaah | 09:11 |
| polyrob_ → polyrob | 09:11 |
| JackMc_ → JackMc | 09:11 |
|
BrainWork
| i dont miss this shit about irc at all | 09:11 |
| → Cathy joined | 09:11 |
| afisher_ → afisher | 09:11 |
| → rkta_ joined | 09:11 |
| → grumble joined | 09:11 |
| lebster_ → lebster | 09:11 |
| rkta_ → rkta | 09:11 |
|
BrainWork
| hmm, not sure what -p does off the top of my head so the answer to that would be a big fat no | 09:11 |
|
osse
| Because if you add partial changes to one of the files the hook modifies the hook will add the whole thing | 09:11 |
| → eirc joined | 09:11 |
| Nizumzen_ → Nizumzen | 09:11 |
| steven- → steven | 09:11 |
|
BrainWork
| hmm, wasnt aware thats even a thing | 09:11 |
|
osse
| In that case there is no problem. | 09:11 |
| → Whiskey joined | 09:11 |
| Peng__ → Peng | 09:11 |
| c0san0stra_ → c0san0stra | 09:11 |
|
osse
| what don't you miss about irc? | 09:11 |
|
BrainWork
| netsplits | 09:11 |
| → bittyx joined | 09:12 |
|
BrainWork
| :( | 09:12 |
|
| big hairy netsplits | 09:12 |
| ← mniip left | 09:12 |
| → jan61 joined | 09:12 |
| → SJr joined | 09:12 |
|
osse
| oh | 09:12 |
| → eldritch joined | 09:12 |
|
BrainWork
| thing i dont get is, its a solved problem now in 2019. there are tons of decentralised systems that could do a netsplit-proof irc | 09:12 |
|
| i guess nobody has the desire to any more, as irc is slowly dwinding and only us technical types seem to be left | 09:13 |
|
| dwindling* | 09:13 |
| → lucasseikioshiro joined | 09:13 |
|
BrainWork
| anyway that's a little OT | 09:13 |
|
| hmm | 09:14 |
|
| how to i ensure this pre-commit hook is added to all copies of the repo? | 09:14 |
|
| e.g. fetched when someone clones or pulls | 09:14 |
|
pandem1
| you can't | 09:14 |
|
BrainWork
| i can't put it server-side? | 09:14 |
|
| that would be a fix if i can | 09:15 |
|
| but then the server side cant git-add | 09:15 |
|
| hmm | 09:15 |
|
osse
| You can put it server-side as part of the repo, and then have users install it (via a symlink for example) | 09:15 |
| mobidrop_ → mobidrop | 09:15 |
|
pandem1
| i don't think github for example allows hooks so depends on where your server-side is | 09:15 |
|
tabakhase
| fairly common to have ".git-hooks" and have the user link that into .git/hooks or such ye | 09:16 |
| → rcn joined | 09:16 |
| → mniip joined | 09:16 |
|
tabakhase
| (as without that "git clone" would be a RCE ;D) | 09:17 |
| → avu joined | 09:17 |
| → sostenuto joined | 09:17 |
| → SpeakerToMeat joined | 09:17 |
| → de-vri-es joined | 09:17 |
| → inscrutable joined | 09:17 |
| → kashike joined | 09:17 |
| → daurnimator joined | 09:17 |
| → qpdb joined | 09:17 |
| → no_maam joined | 09:17 |
| → doug16k joined | 09:17 |
| → markmarkmark joined | 09:18 |
| → level3 joined | 09:18 |
| → andi_ joined | 09:18 |
| ← pie_ left | 09:18 |
| → Helenah joined | 09:18 |
| → swalladge joined | 09:18 |
| → jrun joined | 09:18 |
| → mdk joined | 09:18 |
| → sjohnson joined | 09:19 |
| → batrick joined | 09:19 |
| → _flow_ joined | 09:19 |
| → eblip joined | 09:19 |
| → gitinfo joined | 09:19 |
| ChanServ set mode: +o | 09:19 |
|
BrainWork
| i made a directory called hooks with the scripts in off the root of the source tree and a ./install.sh file that can be ran to cp them into the hooks dir | 09:20 |
|
| i'll put a README.md in it | 09:20 |
|
| that should suffice :) | 09:20 |
|
| worst case scenario if its not installed the version numbers of modules dont auto increment, its not really the end of the world in the short term | 09:21 |
| ← Whiskey left | 09:21 |
|
osse
| now with all that work done I still think doing it in cmake would be the best approach :P (sorry) | 09:21 |
| → Thorn joined | 09:22 |
| ← figuinhas left | 09:22 |
| → Whiskey joined | 09:22 |
| → feriman joined | 09:22 |
|
BrainWork
| osse, perhaps, ive looked into it, each module would need a separate template file e.g. modname_version.h.in | 09:22 |
|
| which is copied to modname_version.h and incremented | 09:23 |
|
osse
| sort of, yes. | 09:23 |
|
BrainWork
| perhaps more suitable for a project's version number rather than a modules version number? | 09:23 |
|
osse
| not sure there's a meaningful difference between those two things | 09:23 |
|
BrainWork
| a project has one version number, many modules each have their own version number | 09:24 |
|
| means lots of version header templates :) | 09:24 |
|
osse
| I suppose you could put all into one header | 09:24 |
|
| the copying is done by cmake itself via configure_file(). you just need to set a variable to the correct value | 09:28 |
| → KeyJoo joined | 09:30 |
| → bytefire joined | 09:31 |
|
osse
| n owait | 09:31 |
|
| that means doing at build time. | 09:32 |
|
| which makes sense to me, but you can't simply increment a number. You must figure out what the number should be | 09:32 |
|
BrainWork
| yeah | 09:33 |
|
| thats useful for releases, when you know youre releasing "version 1.3" | 09:33 |
|
bytefire
| hi, i have a repo with following structure: repo-root/{a.txt, b.txt, sub-dir/{a.txt, b.txt}}. i want to remove everything under repo-root/ dir and copy contents of sub-dir/* to repo-root so repo-root has a.txt and b.txt which are currently under sub-dir/ | 09:33 |
|
| how can i do this so as to achieve best git history? | 09:34 |
|
| i.e. if after this change, someone does `git log a.txt` they get history of sub-dir/a.txt | 09:35 |
|
| is it even possible? | 09:35 |
|
BrainWork
| https://i.snipboard.io/JNrQSt.jpg <-- got the version numbers working great :) | 09:36 |
|
| i dont have to worry about their values any more, just commit and forget | 09:36 |
| → TomyLobo joined | 09:37 |
|
osse
| goddammit, thesaurus.com doesn't have any alternatives for "commit" that starts with F | 09:37 |
|
| can I get an F in the chat bois | 09:37 |
| → roadie joined | 09:38 |
|
osse
| bytefire: git log --follow a.txt | 09:38 |
|
| bytefire: alternatively you can use filter-branch to produce a new repo that looks like sub-dir was the root dir all along, but that's a detructive operation | 09:39 |
|
cdunklau
| osse: "finalize"? | 09:39 |
|
osse
| finalize and forget | 09:39 |
|
| I can dig it | 09:39 |
|
BrainWork
| why f? | 09:39 |
|
cdunklau
| osse: fertigstellen :D | 09:40 |
|
BrainWork
| as in fire-and-forget? | 09:40 |
|
cdunklau
| although that's a separable verb, irritatingly | 09:40 |
|
BrainWork
| fabricate | 09:40 |
| → CalimeroTeknik joined | 09:41 |
| ← SerialSmile left | 09:41 |
|
cdunklau
| osse: foist | 09:41 |
|
BrainWork
| could just change the last word and have 'commit-and-care-less' | 09:41 |
|
cdunklau
| i like that the best | 09:41 |
|
| foment? | 09:41 |
|
osse
| FERTIGSTELLEN UND VERGESSEN!!! | 09:41 |
|
BrainWork
| ferment :D | 09:41 |
|
cdunklau
| forcefeed | 09:41 |
|
| cmon there are TONS | 09:41 |
|
osse
| oh, here's an older meme (that checks out): !!!!!1enz | 09:41 |
|
| I mean einz | 09:41 |
|
cdunklau
| fortend | 09:41 |
|
| freeze is ...kinda close? i guess? | 09:42 |
|
| furnish | 09:42 |
|
| ok i'll stop | 09:42 |
|
| osse: "eins", or is the misspelling part of the meme? | 09:43 |
|
| there's another version too !!!1eleventy | 09:43 |
|
osse
| cdunklau: Maybe. I thoguht it was spelled einz | 09:43 |
|
cdunklau
| it _sounds_ like einz | 09:43 |
|
| depending on where you are | 09:44 |
|
osse
| yeah but it has to be german, I think. systemd and whatnot. PID EINS | 09:44 |
| → pie_ joined | 09:44 |
|
cdunklau
| i think we're gehen a bisschen too weit | 09:44 |
| ← spacefrog left | 09:44 |
|
bytefire
| osse: thanks. this change is destrucive anyway because i'll be deleting whatever is in root. but --follow will be good | 09:45 |
|
osse
| bytefire: I meant destructive in the "rewriting history" sense | 09:45 |
|
| aka. in the "everybody essentially has to reclone" sense | 09:45 |
|
bytefire
| ah i see. got it | 09:47 |
| ← mikami left | 09:49 |
| → Phylock joined | 09:49 |
| → mikami joined | 09:50 |
| → sidetrack joined | 09:51 |
| ← inscrutable left | 09:52 |
| ← sidetrack left | 09:55 |
| ← crose left | 09:55 |
| → crose joined | 09:56 |
|
bytefire
| osse: does it make any difference to git history if i delete contents of repo-root/ first, make a commit, then add files from sub-dir/ and make a second commit? or is this the same as doing both in same commit? | 09:57 |
|
osse
| bytefire: git doesn't care | 09:58 |
|
bytefire
| thank you | 09:59 |
|
| osse: i'll pray that your cattle grows and that you have many sons | 09:59 |
| → rfuentess__ joined | 10:03 |
|
Love4Boobies
| It took me 2 minutes to realize why termdebug wasn't working in Vim. I forgot to install gdb. | 10:03 |
|
| Love4Boobies feels retarded. | 10:04 |
| → multiproc joined | 10:05 |
| → Novae joined | 10:05 |
| ← rfuentess left | 10:07 |
| varesa_ → varesa | 10:19 |
| → sidetrack joined | 10:21 |
| → LearnAllTheTime joined | 10:22 |
| ← Garen left | 10:24 |
| → sauvin joined | 10:24 |
| ← sidetrack left | 10:25 |
| → Garen joined | 10:26 |
| ← BeerLover left | 10:38 |
| → BeerLove_ joined | 10:39 |
| ← stux|RC left | 10:39 |
| → gxt joined | 10:42 |
| ← Parse left | 10:49 |
| ← roadie left | 10:53 |
| → GreyArea joined | 10:56 |
|
GreyArea
| Hi there, I've got myself all confuzzled with git and wonder if anyone can help unconfuzzle me. https://paste.centos.org/view/3568ff89 | 10:58 |
|
| In the above paste I've got two origin/master's and not sure why | 10:58 |
|
osse
| GreyArea: run git for-each-ref | grep master | 10:59 |
|
| GreyArea: my guess: you have origin/master as usual, as well as a local branch whose name is actually "origin/master" | 10:59 |
| ← Anthaas left | 10:59 |
|
osse
| aka. le confuse xdddd | 10:59 |
|
Stummi
| (lately I found a repo which has a branch called "HEAD") | 11:00 |
| → Anthaas joined | 11:00 |
|
cdunklau
| Stummi: oh god | 11:01 |
| → stux|RC joined | 11:01 |
| → enoq joined | 11:01 |
|
GreyArea
| osse: https://paste.centos.org/view/c15a4662 | 11:01 |
|
Stummi
| I am wondering if this can happen with simple mistyping a command? You would have to tell git to *not* translate HEAD into anything, wouldn't you? | 11:01 |
|
cdunklau
| Stummi: how'd you do that | 11:01 |
|
GreyArea
| osse: Right, yeah probably I made a typo somewhere :| | 11:01 |
|
cdunklau
| Stummi: i mean, git checkout -b HEAD | 11:01 |
|
| fatal: 'HEAD' is not a valid branch name. | 11:01 |
|
Stummi
| cdunklau, thats what I am wondering | 11:01 |
|
osse
| GreyArea: git branch -d origin/master | 11:02 |
|
| shouldn't be a problem | 11:02 |
|
cdunklau
| Stummi: where do you see this branch | 11:02 |
|
Stummi
| cdunklau, its a private repo on github | 11:02 |
|
cdunklau
| Stummi: no i mean how did you find out it has a branch named HEAD | 11:02 |
|
Stummi
| its listed by the github UI in the branches | 11:03 |
|
cdunklau
| lol | 11:03 |
|
GreyArea
| osse: Ah, that looks cleaner now - thanks man :) | 11:03 |
|
osse
| git update-ref refs/heads/HEAD abc1234whatever | 11:03 |
|
Stummi
| cdunklau, okay, just tried it. git push -u origin master:HEAD does this: https://github.com/Stummi/sandbox/tree/HEAD | 11:04 |
|
GreyArea
| so I'm at "28c5db7 (HEAD -> master, origin/master) Updating READMD.md | 11:05 |
|
| but git update-ref refs/heads/HEAD 28c5db7 gives me not a valid sha1 error - is that what you meant by abcwhatever? | 11:05 |
|
| but it looks OK, to me at least. | 11:06 |
|
cdunklau
| Stummi: huh | 11:07 |
|
osse
| GreyArea: my command was just to show a way to create a branch named HEAD. Don't actually do it :P | 11:08 |
|
| As for the error, for update-ref you have to give it the full 40 character sha1 | 11:09 |
|
cdunklau
| Stummi: that... looks like the bug | 11:09 |
|
osse
| update-ref ain't having any of your abbreviated shit | 11:09 |
|
cdunklau
| *a bug | 11:09 |
|
Moongoodgirl
| does update-ref validate the hash that you give it? | 11:12 |
| ← is_null left | 11:13 |
|
grawity
| update-ref accepts unambiguous abbrevs just fine | 11:13 |
| ← g00s left | 11:14 |
| → is_null joined | 11:14 |
|
osse
| you are right | 11:16 |
|
| Moongoodgirl: seems to, yes. | 11:17 |
| ← bvdw left | 11:18 |
| → bvdw joined | 11:19 |
| ← TomyLobo left | 11:32 |
| ← zulutango left | 11:32 |
| heftig_ → heftig | 11:37 |
| → kreyren joined | 11:40 |
| → rardiol joined | 11:42 |
|
GreyArea
| osse: Right, got it and done, thanks again | 11:44 |
| → lain98 joined | 11:47 |
| → monr0e joined | 11:47 |
| ← enoq left | 11:48 |
| → cousteau joined | 12:02 |
| ← cousteau left | 12:04 |
|
lavalike
| is it possible to go back a couple commits and change 1 thing, without screwing up times and dates for historic purposes? (used add -p wrong and ended up with a repetition I just noticed) | 12:06 |
| → dviola joined | 12:07 |
|
Stummi
| lavalike, easiest to do this is with interactive rebase | 12:07 |
| → bsanford joined | 12:07 |
|
lavalike
| I know you can do an interactive rebase to remove/squash/reorder commits, didn't know it supported editing them? | 12:08 |
|
Stummi
| lavalike, make your small fix as a normal commit, then type git rebase "<ref>" to your old commit, place your latest commit right after this and mark it with "f" | 12:08 |
|
lavalike
| oh that's genius! | 12:08 |
|
| you add the modification, and slide it in place, wow (: | 12:08 |
| → T_UNIX joined | 12:08 |
|
osse
| there is even a flag for commit to make it easier | 12:09 |
| ← beastDiv_ left | 12:09 |
|
osse
| git commit --fixup <commit that needs fixing> | 12:09 |
|
| then git rebase --autosquash | 12:09 |
|
lavalike
| that only works right at the tip of a branch or did I misunderstand you | 12:10 |
|
davve
| osse: that's an awesome command | 12:10 |
|
lavalike
| hm I think I see you give it hash of the one you would slide on top with rebase -i | 12:10 |
|
osse
| davve: correct! | 12:10 |
|
| lavalike: oui | 12:10 |
|
lavalike
| so it basically says: this technique is so awesome I'll make a command out of it | 12:11 |
|
| I approve | 12:11 |
| ← mikami left | 12:12 |
|
Stummi
| cdunklau, sorry for the delay. Do you think its a bug in git or github? | 12:13 |
| ← gloomy left | 12:14 |
|
_ikke_
| Inconceivable! :P | 12:14 |
|
cdunklau
| Stummi: i would expect git to reject that | 12:14 |
|
| but i'm probably naive :) | 12:14 |
|
Stummi
| cdunklau, well, git *does* some measures to avoid a branch named "HEAD" created but fails to do so in other situations. So its at least inconsistent | 12:15 |
| ← feriman left | 12:15 |
|
cdunklau
| Stummi: right. i suspect the fiddly bit is in how <dst> is handled by git push | 12:16 |
|
Stummi
| technically, theres probably nothing wrong with a "HEAD" branch. It probably just "confuses" some git commands :) | 12:16 |
| → gloomy joined | 12:16 |
|
cdunklau
| Stummi: looks like `git branch HEAD` does `git check-ref-format --branch HEAD`, which fails | 12:18 |
|
| but `git push` doesn't... and it doesn't look like it's just github that accepts that, i just testing pushing to a bare repo locally and it worked... the bare repo has refs/heads/HEAD now | 12:23 |
| → coco joined | 12:24 |
| → androi joined | 12:25 |
|
androi
| hi, I would like to pull a request but the button isn't showing instead it's displaying this message: "Able to merge. These branches can be automatically merged."what do i have to do? | 12:25 |
| → Raging_Hog joined | 12:26 |
|
cdunklau
| androi: probably ask somewhere related to github :) | 12:26 |
|
| !github | 12:26 |
|
gitinfo
| GitHub is a !3rdparty commercial service offering freemium !hosting services for repositories & projects. https://github.com/features | 12:26 |
|
cdunklau
| hm | 12:26 |
|
| ¯\_(ツ)_/¯ | 12:26 |
|
| i'm sure there's a factoid for that | 12:26 |
|
androi
| yeah but they are all sleeping or just ignoring me ^^ | 12:27 |
| → royal_screwup21 joined | 12:29 |
|
nedbat
| androi: what do you mean, "pull a request"? Do you mean merge a pull request? | 12:30 |
|
androi
| i m not sure either.. it's a fork repository and when i've done my changes i have to press a button "pull request" | 12:32 |
| → roadie joined | 12:33 |
|
_ikke_
| androi: are you the one making the pull request, or the one needing to merge it? | 12:33 |
| ← igemnace left | 12:33 |
|
nedbat
| androi: i guess it isn't clear what you are looking at exactly. GitHub has really good help about the way to do things: https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests | 12:33 |
| ← gxt left | 12:34 |
|
androi
| I am the one who is initiating a pull request if that was the question | 12:34 |
| → oatmealraisin joined | 12:35 |
|
_ikke_
| androi: then you most likely don't have permission to merge it | 12:35 |
|
androi
| but the button is missing, so i'm not able to do it.. did the owner maybe not merge my last pull request? | 12:35 |
| → gxt joined | 12:36 |
| → TheFuzzball joined | 12:36 |
|
androi
| ok thx | 12:36 |
|
nedbat
| androi: that wouldn't matter. | 12:36 |
|
androi
| how do i get the current version of the fork repository? pull/ fetch origin master? | 12:37 |
| ← crose left | 12:37 |
| → crose joined | 12:38 |
| cyberanger_ → cyberanger | 12:39 |
| cyberanger → ZachGibbens | 12:39 |
| ← gxt left | 12:42 |
| ← roadie left | 12:43 |
| ← androi left | 12:44 |
| ztrawhcse → elibrokeit | 12:48 |
| ← planetcall|work left | 12:49 |
| → planetcall|work joined | 12:49 |
| → settermjd joined | 13:01 |
| → Sonicbit joined | 13:02 |
|
settermjd
| hey folks, I’ve created a patch file using git diff branch1…branch2 — <path/to/file> > file.patch but am unable to apply it using git apply, as it fails with „patch does not apply“. Just wondering if there is something special about the git diff command wrt patch files. | 13:03 |
| → dionysus70 joined | 13:03 |
|
_ikke_
| settermjd: try git apply -3 | 13:03 |
|
settermjd
| Thanks. | 13:03 |
| ← Sonicbit left | 13:03 |
|
_ikke_
| settermjd: git apply by default assumes it will apply cleanly | 13:03 |
|
settermjd
| Ah, gotcha. Thanks _ikke_. | 13:04 |
| → enoq joined | 13:04 |
|
settermjd
| There were conflicts, but it seems to have done most of the work now. :-) | 13:05 |
| ← dionysus69 left | 13:05 |
| dionysus70 → dionysus69 | 13:05 |
| → ExeciN joined | 13:06 |
| → def_jam joined | 13:08 |
| → eb0t_ joined | 13:08 |
| ← ExeciN left | 13:09 |
| ← eblip left | 13:09 |
| ← eb0t left | 13:10 |
| ← gloomy left | 13:12 |
| → mikami joined | 13:15 |
| → roadie joined | 13:19 |
| ← iz16 left | 13:21 |
| ← dionysus69 left | 13:23 |
| → iz16 joined | 13:24 |
| → Darcidride joined | 13:25 |
| ← breakingsad left | 13:25 |
| ← Darcidride left | 13:29 |
| → dionysus69 joined | 13:30 |
| ← jrun left | 13:30 |
| → Sonicbit joined | 13:34 |
| → prepend joined | 13:45 |
| → Noti joined | 13:46 |
| ← SteffanW left | 13:46 |
|
Moongoodgirl
| lavalike: You can also do an interactive rebase, change the `pick` of the commit with the mistake to `edit`, run the rebase, fix it, amend, and then continue | 13:46 |
|
| …which…sounds more complicated than it feels, and sounds more complicated than the other methods >.>; | 13:47 |
|
| of course, all of these rewrite history, so !rewrite | 13:47 |
|
gitinfo
| Rewriting public history is not recommended. Everyone who has pulled the old history will have to do work (and you'll have to tell them to), so it's infinitely better to just move on. If you must, you can use `git push --force-with-lease <remote> <branch>` to force (and the remote may reject that, anyway). See http://goo.gl/waqum | 13:47 |
| → Telerophon joined | 13:48 |
| → Darcidride joined | 13:49 |
| → fahadash joined | 13:53 |
| → mowcat joined | 13:55 |
| ← apoos_maximus left | 13:56 |
| → mario-vimal joined | 14:02 |
| → lucasb joined | 14:06 |
| ← Darcidride left | 14:07 |
| → Darcidride joined | 14:07 |
| ← macaronus left | 14:09 |
| → Siecje joined | 14:13 |
| ← mario-vimal left | 14:13 |
| → sp00nf0rk joined | 14:14 |
|
Siecje
| I have a branch with a few commits that adds a new class to the code. I'm trying to rebase on master but I get a merge conflict. In a three way diff I can see the class in each version. Why is that? | 14:14 |
|
osse
| Siecje: git rebase managed to apply one commit, but not a subsequent one maybe? | 14:15 |
|
Siecje
| How do I combine commits before rebase? | 14:15 |
|
penguu
| how do i keep track of what changes between production and staging environment? | 14:15 |
|
| i understand i remove the git repo from production | 14:16 |
|
osse
| in a rebase the sides of the conflict are just the the state so far versus the upcoming commit | 14:16 |
|
| Siecje: an interactive rebase will do the trick. mark commits fixup/squash | 14:16 |
|
| git rebase -i master | 14:16 |
|
Siecje
| I'll try that. | 14:16 |
|
penguu
| if i want to get a copy of the production back to work on, do i just overwrite the directory with the production files? | 14:16 |
|
Siecje
| osse: I end up with the same merge conflict. | 14:18 |
|
osse
| then maybe some of that class is already in master and jsut jsut forgot about it | 14:19 |
|
| i dunno | 14:19 |
| ← sp00nf0rk left | 14:19 |
|
Siecje
| It's not. | 14:21 |
|
| I'll just resolve the merge conflict. | 14:21 |
| → figuinhas joined | 14:22 |
| → apoos_maximus joined | 14:23 |
|
osse
| I would be curious to see git log -p afterwards | 14:23 |
| ← zumba_addict left | 14:24 |
|
lavalike
| I forget what is the manpage that explains the syntax for things like name@{u} or name^ and ^name and ^name^ | 14:25 |
|
grawity
| man gitrevisions | 14:25 |
|
gitinfo
| the gitrevisions manpage is available at https://gitirc.eu/gitrevisions.html | 14:25 |
|
lavalike
| appreciate it | 14:27 |
| ← oatmealraisin left | 14:30 |
| → mark4 joined | 14:32 |
|
mark4
| so i just created a tag but want to change it, can i rename a tag? | 14:32 |
|
| i did not push | 14:32 |
|
| git tag -a zzz -m "zzz" i just want to change it | 14:32 |
|
grawity
| just delete and create it again | 14:33 |
|
mark4
| how do you delete it? | 14:35 |
|
grawity
| git tag -d | 14:35 |
| ← mark4 left | 14:35 |
| → mark4 joined | 14:36 |
| ← mark4 left | 14:36 |
| → gxt joined | 14:37 |
| → Shentino_ joined | 14:37 |
| ← royal_screwup21 left | 14:38 |
| → dunpeal joined | 14:38 |
| → mark4 joined | 14:39 |
|
dunpeal
| Are there any interesting VCS ideas beyond DAG? | 14:39 |
|
mark4
| grawity, ty for the help i keep getting disconnected | 14:39 |
|
grawity
| darcs? | 14:39 |
|
dunpeal
| grawity: what's interesting about DARCS? | 14:39 |
|
mark4
| im doing wifi tether through phone to be here, cant get on via works network :) | 14:39 |
| ← mark4 left | 14:40 |
| → truthseeker_ joined | 14:40 |
|
osse
| Fossil is pretty different | 14:40 |
|
| https://www.fossil-scm.org/home/doc/trunk/www/fossil-v-git.wiki | 14:40 |
| → relipse joined | 14:40 |
|
relipse
| I have a fork which is remote origin and I have another repo abc, how do I make the fork up to date with abc? | 14:41 |
|
dunpeal
| GIT: Sprawling, incoherent, and inefficient | 14:41 |
|
| FOSSIL: Self-contained and efficient | 14:41 |
|
| Very objective analysis. | 14:41 |
|
osse
| relipse: git remote add upstream {url here}; git fetch upstream; then rebase or merge or whatever you want | 14:41 |
| ← Shentino left | 14:42 |
|
pandem1
| dunpeal: Keep in mind that you are reading this on a Fossil website, and though we try to be fair, the information here might be biased in favor of Fossil, if only because we spend most of our time using Fossil, not Git. | 14:42 |
| → royal_screwup21 joined | 14:42 |
|
Moongoodgirl
| Fossil is based on sqlite | 14:42 |
|
| I dunno that that's a /good/ thing | 14:43 |
|
pandem1
| based on? | 14:43 |
|
Moongoodgirl
| apparently, according to that comparison thing | 14:43 |
| → SteffanW joined | 14:43 |
|
Moongoodgirl
| having things be flat files makes it easier to hack them if ever you should need to | 14:43 |
|
pandem1
| oh yeah, i know it was created for managing sqlite but not sure if it actually used it | 14:43 |
|
dunpeal
| osse, pandem1: what specific ideas are innovative in Fossil? from what I can tell, it just has a few extra features (like managing a wiki) | 14:43 |
|
relipse
| osse: do I use merge or rebase or does it matter? | 14:44 |
| ← Noti left | 14:44 |
|
Moongoodgirl
| if a git repository gets corrupt, you can maybe dig into the plumbing and fix it | 14:44 |
| ← BeerLove_ left | 14:44 |
|
osse
| relipse: a matter of opinion. if you're not sure, go for rebase | 14:44 |
|
Moongoodgirl
| if a fossil sqlite database gets corrupted… | 14:44 |
|
osse
| dunpeal: I don't really know. Haven't used it much | 14:44 |
|
pandem1
| afaik the concept of branch makes more sense in fossil but i never used it either | 14:44 |
|
relipse
| thanks osse that worked! | 14:44 |
| ← bytefire left | 14:44 |
|
dunpeal
| pandem1: how so? | 14:45 |
|
| btw, hg also has a slightly different concept of branch, but imho it actually just complicates things compared to git | 14:45 |
|
_ikke_
| hg has several concepts for branches | 14:45 |
|
dunpeal
| overall neither hg or bzr add any interesting ideas to the core idea of DAG in git | 14:46 |
|
| _ikke_: just two: branches and bookmarks | 14:46 |
|
pandem1
| Unlike in Git, branch names in Fossil are not purely local labels. They sync along with everything else, so everyone sees the same set of branch names. | 14:46 |
|
| and i think branches are also visible after merging, so what was done in what branch for example | 14:46 |
|
dunpeal
| pandem1: in what sense are branches in git "purely local"? | 14:47 |
|
pandem1
| git branches aren't really intuitive anyway | 14:47 |
|
osse
| I suppose you could define four broad categories: Git and git-like, darcs, fossil, and the rest (svn, cvs, etc.) | 14:47 |
|
pandem1
| idk, thats from the fossil website | 14:47 |
|
dunpeal
| "i think branches are also visible after merging" -> sounds like Hg branches | 14:47 |
|
| osse: DARCS and Fossil should have a ton of different fundamental ideas to be their own categories | 14:48 |
|
pandem1
| if you want to hear the opinion of fossil creators then read the link | 14:48 |
|
dunpeal
| pandem1: yeah, I'm skimming the page, and I see some interesting features though nothing groundbreaking | 14:48 |
| → howdoi joined | 14:49 |
|
dunpeal
| osse: what core ideas does DARCS introduce? | 14:49 |
|
pandem1
| i think the point that git may not be the best VCS for most projects makes sense | 14:49 |
|
| and git definitely is not intuitive to use | 14:50 |
|
dunpeal
| I disagree with the latter for sure :) | 14:50 |
| → g4570n joined | 14:50 |
|
dunpeal
| if you are versed in basic graph theory (and as a programmer, you should be) Git is the most intuitive of all VCSes | 14:50 |
|
osse
| dunpeal: seems to me that DARCS completely forgoes the DAG approach, and rather considers the hgistory to be a bunch of patches that can both be seen as a set AND as a sequence of patches | 14:50 |
|
pandem1
| i'm fairly capable of using it by now, but every time i see my colleagues using git i think of that | 14:51 |
|
osse
| it just sounds completely different to me | 14:51 |
|
dunpeal
| pandem1: most users just never bothered to learn Git properly | 14:51 |
|
pandem1
| because it is difficult to use | 14:51 |
|
dunpeal
| osse: history*? | 14:52 |
|
osse
| yes | 14:52 |
| ← mikami left | 14:52 |
|
dunpeal
| osse: interesting, if it's not DAG based then yes, it's different. | 14:52 |
| → SerialSmile joined | 14:53 |
|
dunpeal
| I guess patch-based vs snapshot-based is a fairly fundamental idea. | 14:53 |
| ← SteffanW left | 14:53 |
| ← bsanford left | 14:53 |
| → aesthetik joined | 14:53 |
| → bsanford joined | 14:54 |
|
dunpeal
| OK, I think I'm starting to get it. | 14:54 |
|
| It just creates a dependency hierarchy between patches. | 14:54 |
|
| And all you have in the repo is patches. | 14:54 |
|
| So the repo is a set of patches, partially ordered. | 14:55 |
|
| Neat, though will lead to obvious performance problems. | 14:55 |
|
| e.g. evey time you you look at a particular patch, you may have to walk the tree back to its root to get the snapshot it creates. | 14:56 |
|
| Avoiding this is exactly why git is snapshot-based. | 14:56 |
| → sevagh joined | 14:57 |
|
dunpeal
| Exporting/importing patches should be easier though. | 14:57 |
| ← Siecje left | 14:58 |
| ← deltab left | 14:58 |
|
sevagh
| i'm having trouble with `git branch -r --merged master `. in some of my git checkouts, this returns different lists of branches (some branches missing, etc.). how can i investigate why? ideally i'd like all of my git checkouts to return the full set of results on master all the time | 15:03 |
| → greggerz joined | 15:04 |
| → deltab joined | 15:08 |
| ← settermjd left | 15:09 |
| → feriman joined | 15:10 |
| → Inline joined | 15:11 |
| quesker_ → quesker | 15:15 |
| → sidetrack joined | 15:16 |
| ← quesker left | 15:17 |
| ← bsanford left | 15:19 |
| → bsanford joined | 15:20 |
| ← dviola left | 15:21 |
| ← greggerz left | 15:22 |
| ← bsanford left | 15:22 |
| → bsanford joined | 15:23 |
| ← Sleepy63 left | 15:23 |
| → oatmealraisin joined | 15:25 |
| ← sidetrack left | 15:27 |
| → sidetrack joined | 15:27 |
| ← dionysus69 left | 15:29 |
| → dionysus69 joined | 15:30 |
| ← sidetrack left | 15:32 |
| ← enoq left | 15:33 |
| ← dionysus69 left | 15:34 |
| → greggerz joined | 15:35 |
| ← omnireq_ left | 15:37 |
| → thiago joined | 15:40 |
| → gopper joined | 15:43 |
| ← sevagh left | 15:44 |
| → boombatower joined | 15:47 |
| ← TheFuzzball left | 15:49 |
| ← coco left | 15:49 |
| → TheFuzzball joined | 15:51 |
| ← bsanford left | 15:52 |
| → bsanford joined | 15:53 |
| ← dmc left | 15:54 |
| ← bsanford left | 15:54 |
| → bsanford joined | 15:55 |
| ← royal_screwup21 left | 15:56 |
| ← prepend left | 15:56 |
| → coco joined | 15:57 |
| codedmart_ → codedmart | 15:58 |
| ← sQVe left | 15:59 |
| ← dunpeal left | 15:59 |
| → rsrx joined | 16:00 |
| ← shady_traveller left | 16:00 |
| → dmc joined | 16:06 |
| ← mobidrop left | 16:07 |
| ← rewt left | 16:11 |
| → rewt`` joined | 16:11 |
| rewt`` → rewt | 16:11 |
| → jrun joined | 16:13 |
|
jrun
| is there a way to generate ordered patched from commits without the email headers? | 16:13 |
|
penguu
| how do iget my old file back | 16:14 |
|
| i have a modified file in the staging area | 16:14 |
|
| i want to reset it | 16:14 |
| ← hussam left | 16:15 |
|
penguu
| git checkout -- myfile.ext | 16:16 |
| → maryo_s joined | 16:19 |
| → omnireq joined | 16:20 |
| ← thiago left | 16:24 |
| → jaeckel joined | 16:25 |
| → sidetrack joined | 16:26 |
| ← TheFuzzball left | 16:27 |
| → jubalh joined | 16:28 |
|
jubalh
| How would I get git diff to display me the difference of the current branch to when it was forked from master (and not current master) ? | 16:28 |
| ← oxymoron93 left | 16:29 |
| ← rfuentess__ left | 16:30 |
| → TheFuzzball joined | 16:32 |
| ← Phylock left | 16:32 |
| → royal_screwup21 joined | 16:32 |
| ← planetcall|work left | 16:35 |
| ← chele left | 16:35 |
| ← mowcat left | 16:36 |
| → rostam joined | 16:36 |
| → mowcat joined | 16:41 |
| → settermjd joined | 16:43 |
| LiENUX → LiENUS | 16:44 |
| → Phylock joined | 16:46 |
| ← tretinha left | 16:46 |
| ← milkt left | 16:46 |
| ← rsrx left | 16:48 |
| ← monr0e left | 16:49 |
|
_ikke_
| jubalh: git diff master... | 16:51 |
|
| (including the 3 dots) | 16:51 |
| ← Love4Boobies left | 16:52 |
| → causasui joined | 16:52 |
| ← SerialSmile left | 16:53 |
| ← justanotheruser left | 16:54 |
| → BeerLover joined | 16:57 |
| → justanotheruser joined | 16:58 |
| ← sidetrack left | 16:58 |
| epoll → syr | 16:58 |
| → Krematorium joined | 17:00 |
| Krematorium → kremator | 17:02 |
| ← syr left | 17:04 |
| ← __salt left | 17:05 |
| → _salt joined | 17:07 |
| ← is_null left | 17:09 |
| → is_null joined | 17:09 |
| ← royal_screwup21 left | 17:10 |
| ← emsjessec left | 17:12 |
| → syr joined | 17:12 |
| → thiago joined | 17:13 |
| → mat001 joined | 17:13 |
| → royal_screwup21 joined | 17:16 |
| ← greggerz left | 17:16 |
| ← bvdw left | 17:18 |
| → ezio joined | 17:19 |
| → bvdw joined | 17:19 |
|
ezio
| how can I undo a commit that I just made, but keep the code that I committed to commit to another branch | 17:19 |
|
_ikke_
| 2 approaches: copy the commit and reset the branch, or reset the changes to float them to the other branch | 17:20 |
|
ezio
| oh god I really messed up | 17:20 |
|
_ikke_
| ezio: can you elaborate? | 17:21 |
|
ezio
| just merge into a new branch? | 17:21 |
|
| and then reset hard? | 17:21 |
|
_ikke_
| ezio: cherry-pick | 17:21 |
|
ezio
| If I branch from here ... It'll be a new branch I think | 17:21 |
|
| Yeah. | 17:21 |
|
_ikke_
| ezio: do you still need to create the new branch? | 17:21 |
|
ezio
| I'll branch and push the new branch, switch back and hard reset? | 17:22 |
|
| ugh. Why do I always do this. | 17:22 |
|
| k pushed the new branch | 17:23 |
| ← stux|RC left | 17:23 |
|
ezio
| oh thank god | 17:24 |
|
| thank you | 17:24 |
|
_ikke_
| You did most if it yourself :) | 17:25 |
| → stux|RC joined | 17:25 |
| \u → meowray | 17:27 |
| → wadadli joined | 17:30 |
| → greggerz joined | 17:30 |
| ← maryo_s left | 17:31 |
| → hussam joined | 17:32 |
| ← TheFuzzball left | 17:32 |
| ← mat001 left | 17:35 |
| ← royal_screwup21 left | 17:35 |
| → mat001 joined | 17:35 |
| → wootehfoot joined | 17:38 |
| → sidetrack joined | 17:38 |
| ← crose left | 17:40 |
| → omnireq_ joined | 17:41 |
| ← settermjd left | 17:42 |
| → matsaman joined | 17:42 |
| ← sidetrack left | 17:44 |
| ← omnireq left | 17:45 |
| moviuro_ → moviuro | 17:46 |
| → maryo joined | 17:47 |
| → prepend joined | 17:48 |
| ← KeyJoo left | 17:49 |
| → durham joined | 17:50 |
| → dionysus69 joined | 17:52 |
| → matsaman_ joined | 17:56 |
| ← matsaman left | 17:57 |
| → DanteD joined | 17:59 |
| → davispuh joined | 17:59 |
| ← akem__ left | 18:00 |
| → akemhp joined | 18:00 |
|
DanteD
| I'm using git to develop but now I want to make a public repository.. can I somehow hide all private dev commits from public ones? | 18:00 |
|
relipse
| no you might as well start fresh over | 18:01 |
|
selckin
| only if you remove them | 18:01 |
|
mmattice
| DanteD: squash them all? | 18:01 |
|
DanteD
| but so am I supposed to make only publish quality commits if I want have public repository? | 18:01 |
|
| I can easily start a new repo | 18:02 |
|
mmattice
| why does it matter if you publish only quality commits? | 18:02 |
|
| are you not human? | 18:02 |
|
avu
| DanteD: if you're concerned about master always being usable/stable, don't develop on master | 18:02 |
|
DanteD
| mmattice: hmm. I guess it might be ok | 18:03 |
|
mmattice
| or write tests that keep you from breaking. | 18:03 |
| ← lacrymology left | 18:05 |
| → dijitol joined | 18:06 |
| → gareppa joined | 18:10 |
| → kerframil joined | 18:14 |
| ← multiproc left | 18:16 |
| ← dionysus69 left | 18:16 |
|
jubalh
| _ikke_: thanks! | 18:17 |
| matsaman_ → matsaman | 18:17 |
|
_ikke_
| np | 18:17 |
|
matsaman
| I remember a situation in the past where I needed to use 'git log -r' to see information missing from plain 'git log' | 18:17 |
|
| right now I'm noticing I need 'git log -m' | 18:18 |
|
| is there an overlap? Should I just always use git log -m -r both? | 18:18 |
|
| really don't understand why the default 'git log' hides many things | 18:18 |
|
selckin
| such as? | 18:19 |
|
matsaman
| such as any changes made from any commits from a 'merge commit' | 18:19 |
| → rafasc joined | 18:20 |
|
matsaman
| if I trusted the commit messages, I wouldn't need to scrutinize the actual changes made | 18:21 |
|
| but obviously I don't, so why would I get the changes part of the time and only the message part of the time, I don't understand the rationale | 18:21 |
|
| is there a command I should be using other than git log -m -p? | 18:23 |
|
| like git log-that-doesnt-play-games ? | 18:23 |
|
selckin
| guess you want --graph -p | 18:23 |
| ← figuinhas left | 18:24 |
| ← gareppa left | 18:24 |
| ← DanteD left | 18:24 |
|
matsaman
| that appears to include what I want because it uses --topo-order | 18:25 |
|
| the man page's explanation of '-m' is very straightforward, though | 18:26 |
|
| it appears to serve a singular purpose: to not omit that which is by default omitted | 18:26 |
|
selckin
| then make an alias and be happy | 18:26 |
|
matsaman
| I'm not happy with magic | 18:26 |
|
| and I still don't know when to use -r vs -m | 18:26 |
| → ferdna joined | 18:26 |
|
selckin
| subversion still exists, nice linear history no mather what | 18:27 |
| ← ezio left | 18:27 |
|
nkuttler
| i recently found my long lost cvs repos on an ancient laptop ide disk <3 | 18:28 |
|
matsaman
| it doesn't need to be linear, it needs to not be pretending things didn't happen | 18:28 |
| → lacrymology joined | 18:28 |
|
matsaman
| I wonder if when I used -r in the past it was with git diff | 18:29 |
| → parse joined | 18:29 |
| → AtumT joined | 18:29 |
|
matsaman
| or something using git diff-tree | 18:30 |
| ← BeerLover left | 18:31 |
| ← andreas303 left | 18:33 |
| ← Darcidride left | 18:33 |
| → Nozzzle joined | 18:34 |
| ← Nozzzle left | 18:36 |
| ← T_UNIX left | 18:37 |
| → andreas303 joined | 18:37 |
|
selckin
| compare the output on the kernel repo & compare with gitk | 18:37 |
|
| then you'll start to understand | 18:37 |
|
| most repos don't really use merges heavily enough to notice | 18:38 |
|
robertparkerx
| How can I make it so I don't have to `git pull origin master` and just `git pull` | 18:38 |
|
_ikke_
| robertparkerx: git branch --set-upstream-to origin/master master | 18:39 |
| → dionysus69 joined | 18:39 |
|
matsaman
| I understand it's different, what I don't understand is why | 18:39 |
|
robertparkerx
| Sweet! Thank you _ikke_ | 18:39 |
| → duderonomy joined | 18:40 |
| ← mowcat left | 18:40 |
| ← roadie left | 18:42 |
| → roadie joined | 18:42 |
| → mowcat joined | 18:43 |
| ← rewt left | 18:43 |
| → rewt`` joined | 18:43 |
| rewt`` → rewt | 18:43 |
| cjohnson_ → cjohnson | 18:45 |
| → leeN joined | 18:45 |
| ← truthseeker_ left | 18:46 |
| ← LearnAllTheTime left | 18:55 |
| → settermjd joined | 19:01 |
| jan61 → jan6 | 19:05 |
| → n2o joined | 19:07 |
| → multiproc joined | 19:08 |
| ← Graypup_ left | 19:08 |
| ← rostam left | 19:11 |
| → yunk joined | 19:11 |
| yunk → H2Q | 19:11 |
| → g00s joined | 19:12 |
| ← demize left | 19:16 |
| → TheFuzzball joined | 19:18 |
| → demize joined | 19:19 |
| ← Raging_Hog left | 19:21 |
| → iam730 joined | 19:23 |
| → seni joined | 19:26 |
|
seni
| I just did a git reset --hard origin/master when I shouldnt have. thought that branch had what I wanted I was wrong. any way of recovering? | 19:26 |
|
selckin
| !reflog | 19:27 |
|
gitinfo
| The git reflog (`git log -g`) temporarily (90 days by default) snapshots your branch states at each operation that changes the branch, making it easy to undo e.g. merges and rebases. The usual warnings about !rewriting/undoing history apply. See http://sethrobertson.github.com/GitFixUm/ for full details. | 19:27 |
|
seni
| actually it was because I had the wrong window open lol | 19:27 |
|
matsaman
| yeah you only need a commit to reference to get back | 19:28 |
|
seni
| thanks | 19:29 |
| → apoos_maximus_ joined | 19:29 |
| → owlscientist joined | 19:29 |
| ← TheFuzzball left | 19:31 |
| ← apoos_maximus left | 19:33 |
| → TheFuzzball joined | 19:34 |
| ← gopper left | 19:35 |
| → Sasazuka joined | 19:36 |
| → sidetrack joined | 19:38 |
| ← sidetrack left | 19:43 |
| ← TheFuzzball left | 19:44 |
| ← lmat left | 19:45 |
| ← owlscientist left | 19:45 |
| ← akemhp left | 19:46 |
| ← j7k6 left | 19:46 |
| → j7k6 joined | 19:47 |
| ← n2o left | 19:48 |
| ← YuGiOhJCJ left | 19:48 |
| ← fflam left | 19:52 |
| ← Hello71 left | 19:53 |
| → Hello71 joined | 19:59 |
| ← relipse left | 20:01 |
| → owlscientist joined | 20:08 |
| ← g00s left | 20:08 |
| → lmat joined | 20:13 |
| ← maryo left | 20:18 |
| ← howdoi left | 20:20 |
|
j416
| seni: not if you had uncommitted changes, but otherwise you can just do the same back to whatever commit you were on before. (the reflog will tell you that if you forgot) | 20:20 |
| ← matsaman left | 20:20 |
| → m0viefreak joined | 20:20 |
| ← Celelibi left | 20:21 |
| → Lucas_Gray joined | 20:25 |
| → TheFuzzball joined | 20:25 |
| ← apoos_maximus_ left | 20:26 |
| → apoos_maximus_ joined | 20:26 |
| → Fernando-Basso joined | 20:27 |
| ← TheFuzzball left | 20:28 |
| → monr0e joined | 20:28 |
| → limarfrek joined | 20:31 |
| ← shored1 left | 20:32 |
| ← kerframil left | 20:34 |
| → shored joined | 20:35 |
| → sidetrack joined | 20:37 |
| → Jitta joined | 20:38 |
| ← limarfrek left | 20:39 |
| ← sidetrack left | 20:41 |
| → TheFuzzball joined | 20:48 |
| → crose joined | 20:48 |
| ← H2Q left | 20:48 |
| → ttl joined | 20:49 |
| ← TheFuzzball left | 20:51 |
|
cjohnson
| I hate repos full of merges :( | 20:53 |
|
| But people are scared about rebases | 20:53 |
| → raymond joined | 20:57 |
|
rafasc
| I hate repos full of rebases that throw away context information. | 20:59 |
|
| and I hate that people think that they need to choose to use either merge or rebase, when the real strength is using both. | 21:00 |
|
_ikke_
| I hate repos that take any if these at extrems :) | 21:00 |
|
| extremes | 21:00 |
| ← brettgilio left | 21:03 |
|
cjohnson
| I would be curious to see an example repo where the merges provided any valuable context | 21:03 |
|
| The way I've always worked, they provide nothing of value whatsoever | 21:03 |
| → synx joined | 21:04 |
|
cjohnson
| And they screw with the idea of binary artifacts, making it harder to determine if the artifact you are using is "latest" or not | 21:04 |
| → brettgilio joined | 21:04 |
| ← brettgilio left | 21:04 |
| → sidetrack joined | 21:04 |
|
cjohnson
| The binary gets produced on the branch and tagged with teh git sha. In a rebase strategy, the binary gets tested and promoted to the production binary, retaining the same sha, which will match the latest sha in the master branch | 21:05 |
| → jaziz joined | 21:07 |
| → brettgilio joined | 21:07 |
|
_ikke_
| cjohnson: that's only one possible workflow, and not the most typical uses of branching / merging | 21:08 |
|
rafasc
| in fact, that workflow essentially throws away the idea of "branches", as nothing can really branch-out. | 21:09 |
| ← sidetrack left | 21:09 |
|
_ikke_
| !gitflow | 21:09 |
|
gitinfo
| The description of the gitflow branch workflow model is at http://nvie.com/posts/a-successful-git-branching-model/ while a tool to help implement this workflow is at https://github.com/petervanderdoes/gitflow See http://sethrobertson.github.com/GitBestPractices/#workflow for other workflow suggestions/references | 21:09 |
|
_ikke_
| !githubflow | 21:09 |
|
gitinfo
| [!github_flow] This is the workflow followed by github: http://scottchacon.com/2011/08/31/github-flow.html | 21:09 |
| ← settermjd left | 21:09 |
|
rafasc
| cjohnson: what happens when you have a branch with a binary tagged, and someone else pushes to master before you? | 21:10 |
|
| there's no way to do it without changing the commit hashes. | 21:11 |
| ← AtumT left | 21:11 |
| → akemhp joined | 21:18 |
| → akemhp_ joined | 21:19 |
| ← akemhp_ left | 21:19 |
| ← grumble left | 21:26 |
| → gurmble joined | 21:27 |
| ← Phylock left | 21:27 |
| ← dionysus69 left | 21:28 |
| → dionysus69 joined | 21:28 |
| gurmble → grumble | 21:28 |
| → xkr47 joined | 21:30 |
| → sp00nf0rk joined | 21:32 |
| ← ttl left | 21:33 |
| → royal_screwup21 joined | 21:35 |
| ← Lucas_Gray left | 21:37 |
| ← sp00nf0rk left | 21:40 |
| ← daurnimator left | 21:41 |
| → Phylock joined | 21:41 |
| ← roadie left | 21:43 |
| → bambanx joined | 21:45 |
| → Celelibi joined | 21:46 |
| → daurnimator joined | 21:46 |
| ← brettgilio left | 21:48 |
| Hoffman → Highba11 | 21:52 |
| ← gavlee left | 21:52 |
| Highba11 → Hoffman | 21:53 |
| → zulutango joined | 21:53 |
| ← royal_screwup21 left | 21:54 |
| ← daurnimator left | 21:55 |
| → daurnimator joined | 22:08 |
| ← multiproc left | 22:08 |
| fructose0 → fructose | 22:09 |
| ← greggerz left | 22:10 |
| ← prepend left | 22:13 |
| ← feriman left | 22:14 |
| ← apetresc left | 22:15 |
| ← BlackMaria left | 22:15 |
| → feriman joined | 22:16 |
| → apetresc joined | 22:16 |
| ← oatmealraisin left | 22:16 |
| ← crose left | 22:17 |
| ← owlscientist left | 22:20 |
| → mostlybadfly joined | 22:21 |
| ← feriman left | 22:21 |
| → feriman joined | 22:21 |
| ← coco left | 22:22 |
| → ethernether joined | 22:23 |
| → owlscientist joined | 22:23 |
| ← owlscientist left | 22:23 |
| ← jan6 left | 22:24 |
| ← level3 left | 22:25 |
| → owlscientist joined | 22:26 |
| ← owlscientist left | 22:27 |
| ← j7k6 left | 22:27 |
| ← mat001 left | 22:27 |
| → jan6 joined | 22:27 |
| → greggerz joined | 22:28 |
| ← Jitta left | 22:29 |
| → mat001 joined | 22:30 |
| ← jcbitter left | 22:31 |
| → Sonicbit_ joined | 22:31 |
| → level3 joined | 22:31 |
| ← Sonicbit left | 22:32 |
| → j7k6 joined | 22:38 |
| ← Phylock left | 22:39 |
| → mikecmpbll joined | 22:40 |
| ← wootehfoot left | 22:44 |
| → Sleepy63 joined | 22:45 |
| ← cdown left | 22:45 |
| → cdown joined | 22:46 |
| ← shicks2525 left | 22:48 |
| → shicks2525 joined | 22:50 |
| ← dijitol left | 22:50 |
| → sidetrack joined | 22:54 |
| → oatmealraisin joined | 22:55 |
| ← ethernether left | 22:56 |
| ← thiago left | 22:57 |
| ← sidetrack left | 22:59 |
| → Mattiaslndstrm joined | 23:00 |
| netmonk → hegemoOn | 23:01 |
| ← Mattiaslndstrm left | 23:02 |
| ← level3 left | 23:04 |
| → sidetrack joined | 23:05 |
| ← CalimeroTeknik left | 23:09 |
| → royal_screwup21 joined | 23:11 |
| → jelmer joined | 23:13 |
| ← sidetrack left | 23:13 |
| → sidetrack joined | 23:13 |
| ← bvdw left | 23:18 |
| ← wodim left | 23:18 |
| → wodim joined | 23:19 |
| → bvdw joined | 23:19 |
| ← greggerz left | 23:19 |
| ← Fernando-Basso left | 23:22 |
| → level3 joined | 23:22 |
| → kerframil joined | 23:25 |
| ← oatmealraisin left | 23:26 |
| → brettgilio joined | 23:26 |
| ← d^sh_ left | 23:28 |
| ← kremator left | 23:37 |
| → BlackMaria joined | 23:44 |
| → oatmealraisin joined | 23:45 |
| → thiago joined | 23:47 |
| ← leeN left | 23:49 |
| ← tgunr left | 23:51 |
| → howdoi joined | 23:53 |
| → bremner` joined | 23:55 |
| ← lmat left | 23:57 |
| → thomasross_ joined | 23:59 |
| thomasross → Guest34522 | 23:59 |
| ← Guest34522 left | 23:59 |
| thomasross_ → thomasross | 23:59 |