+9
Completed
Support for git-Repo. The multiple repository management tool built by google [SG-11200]
SmartGit should support git-repo. https://code.google.com/p/git-repo/
This is a multiple repository management tool built by google used by several large fortune 500 companies. It provides a easy way to sync a large number of repos (over 100 or more) to a specified commit tag that is specified in a manifest file, which is in it's own repo. This is how we are managing our software build where each project can contain hundreds of repos.
Customer support service by UserEcho
A problem regarding repo tool and SmartGit is, that repo tool creates symlinks for some files from the .git dir to the .repo dir. After opening a repository using SmartGit the config symlink gets replaced with a regular file. This breaks the "repo sync" command, because repo verifies that the symlinks are still correct.
The following symlinks are created by repo tool:
After opening the repository with SmartGit:
So a minimal fix for this should prevent SmartGit from replacing the config symlink with a regular file.
Yes, this is very annoying! Hope the SmartGit devs fix it asap.
Below is my experience using SmartGit v.17.1 on Ubuntu 16.04.3 LTS:
____________________________________________________
SmartGit expects a "real" .git/config file in each project (where it configures the tracking of the local branches for example).
But "repo sync" expects a symbolic link .git/config in each project and each link points to the real config file in .repo/projects/../config.
Starting the SmartGit client, it will automatically overwrite the symbolic link with a real config file.Closing SmartGit and doing then a "repo sync" will cause the following error output:
error.GitError: --force-sync not enabled; cannot overwrite a local work tree. If
you're comfortable with the possibility of losing the work tree's git metadata,
use `repo sync --force-sync yourproject` to proceed.
Using "repo sync --force-sync" will recreate the symbolic link but starting SmartGit will again overwrite it with a real config file.
____________________________________________________
The symlink should be preserved in version 18.1.
Thank you!!