Skip to content

Add diff subcommand#87

Open
SandrineP wants to merge 2 commits intoQuantStack:mainfrom
SandrineP:diff_cmd
Open

Add diff subcommand#87
SandrineP wants to merge 2 commits intoQuantStack:mainfrom
SandrineP:diff_cmd

Conversation

@SandrineP
Copy link
Collaborator

Add diff subcommand

@SandrineP SandrineP force-pushed the diff_cmd branch 3 times, most recently from 2acbb53 to e8e7b97 Compare February 5, 2026 10:01
@SandrineP SandrineP marked this pull request as ready for review February 5, 2026 10:09
@ianthomas23
Copy link
Member

When building locally on macos I see

/Users/iant/github/git2cpp/src/utils/common.cpp:114:23: error: implicit instantiation of undefined template 'std::basic_stringstream<char>'
  114 |     std::stringstream buffer;
      |                       ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/v1/__fwd/sstream.h:30:28: note: template is declared here
   30 | class _LIBCPP_TEMPLATE_VIS basic_stringstream;
      |                            ^
1 error generated.

To fix this I need to add #include <sstream> to the top of src/utils/common.cpp

if (repo.state() != GIT_REPOSITORY_STATE_NONE)
{
throw std::runtime_error("Cannot checkout, repository is in unexpected state");
std::runtime_error("Cannot checkout, repository is in unexpected state");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like was deleted by accident?


static int colour_printer([[maybe_unused]] const git_diff_delta* delta, [[maybe_unused]] const git_diff_hunk* hunk, const git_diff_line* line, void* payload)
{
bool* use_colour = reinterpret_cast<bool*>(payload);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be better to store bool use_colour rather than bool*. As it stands, later in this function both *use_colour and use_colour (without the dereference) are used, and they can't both work correctly!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants