I've found how you can copy a file wholesale from one branch to another:
Edit please note, if you think this question is a duplicate of this, please observe that that's the question I linked above^^, and what follows below explains the different functionality that I want.
$ git checkout directory/somefile.php feature-B
However this solution stages the changes already:
$ git status
On branch feature-A
Your branch is up-to-date with 'origin/feature-A'.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: directory/somefile.php
But I don't want to add all the changes. I want to do an add -p
and take most, but not all, of the changes. What I want is this:
$ git status
On branch feature-A
Your branch is up-to-date with 'origin/feature-A'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: directory/somefile.php
no changes added to commit (use "git add" and/or "git commit -a")
Of course, I can do git reset
to unstage the changes, but I would like to get what I want the first time, without a second step.
How can I copy a file from another branch without staging it?
git show
(2 times). – Hurlyburlygit copy...
, with no indication of a difference in functionality, so a user would assume that it behaves the same way. If someone is googling to find an answer to my question, there is no information in those answers to indicate that it meets their desired behavior. – Photocopier