After I type ‘git reverse <hash of the commit from github>’ in the terminal of vscodium, it always throws this message at me.

Auto-merging app/build/posts.html
CONFLICT (content): Merge conflict in app/build/posts.html
error: could not revert 0cc6763... new blog
hint: After resolving the conflicts, mark them with
hint: "git add/rm <pathspec>", then run
hint: "git revert --continue".
hint: You can instead skip this commit with "git revert --skip".
hint: To abort and get back to the state before "git revert",
hint: run "git revert --abort".
hint: Disable this message with "git config advice.mergeConflict false"

Then as the hints say, I type ‘git status’, fix the error, then commit and push again. But again the same message shows and I have no idea what to do. Getting mad as a beginner.

As i found no useful guides online, please help me to fix this issue without AI.

  • hallettj ( hallettj@leminal.space ) 
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 day ago

    Not a direct answer, but I’ve really been liking jj. You can use it as a friendlier git frontend. It has fewer possible states (for example there are no revert-in-progress, rebase-in-progress, etc., or detached head states); and there is an undo command that really does undo any operation.

  • Azzu ( Azzu@leminal.space ) 
    link
    fedilink
    arrow-up
    7
    ·
    edit-2
    2 days ago

    git revert does not go back to that commit, it takes the changes that are in that commit and tries to create a new set of changes that are the opposite, i.e. undo the changes of that specific commit.

    You could have known that by reading the official documentation of that command, which says essentially the same thing: “Given one or more existing commits, revert the changes that the related patches introduce, and record some new commits that record them.” https://git-scm.com/docs/git-revert

    Now, if you look at the documentation of git reset, it says “changes which commit HEAD points to. This makes it possible to undo various Git operations, for example commit, merge, rebase, and pull.” i.e. this does go back to that commit.

    Since revert tries to create new changes, it’s of course possible to get conflicts, since you probably changed a bunch since then. If you wanted git revert to work in this case, instead of reverting the commit “you want to go to”, you could have reverted all commits since then instead.

    So in English, what you did was “try to remove the specific changes within the commit I’m giving you”(git revert) instead of “go back to the commit I’m giving you” (git reset). Next time, try not to get mad and just do a web search, all of those results mention git reset or reverting all commits since then.

  • Chewt ( Chewt@beehaw.org ) 
    link
    fedilink
    arrow-up
    1
    ·
    2 days ago

    It’s hard to say what the issue is since we are lacking some context. Have you made changes and commits after the commit you are trying to revert, or was that commit the most recent commit in the history?

    Same with the fixes you mention, what exactly did you do to fix the merge conflict? Did you manually fix the files with the conflicts? Since you mention being a beginner with git, a common mistake would be not actually going into the files and resolving the conflicts, and just immediately doing git add/rm on the conflicting files.

    I’m happy to walk you through the process if you could give a few more details, git can be complicated when you’re a beginner :)

    • Yes, I needed to revert back to a commit that done around 2 weeks ago. Approximately 5-6 commits behind.

      I fixed the merge conflict by going to the specific file it mentioned which is /app/build/posts.html. And on the code line vscodium suggested me to recover multiple lines of code i previously deleted from the html file. I recovered the deleted lines of code and performed a commit and push.

      Now the issue is fixed by using git reset --hard commit_hash which is mentioned by another commenter.

      Thank you for trying to help.

  • tal ( tal@lemmy.today ) 
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 days ago

    I type ‘git status’, fix the error, then commit and push again.

    Did you git add the modified file subsequent to changing it, as the git message says?

    • Yes I did. But still the message displayed again and again.

      But now the issue is fixed by using git reset --hard commit_hash which is mentioned by another commenter.

      Thank you for your response.