The git diff
command is a powerful tool that shows changes between commits, commit and working tree, etc. This command can be particularly useful when you need to see what has been changed in a repository. But did you know you can also use git diff
to compare changes within a specific directory?
Let’s delve into the step-by-step process.
- Navigate to the root of your git repositoryOpen your terminal or command prompt and navigate to the root of your git repository using the
cd
(change directory) command.bashCopy codecd /path/to/your/git/repository
- Using git diff with a specific directoryTo see the changes in a specific directory, you simply have to add the path of that directory to the
git diff
command.bashCopy codegit diff -- ./directoryName
This will show you the changes made in the specified directory. If you want to compare the changes to a specific directory between two commits, you can do so by specifying the commit hashes.phpCopy codegit diff <commitHash1>..<commitHash2> -- ./directoryName
In the above command,commitHash1
andcommitHash2
should be replaced by the actual commit hashes you want to compare../directoryName
should be replaced with the directory you are interested in. - Interpreting the outputThe output from
git diff
will display what lines have been added or removed between the two commits. A line added is marked with a+
, and a line removed is marked with a-
. The output is color-coded by default, with red indicating removed lines and green indicating added lines.
Remember, in Git, a commit is a snapshot of your project at a specific point in time. Each commit has a unique hash that can be used to refer back to that specific snapshot. When you’re comparing two commits using git diff
, you’re asking Git to show you what has changed between those two points in time.
As a final note, if you’re interested in seeing the changes made to a specific file within a directory, you can specify the file’s path like so:
bashCopy codegit diff -- ./directoryName/fileName
This can be helpful when you’re focused on tracking changes to a specific file in a larger project. By taking advantage of Git’s powerful diffing tools, you can stay on top of every change and make sure that your project is moving in the right direction.