Pinboard (christianmlong)
https://pinboard.in/u:christianmlong/public/
recent bookmarks from christianmlongOfficial way to synchronize the JSON 5.0 feeds · Issue #16 · CVEProject/cvelistV52024-03-12T16:13:33+00:00
https://github.com/CVEProject/cvelistV5/issues/16
christianmlongcve git github api json feed data download nvd mitrehttps://pinboard.in/https://pinboard.in/u:christianmlong/b:98d18b0458da/Better Git Conflicts with zdiff32024-02-17T01:27:57+00:00
https://ductile.systems/zdiff3/
christianmlonggit config merge conflict programming style vim text clihttps://pinboard.in/https://pinboard.in/u:christianmlong/b:3022d88c7240/Difftastic, a structural diff2023-12-30T22:17:24+00:00
https://difftastic.wilfred.me.uk/
christianmlonggit diff format utility display programming tool confighttps://pinboard.in/https://pinboard.in/u:christianmlong/b:016a9dd52a39/GitHub Pull Request Pitfalls | David Lord2023-12-23T03:34:24+00:00
https://davidism.com/github-pull-request-pitfalls/
christianmlonggit github pr contribution guidelines opensource howto tipshttps://pinboard.in/https://pinboard.in/u:christianmlong/b:1c2eb84ffaeb/GitHub - sindrets/diffview.nvim: Single tabpage interface for easily cycling through diffs for all modified files for any git rev.2023-12-02T17:13:23+00:00
https://github.com/sindrets/diffview.nvim
christianmlongvim diff neovim plugin git merge mergetool 4way conflicthttps://pinboard.in/https://pinboard.in/u:christianmlong/b:68b918dab56a/GitHub - mhagger/git-imerge: Incremental merge for git2023-12-02T17:05:55+00:00
https://github.com/mhagger/git-imerge
christianmlonggit merge incremental tool branch conflict utilityhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:d5fe44c6ed83/bin_pub/configs/.config/git/config at main · maruel/bin_pub · GitHub2023-12-02T17:03:52+00:00
https://github.com/maruel/bin_pub/blob/main/configs/.config/git/config
christianmlonggit merge vim vimdiff 4way tool config programming conflicthttps://pinboard.in/https://pinboard.in/u:christianmlong/b:74130c139edb/Theory - The Pijul manual2023-11-09T18:24:40+00:00
https://pijul.org/manual/theory.html
christianmlongsource code version control git mercurial pijul merge conflict text edit programming crdthttps://pinboard.in/https://pinboard.in/u:christianmlong/b:a6cbf2c153e4/Git: Don’t create .gitkeep files, use .gitignore instead - Adam Johnson2023-11-09T18:12:42+00:00
https://adamj.eu/tech/2023/09/18/git-dont-create-gitkeep/
christianmlonggit gitignorehttps://pinboard.in/https://pinboard.in/u:christianmlong/b:2a6486c3193a/Git: Force push safely with --force-with-lease and --force-if-includes - Adam Johnson2023-11-01T03:34:26+00:00
https://adamj.eu/tech/2023/10/31/git-force-push-safely/
christianmlonggit force push option safetyhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:8332f67bf94a/Stop cherry-picking, start merging, Part 1: The merge conflict - The Old New Thing2023-10-10T20:54:47+00:00
https://devblogs.microsoft.com/oldnewthing/20180312-00/?p=98215
christianmlonggit merge cherry pick blog post serieshttps://pinboard.in/https://pinboard.in/u:christianmlong/b:f51310818958/Git: Show the initial (root) commit - Adam Johnson2023-10-01T15:32:27+00:00
https://adamj.eu/tech/2023/09/30/git-show-initial-root-commit/
christianmlonggit root commit log clihttps://pinboard.in/https://pinboard.in/u:christianmlong/b:ebb3b06ffa8a/GitHub Actions could be so much better2023-09-25T03:09:10+00:00
https://blog.yossarian.net/2023/09/22/GitHub-Actions-could-be-so-much-better
christianmlonggit github actions ci cd programming development test quality workflow deploy automationhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:a86822880928/Git: Output the top-level directory of the current repository - Adam Johnson2023-08-23T03:54:43+00:00
https://adamj.eu/tech/2023/08/21/git-output-root-directory/
christianmlonggit path pwd directory command scriptinghttps://pinboard.in/https://pinboard.in/u:christianmlong/b:dec8ad29bd17/Git Better with Vim2023-08-08T05:52:18+00:00
https://nimbleind.gumroad.com/l/hsOVI
christianmlonggit vim book learning course howtohttps://pinboard.in/https://pinboard.in/u:christianmlong/b:a3f896f1d6f2/Using Splice.vim as a git mergetool | Teleogistic2023-08-08T05:37:47+00:00
https://teleogistic.net/2013/03/21/using-splice-vim-as-a-git-mergetool/
christianmlongvim vi git merge conflict diff tool pluginhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:706f0afd8836/Git rebase, squash...oh my! - mgasch.com2023-01-27T03:08:02+00:00
https://www.mgasch.com/2021/05/git-basics/
christianmlonggit intro howto tutorialhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:6e94be264a87/recovery - How do I recover a dropped stash in Git? - Stack Overflow2022-11-09T19:15:50+00:00
https://stackoverflow.com/questions/89332/how-do-i-recover-a-dropped-stash-in-git
christianmlong]]>git hash find stash oh_shit_git recoveryhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:8a6f474bd5c6/How to rebase stacked Git branches - Adam Johnson2022-10-15T18:24:12+00:00
https://adamj.eu/tech/2022/10/15/how-to-rebase-stacked-git-branches/
christianmlonggit feature rebase branchhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:e728234e848a/pypa/setuptools_scm: the blessed package to manage your versions by scm tags2022-10-05T16:41:35+00:00
https://github.com/pypa/setuptools_scm/
christianmlongpython packaging git setuptools version automation package bumpversionhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:15471e8f3fc7/How to force Poetry to reinstall a Git dependency from a branch - Stack Overflow2022-10-04T16:27:20+00:00
https://stackoverflow.com/questions/73462052/how-to-force-poetry-to-reinstall-a-git-dependency-from-a-branch
christianmlongpython poetry problem annoyances bug install version git dependencyhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:acaca58e43c1/SoftwareSwirl: Beyond three-way merge2022-09-13T03:16:58+00:00
https://softwareswirl.blogspot.com/2022/09/beyond-three-way-merge.html
christianmlonggit merge indepth explanationhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:96a387067d89/How to use `git mergetool` to resolve conflicts in Vim / NeoVim · GitHub2022-09-04T15:53:10+00:00
https://gist.github.com/karenyyng/f19ff75c60f18b4b8149
christianmlonggit merge mergetool vim tutorialhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:4fc6f7cb104a/Mergetools: Stop doing three-way merges!2022-09-04T15:46:23+00:00
https://www.eseth.org/2020/mergetools.html
christianmlonggit diff merge mergetool comparison reviewhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:7288b4cb8b38/vim - Why does git mergetool open 4 windows in vimdiff? (I'd expect 3) - Stack Overflow2022-09-04T15:43:39+00:00
https://stackoverflow.com/questions/7309707/why-does-git-mergetool-open-4-windows-in-vimdiff-id-expect-3
christianmlongvim diff merge git fugitivehttps://pinboard.in/https://pinboard.in/u:christianmlong/b:1009178c0070/git - ours vs theirs2022-06-01T14:46:03+00:00
https://nitaym.github.io/ourstheirs/
christianmlonggit merge tutorial reference ours theirs howtohttps://pinboard.in/https://pinboard.in/u:christianmlong/b:4d6db1c306ce/packaging - Where exactly is all the source code on Launchpad browseable? - Ask Ubuntu2022-05-17T20:52:04+00:00
https://askubuntu.com/questions/979048/where-exactly-is-all-the-source-code-on-launchpad-browseable
christianmlongubuntu package git repo source debhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:b81da794e711/How to revert a faulty merge2022-04-19T15:31:34+00:00
https://mirrors.edge.kernel.org/pub/software/scm/git/docs/howto/revert-a-faulty-merge.txt
christianmlong, Junio C Hamano
Subject: Re: Odd merge behaviour involving reverts
Abstract: Sometimes a branch that was already merged to the mainline
is later found to be faulty. Linus and Junio give guidance on
recovering from such a premature merge and continuing development
after the offending branch is fixed.
Message-ID: <7vocz8a6zk.fsf@gitster.siamese.dyndns.org>
References:
Content-type: text/asciidoc
How to revert a faulty merge
============================
Alan said:
I have a master branch. We have a branch off of that that some
developers are doing work on. They claim it is ready. We merge it
into the master branch. It breaks something so we revert the merge.
They make changes to the code. they get it to a point where they say
it is ok and we merge again.
When examined, we find that code changes made before the revert are
not in the master branch, but code changes after are in the master
branch.
and asked for help recovering from this situation.
The history immediately after the "revert of the merge" would look like
this:
---o---o---o---M---x---x---W
/
---A---B
where A and B are on the side development that was not so good, M is the
merge that brings these premature changes into the mainline, x are changes
unrelated to what the side branch did and already made on the mainline,
and W is the "revert of the merge M" (doesn't W look M upside down?).
IOW, `"diff W^..W"` is similar to `"diff -R M^..M"`.
Such a "revert" of a merge can be made with:
$ git revert -m 1 M
After the developers of the side branch fix their mistakes, the history
may look like this:
---o---o---o---M---x---x---W---x
/
---A---B-------------------C---D
where C and D are to fix what was broken in A and B, and you may already
have some other changes on the mainline after W.
If you merge the updated side branch (with D at its tip), none of the
changes made in A or B will be in the result, because they were reverted
by W. That is what Alan saw.
Linus explains the situation:
Reverting a regular commit just effectively undoes what that commit
did, and is fairly straightforward. But reverting a merge commit also
undoes the _data_ that the commit changed, but it does absolutely
nothing to the effects on _history_ that the merge had.
So the merge will still exist, and it will still be seen as joining
the two branches together, and future merges will see that merge as
the last shared state - and the revert that reverted the merge brought
in will not affect that at all.
So a "revert" undoes the data changes, but it's very much _not_ an
"undo" in the sense that it doesn't undo the effects of a commit on
the repository history.
So if you think of "revert" as "undo", then you're going to always
miss this part of reverts. Yes, it undoes the data, but no, it doesn't
undo history.
In such a situation, you would want to first revert the previous revert,
which would make the history look like this:
---o---o---o---M---x---x---W---x---Y
/
---A---B-------------------C---D
where Y is the revert of W. Such a "revert of the revert" can be done
with:
$ git revert W
This history would (ignoring possible conflicts between what W and W..Y
changed) be equivalent to not having W or Y at all in the history:
---o---o---o---M---x---x-------x----
/
---A---B-------------------C---D
and merging the side branch again will not have conflict arising from an
earlier revert and revert of the revert.
---o---o---o---M---x---x-------x-------*
/ /
---A---B-------------------C---D
Of course the changes made in C and D still can conflict with what was
done by any of the x, but that is just a normal merge conflict.
On the other hand, if the developers of the side branch discarded their
faulty A and B, and redone the changes on top of the updated mainline
after the revert, the history would have looked like this:
---o---o---o---M---x---x---W---x---x
/ \
---A---B A'--B'--C'
If you reverted the revert in such a case as in the previous example:
---o---o---o---M---x---x---W---x---x---Y---*
/ \ /
---A---B A'--B'--C'
where Y is the revert of W, A' and B' are rerolled A and B, and there may
also be a further fix-up C' on the side branch. `"diff Y^..Y"` is similar
to `"diff -R W^..W"` (which in turn means it is similar to `"diff M^..M"`),
and `"diff A'^..C'"` by definition would be similar but different from that,
because it is a rerolled series of the earlier change. There will be a
lot of overlapping changes that result in conflicts. So do not do "revert
of revert" blindly without thinking..
---o---o---o---M---x---x---W---x---x
/ \
---A---B A'--B'--C'
In the history with rebased side branch, W (and M) are behind the merge
base of the updated branch and the tip of the mainline, and they should
merge without the past faulty merge and its revert getting in the way.
To recap, these are two very different scenarios, and they want two very
different resolution strategies:
- If the faulty side branch was fixed by adding corrections on top, then
doing a revert of the previous revert would be the right thing to do.
- If the faulty side branch whose effects were discarded by an earlier
revert of a merge was rebuilt from scratch (i.e. rebasing and fixing,
as you seem to have interpreted), then re-merging the result without
doing anything else fancy would be the right thing to do.
(See the ADDENDUM below for how to rebuild a branch from scratch
without changing its original branching-off point.)
However, there are things to keep in mind when reverting a merge (and
reverting such a revert).
For example, think about what reverting a merge (and then reverting the
revert) does to bisectability. Ignore the fact that the revert of a revert
is undoing it - just think of it as a "single commit that does a lot".
Because that is what it does.
When you have a problem you are chasing down, and you hit a "revert this
merge", what you're hitting is essentially a single commit that contains
all the changes (but obviously in reverse) of all the commits that got
merged. So it's debugging hell, because now you don't have lots of small
changes that you can try to pinpoint which _part_ of it changes.
But does it all work? Sure it does. You can revert a merge, and from a
purely technical angle, Git did it very naturally and had no real
troubles. It just considered it a change from "state before merge" to
"state after merge", and that was it. Nothing complicated, nothing odd,
nothing really dangerous. Git will do it without even thinking about it.
So from a technical angle, there's nothing wrong with reverting a merge,
but from a workflow angle it's something that you generally should try to
avoid.
If at all possible, for example, if you find a problem that got merged
into the main tree, rather than revert the merge, try _really_ hard to
bisect the problem down into the branch you merged, and just fix it, or
try to revert the individual commit that caused it.
Yes, it's more complex, and no, it's not always going to work (sometimes
the answer is: "oops, I really shouldn't have merged it, because it wasn't
ready yet, and I really need to undo _all_ of the merge"). So then you
really should revert the merge, but when you want to re-do the merge, you
now need to do it by reverting the revert.
ADDENDUM
Sometimes you have to rewrite one of a topic branch's commits *and* you can't
change the topic's branching-off point. Consider the following situation:
P---o---o---M---x---x---W---x
\ /
A---B---C
where commit W reverted commit M because it turned out that commit B was wrong
and needs to be rewritten, but you need the rewritten topic to still branch
from commit P (perhaps P is a branching-off point for yet another branch, and
you want be able to merge the topic into both branches).
The natural thing to do in this case is to checkout the A-B-C branch and use
"rebase -i P" to change commit B. However this does not rewrite commit A,
because "rebase -i" by default fast-forwards over any initial commits selected
with the "pick" command. So you end up with this:
P---o---o---M---x---x---W---x
\ /
A---B---C <-- old branch
\
B'---C' <-- naively rewritten branch
To merge A-B'-C' into the mainline branch you would still have to first revert
commit W in order to pick up the changes in A, but then it's likely that the
changes in B' will conflict with the original B changes re-introduced by the
reversion of W.
However, you can avoid these problems if you recreate the entire branch,
including commit A:
A'---B'---C' <-- completely rewritten branch
/
P---o---o---M---x---x---W---x
\ /
A---B---C
You can merge A'-B'-C' into the mainline branch without worrying about first
reverting W. Mainline's history would look like this:
A'---B'---C'------------------
/ \
P---o---o---M---x---x---W---x---M2
\ /
A---B---C
But if you don't actually need to change commit A, then you need some way to
recreate it as a new commit with the same changes in it. The rebase command's
--no-ff option provides a way to do this:
$ git rebase [-i] --no-ff P
The --no-ff option creates a new branch A'-B'-C' with all-new commits (all the
SHA IDs will be different) even if in the interactive case you only actually
modify commit B. You can then merge this new branch directly into the mainline
branch and be sure you'll get all of the branch's changes.
You can also use --no-ff in cases where you just add extra commits to the topic
to fix it up. Let's revisit the situation discussed at the start of this howto:
P---o---o---M---x---x---W---x
\ /
A---B---C----------------D---E <-- fixed-up topic branch
At this point, you can use --no-ff to recreate the topic branch:
$ git checkout E
$ git rebase --no-ff P
yielding
A'---B'---C'------------D'---E' <-- recreated topic branch
/
P---o---o---M---x---x---W---x
\ /
A---B---C----------------D---E
You can merge the recreated branch into the mainline without reverting commit W,
and mainline's history will look like this:
A'---B'---C'------------D'---E'
/ \
P---o---o---M---x---x---W---x---M2
\ /
A---B---C
]]>revert merge git howto referencehttps://pinboard.in/https://pinboard.in/u:christianmlong/b:e973133bc4d2/filenames - How to apply a Git patch to a file with a different name and path? - Stack Overflow2022-04-18T20:05:15+00:00
https://stackoverflow.com/questions/16526321/how-to-apply-a-git-patch-to-a-file-with-a-different-name-and-path
christianmlong ~/patch_file
cd ../second-repo
patch -p1 blue/red/hi.test ~/patch_file
]]>git diff patch fork branch differenthttps://pinboard.in/https://pinboard.in/u:christianmlong/b:d9cc5858498b/My ideal Rust workflow2021-10-27T03:34:26+00:00
https://fasterthanli.me/articles/my-ideal-rust-workflow
christianmlongrust workflow config build make toolchain compile ci git github howto automation development setup environmenthttps://pinboard.in/https://pinboard.in/u:christianmlong/b:82ecfca0ddd4/GitHub - mhagger/git-imerge: Incremental merge for git2021-09-16T05:15:27+00:00
https://github.com/mhagger/git-imerge#simplifying-results
christianmlonggit merge tool utility complex interactive incrementalhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:2ec4a0d9b80d/GitHub OCTO | Visualizing a codebase2021-08-07T03:39:07+00:00
https://octo.github.com/projects/repo-visualization
christianmlonggit github visualization analysishttps://pinboard.in/https://pinboard.in/u:christianmlong/b:f1da4366b7fe/Merge branch 'fw/complete-cmd-idx-fix' · git/git@a38c4c02021-08-02T15:27:34+00:00
https://github.com/git/git/commit/a38c4c02e536b772526ad236b9887e28dab1d1e1
christianmlonggit fix bug completion patch bugfix bashhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:1aba645db8d7/When should I use "git push --force-if-includes" - Stack Overflow2021-07-24T17:41:38+00:00
https://stackoverflow.com/questions/65837109/when-should-i-use-git-push-force-if-includes
christianmlonggit push force force-with-lease force-if-includes safetyhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:c71c649ba7bd/A Google Docs for Markdown — Glitch Blog2021-05-14T01:23:15+00:00
https://blog.glitch.com/post/google-docs-markdown-glitch
christianmlonggit markdown glitch shared editing doc document publishinghttps://pinboard.in/https://pinboard.in/u:christianmlong/b:bba495fb9c74/wiggle(1) - Linux man page2021-03-30T16:07:10+00:00
https://linux.die.net/man/1/wiggle
christianmlonggit format patch apply utility diff mergehttps://pinboard.in/https://pinboard.in/u:christianmlong/b:4bd63f77b59e/git-add only whitespace changes? - Stack Overflow2021-01-13T16:44:07+00:00
https://stackoverflow.com/questions/27489189/git-add-only-whitespace-changes
christianmlonggit add whitespace only diff patchhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:a019b545b427/atlassian sourcetree - Why git accepts commit messages starting with hash symbol - Stack Overflow2021-01-12T23:22:14+00:00
https://stackoverflow.com/questions/42358300/why-git-accepts-commit-messages-starting-with-hash-symbol
christianmlonggit commit message cleanup comment settingshttps://pinboard.in/https://pinboard.in/u:christianmlong/b:714ce2c17405/Day 33: pairing is magic and beautiful git diffs2021-01-09T16:37:31+00:00
https://jvns.ca/blog/2021/01/07/day-33--a-login-bug--a-git-trick--and-generating-yaml-files/
christianmlonggit log diff python path pathlib tips tricks delta prettyhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:a97a91977a20/Learn Git Branching2020-12-27T18:30:52+00:00
https://learngitbranching.js.org/
christianmlonggit branch branching tutorialhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:fae8e317f039/Cross-Branch Testing • Buttondown2020-12-22T04:01:00+00:00
https://buttondown.email/hillelwayne/archive/cross-branch-testing/
christianmlongpython pytest hypothesis test testing comparison git worktree branchhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:2da9ccf0f181/dotfiles/git-pylog at main · Julian/dotfiles2020-12-22T01:38:26+00:00
https://github.com/Julian/dotfiles/blob/main/bin/git-pylog
christianmlongpython git log utilityhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:e26e224514b7/Ned Batchelder: Experimenting with git storage2020-12-19T21:01:23+00:00
https://nedbatchelder.com//blog/202012/experimenting_with_git_storage.html
christianmlonggit storage blob internal pack gc diff commithttps://pinboard.in/https://pinboard.in/u:christianmlong/b:76667ccacc7a/Introducing django-linear-migrations - Adam Johnson2020-12-12T04:30:28+00:00
https://adamj.eu/tech/2020/12/10/introducing-django-linear-migrations/
christianmlongdjango database migration linear git merge conflict rebase utilityhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:26b5a8143ca7/Monitor subcommand failed to capture the full stdout · Issue #674 · ansible/tower-cli2020-11-06T21:37:23+00:00
https://github.com/ansible/tower-cli/issues/674
christianmlongansible tower awx cli bug report git github stdouthttps://pinboard.in/https://pinboard.in/u:christianmlong/b:12979768c5fe/stgarf/EggTimer4: A fork of CarlosNZ/ihowson's EggTimer 2 Alfred Workflow. Updated to work with Alfred 4.2020-11-03T03:51:12+00:00
https://github.com/stgarf/EggTimer4
christianmlongalfred workflow timer eggtimer git fork utilityhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:f9b6538e1741/Conventional Commits2020-10-24T16:03:03+00:00
https://www.conventionalcommits.org/en/v1.0.0/
christianmlonggit commit standard convention changelog utility toolhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:d54aceacd266/Git commit messages with attributes - zerokspot.com2020-10-24T16:00:49+00:00
https://zerokspot.com/weblog/2020/10/24/git-commit-messages-with-attributes/
christianmlonggit trailers attributes commit messagehttps://pinboard.in/https://pinboard.in/u:christianmlong/b:602dd7822d5a/Continuous Deployment for AWS Glue – Brave New Geek2020-10-16T01:47:51+00:00
https://bravenewgeek.com/continuous-deployment-for-aws-glue/
christianmlongpython amazon aws github git actions ci/cd glue automation deploymenthttps://pinboard.in/https://pinboard.in/u:christianmlong/b:3a8549defc57/Ned Batchelder: Working with many git repos2020-10-13T01:53:44+00:00
https://nedbatchelder.com//blog/202010/working_with_many_git_repos.html
christianmlonggit bash script utilityhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:63a0c2d24587/Karol Kuczmarski's Blog – Recap of the gisht project2020-09-05T00:36:03+00:00
http://xion.io/post/programming/gisht-recap.html
christianmlongrust example stream git gisthttps://pinboard.in/https://pinboard.in/u:christianmlong/b:0dd16d6401b5/git clone through ssh - Stack Overflow2020-07-29T16:17:21+00:00
https://stackoverflow.com/questions/6167905/git-clone-through-ssh
christianmlonggit clone ssh url githubhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:4d6c80922a70/Home - CentOS Git server2020-05-28T14:39:32+00:00
https://git.centos.org/projects/rpms/%2A
christianmlongcentos git package repo rpm source spechttps://pinboard.in/https://pinboard.in/u:christianmlong/b:fd3b6b0f8400/git show of a merge commit - Stack Overflow2020-03-25T14:28:40+00:00
https://stackoverflow.com/questions/40986518/git-show-of-a-merge-commit
christianmlonggit show merge first parenthttps://pinboard.in/https://pinboard.in/u:christianmlong/b:abbaa5e39e1b/Dive into Git history with fugitive.vim - Advanced Web Machinery2019-12-10T23:05:37+00:00
https://advancedweb.hu/2018/09/11/fugitive/
christianmlongvim git blame fugitive Gblame navigatehttps://pinboard.in/https://pinboard.in/u:christianmlong/b:94deb7fed900/version control - How to perform a three-way diff in Git without merging? - Stack Overflow2019-11-22T17:32:05+00:00
https://stackoverflow.com/questions/41803083/how-to-perform-a-three-way-diff-in-git-without-merging
christianmlonggit kdiff3 merge 3way diffhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:83f0677a0fef/Exclude a directory from git diff - Stack Overflow2019-03-19T17:13:14+00:00
https://stackoverflow.com/questions/4380945/exclude-a-directory-from-git-diff/29374503#29374503
christianmlonggit diff exclude pathhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:9d89700b862c/Git add lines to index by grep/regex - Stack Overflow2018-07-27T18:11:59+00:00
https://stackoverflow.com/questions/15234500/git-add-lines-to-index-by-grep-regex
christianmlonggit regex line add patchhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:b75ae7fcb53c/PRINT HEAD » patchutils2018-07-27T18:11:45+00:00
http://cyberelk.net/tim/software/patchutils/
christianmlonggit diff patch utilitieshttps://pinboard.in/https://pinboard.in/u:christianmlong/b:4aa44c2e89f8/What's the fastest way to edit hundreds of Git commit messages? - Stack Overflow2018-07-24T03:52:52+00:00
https://stackoverflow.com/questions/14332551/whats-the-fastest-way-to-edit-hundreds-of-git-commit-messages
christianmlonggit rebase reword script commit message edithttps://pinboard.in/https://pinboard.in/u:christianmlong/b:51aaee8524fe/homebrew - How to install specific version of python on OS X - Ask Different2018-07-10T17:56:17+00:00
https://apple.stackexchange.com/questions/237430/how-to-install-specific-version-of-python-on-os-x/281482#281482
christianmlongbrew homebrew install python 3.6.5 old version git checkouthttps://pinboard.in/https://pinboard.in/u:christianmlong/b:4d9c856ba850/Are you still developing in the global scope? - Developer Community - ServiceNow Community2018-05-02T16:56:11+00:00
https://community.servicenow.com/community?id=community_question&sys_id=e93e47eddb9cdbc01dcaf3231f9619dd
christianmlongservicenow global app scope development githttps://pinboard.in/https://pinboard.in/u:christianmlong/b:1fdb096881e0/Create an Application from Source Control2018-04-25T14:54:17+00:00
https://developer.servicenow.com/app.do#!/training/article/app_store_learnv2_buildneedit_jakarta_application_and_application_files/app_store_learnv2_buildneedit_jakarta_create_an_application_from_source_control?v=jakarta
christianmlongservicenow application studio githttps://pinboard.in/https://pinboard.in/u:christianmlong/b:4b8446fa147b/Cherry Picking a Range of Commits with Git2018-02-28T22:08:48+00:00
https://www.tollmanz.com/git-cherry-pick-range/
christianmlonggit cherry-pick rangehttps://pinboard.in/https://pinboard.in/u:christianmlong/b:16dba89cbb5f/GitUp2018-02-21T14:33:43+00:00
http://gitup.co/
christianmlonggit ui mac app tool utilityhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:eb7fd3e868b8/💕💝 eevee 💝💕 on Twitter: "hot tip: git config --global merge.conflictstyle diff3 "what does it do" shh. change your life, that's what"2018-02-21T03:51:07+00:00
https://mobile.twitter.com/eevee/status/966002123975442432
christianmlonggit config diffhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:3fc7c19a9345/Step-by-step guide on how to create a GPG key on keybase.io, adding it to a local GPG setup and use it with Git and GitHub.2018-01-21T02:52:29+00:00
https://github.com/pstadler/keybase-gpg-github
christianmlongpgp gpg keybase.io git sign commithttps://pinboard.in/https://pinboard.in/u:christianmlong/b:ef1b218db283/Good-lookin' diffs. Actually… nah… The best-lookin' diffs. 🎉2017-11-16T23:17:00+00:00
https://github.com/so-fancy/diff-so-fancy
christianmlonggit diff plugin formathttps://pinboard.in/https://pinboard.in/u:christianmlong/b:ee3489f69fb6/rhubarb.vim: GitHub extension for fugitive.vim2017-08-04T21:13:15+00:00
https://github.com/tpope/vim-rhubarb
christianmlong, see :help compl-omni). This makes inserting those Closes #123 remarks slightly easier than copying and pasting from the browser.
]]>git vim fugitive rhubarb github hub tpope pluginhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:fc75db792f3b/Follow-up to 'GitFlow considered harmful' | End of Line Blog2017-04-06T15:54:10+00:00
http://endoflineblog.com/follow-up-to-gitflow-considered-harmful
christianmlonggit merge process rebase fast-forward workflow git-flowhttps://pinboard.in/https://pinboard.in/u:christianmlong/b:ece6a72e1d08/