Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Register
  • Sign in
  • G gitlab-ce
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 1
    • Merge requests 1
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • nexedinexedi
  • gitlab-ce
  • Repository
You need to sign in or sign up before continuing.
  • gitlab-ce
  • spec
  • lib
  • gitlab
  • diff
  • char_diff_spec.rb
Find file BlameHistoryPermalink
  • Vasilii Iakliushin's avatar
    Detect MarkerRanges for word-diff mode · 257987aa
    Vasilii Iakliushin authored Mar 11, 2021
    Contributes to https://gitlab.com/gitlab-org/gitlab/-/issues/16950
    
    Follow-up for
    https://gitlab.com/gitlab-org/gitlab/-/merge_requests/55105
    
    Extend to Gitlab::WordDiff::ChunkCollection class to generate
    `marker_ranges` based on chunks received from `git diff
    --word-diff=porcelain` output.
    
    Each chunk can be an unchanged string (starts with ` `), new
    string (starts with `+`) or removed string (starts with `-`).
    
    While parsing we collect chunks until we receive a newline
    delimiter. Then we are combining them together to generate
    Gitlab::Diff::Line object and assign MarkerRanges for changed parts of
    the diff line.
    257987aa
GitLab Nexedi Edition | About GitLab | About Nexedi | 沪ICP备2021021310号-2 | 沪ICP备2021021310号-7