Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
  • Sign in / Register
TortoiseGit
TortoiseGit
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 301
    • Issues 301
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 8
    • Merge requests 8
  • Requirements
    • Requirements
    • List
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Analytics
    • Analytics
    • CI/CD
    • Code Review
    • Insights
    • Issue
    • Repository
    • Value Stream
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • TortoiseGit
  • TortoiseGitTortoiseGit
  • Issues
  • #2741

Closed
Open
Created Mar 24, 2016 by André Hänsel@AndreKR

TortoiseGitBlame should have an option to show merges instead of checkpoint commits

If you are using the workflow where you squash every merge, this feature request is not for you. :)

But if you keep branch commits, it would be very useful to have an option to show the commit when a line was merged into the current branch instead of showing the commit on the branch.

This can be achieved in the following way:

  • Before running git blame, run git rev-list --first-parent HEAD (or the respective Ref)
  • Prepend every returned line with the previous line, just as | awk '{print p " " $0}{p=$0}' does
  • Write the result to a temporary file
  • Call git blame with the -S tempfile option

For each line you will see when a line was merged into the current branch.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None