Skip to content

#1735: implement repo link feature, #1736: fix link creation#1739

Merged
hohwille merged 6 commits intodevonfw:mainfrom
hohwille:feature/1735-repo-link-feature
Mar 12, 2026
Merged

#1735: implement repo link feature, #1736: fix link creation#1739
hohwille merged 6 commits intodevonfw:mainfrom
hohwille:feature/1735-repo-link-feature

Conversation

@hohwille
Copy link
Member

@hohwille hohwille commented Mar 12, 2026

This PR fixes #1735 and fixes #1736

Implemented changes:

  • Improved workspace path access by adding IdeContext.getWorkspacePath(Path)
  • Fixed and refactored FileAccessImpl.mklinkOnWindows
  • Therefore added FileAccess methods getCommonNameCount, getPathStart, and getPathEnd.
  • Added RepositoryConfig.links with RepositoryLink (and id).
  • Support for workspaces=* including workspaces defined by arbitrary other workspaces defined by other repositories that may be processed later.
  • Give preference to main workspace if that is included so if a repo is cloned to multiple workspaces, it will be cloned in main and symlinked in others.
  • Generally cleanup and refactoring of RepositoryConfig and RepositoryProperties.
  • Also added logic to sanatize values for repository config/properties.
  • Extended RepositoryCommandletTest to test the new feature (testSetupRepositoryWithAllWorkspacesAndLinks)
  • Added documentation

Checklist for this PR

Make sure everything is checked before merging this PR. For further info please also see
our DoD.

  • When running mvn clean test locally all tests pass and build is successful
  • PR title is of the form #«issue-id»: «brief summary» (e.g. #921: fixed setup.bat). If no issue ID exists, title only.
  • PR top-level comment summarizes what has been done and contains link to addressed issue(s)
  • PR and issue(s) have suitable labels
  • Issue is set to In Progress and assigned to you or there is no issue (might happen for very small PRs)
  • You followed all coding conventions
  • You have added the issue implemented by your PR in CHANGELOG.adoc unless issue is labeled
    with internal

@hohwille hohwille added this to the release:2026.03.001 milestone Mar 12, 2026
@hohwille hohwille self-assigned this Mar 12, 2026
@hohwille hohwille added enhancement New feature or request repository Commandlet to clone, build or import git repositories link symlinks and windows junctions labels Mar 12, 2026
@github-project-automation github-project-automation bot moved this to 🆕 New in IDEasy board Mar 12, 2026
@coveralls
Copy link
Collaborator

coveralls commented Mar 12, 2026

Pull Request Test Coverage Report for Build 23003890195

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • 390 unchanged lines in 6 files lost coverage.
  • Overall coverage increased (+0.1%) to 70.474%

Files with Coverage Reduction New Missed Lines %
com/devonfw/tools/ide/git/repository/RepositoryConfig.java 3 74.07%
com/devonfw/tools/ide/git/repository/RepositoryProperties.java 6 91.39%
com/devonfw/tools/ide/context/IdeContext.java 9 77.78%
com/devonfw/tools/ide/git/repository/RepositoryCommandlet.java 32 70.98%
com/devonfw/tools/ide/context/AbstractIdeContext.java 150 65.97%
com/devonfw/tools/ide/io/FileAccessImpl.java 190 67.36%
Totals Coverage Status
Change from base Build 22996868406: 0.1%
Covered Lines: 10730
Relevant Lines: 14633

💛 - Coveralls

@hohwille hohwille moved this from 🆕 New to 👀 In review in IDEasy board Mar 12, 2026
@hohwille hohwille merged commit 94a01ce into devonfw:main Mar 12, 2026
4 checks passed
@github-project-automation github-project-automation bot moved this from 👀 In review to ✅ Done in IDEasy board Mar 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request link symlinks and windows junctions repository Commandlet to clone, build or import git repositories

Projects

Status: ✅ Done

Development

Successfully merging this pull request may close these issues.

Bug in link creation Add repositories symlink feature for advanced AI usage

2 participants