2015-10-22 08:31:52 +01:00
|
|
|
# git diff
|
2014-03-09 12:20:13 +00:00
|
|
|
|
2016-01-07 17:31:27 +00:00
|
|
|
> Show changes to tracked files.
|
2019-01-30 11:19:23 +00:00
|
|
|
> Homepage: <https://git-scm.com/docs/git-diff>.
|
2014-03-09 12:20:13 +00:00
|
|
|
|
2016-10-27 17:15:29 +01:00
|
|
|
- Show unstaged, uncommitted changes:
|
2014-03-09 12:20:13 +00:00
|
|
|
|
2016-10-27 17:15:29 +01:00
|
|
|
`git diff`
|
2014-04-13 17:00:28 +01:00
|
|
|
|
2016-10-27 17:15:29 +01:00
|
|
|
- Show all uncommitted changes (including staged ones):
|
2014-04-13 17:00:28 +01:00
|
|
|
|
2016-10-27 17:15:29 +01:00
|
|
|
`git diff HEAD`
|
2014-04-13 17:00:28 +01:00
|
|
|
|
2016-10-27 17:15:29 +01:00
|
|
|
- Show only staged (added, but not yet committed) changes:
|
2014-04-13 17:00:28 +01:00
|
|
|
|
2016-10-27 17:15:29 +01:00
|
|
|
`git diff --staged`
|
2015-12-29 10:05:57 +00:00
|
|
|
|
2017-11-02 04:17:47 +00:00
|
|
|
- Show changes from all commits since a given date/time (a date expression, e.g. "1 week 2 days" or an ISO date):
|
2017-10-31 22:32:16 +00:00
|
|
|
|
2017-11-01 07:07:23 +00:00
|
|
|
`git diff 'HEAD@{3 months|weeks|days|hours|seconds ago}'`
|
2017-10-31 22:32:16 +00:00
|
|
|
|
2016-10-27 17:15:29 +01:00
|
|
|
- Show only names of changed files since a given commit:
|
2015-12-29 10:05:57 +00:00
|
|
|
|
2016-10-27 17:15:29 +01:00
|
|
|
`git diff --name-only {{commit}}`
|
|
|
|
|
|
|
|
- Output a summary of file creations, renames and mode changes since a given commit:
|
|
|
|
|
|
|
|
`git diff --summary {{commit}}`
|
2016-06-17 12:08:01 +01:00
|
|
|
|
|
|
|
- Create a patch file:
|
|
|
|
|
2016-10-27 17:15:29 +01:00
|
|
|
`git diff > {{target_file}}.patch`
|
2017-08-25 12:42:05 +01:00
|
|
|
|
|
|
|
- Compare a single file between two branches or commits:
|
|
|
|
|
|
|
|
`git diff {{branch_1}}..{{branch_2}} [--] {{path/to/file}}`
|
2017-11-04 09:31:27 +00:00
|
|
|
|
|
|
|
- Compare different files from the current branch to other branch:
|
|
|
|
|
|
|
|
`git diff {{branch}}:{{path/to/file2}} {{path/to/file}}`
|