Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Debian patchset against 0.4.9 release #639

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open

Conversation

spog
Copy link
Contributor

@spog spog commented Nov 16, 2024

Commits of this pull request represent the state of debian patches needed for the 0.4.9 upstream release. There is actually another patch, which fixes the broken test 'push-after-init' in 0.4.9, but that had already been fixed upstream after 0.4.9 (b00d41b, 57de7d6).

There is still an open question about howto address Windows compatibility in some of the patches.
Anyway, here is the summary of what we want to achieve:

fixing bash-completion integration with git
running tests in predictable git environment
generating test git repos instead of commited binaries

p.s.
I accidently closed original PR637, since i had to reset my master branch to latest upstream.

spog added 2 commits October 25, 2024 13:48
Using the 'make install' method, the default 'git-core' location
of git-subrepo executable does not automatically integrate git-subrepo
into git's own bash-completion. This change moves git-subrepo executable
with support scripts into /usr/share/git-subrepo. Then a symlink to the
'git-subrepo' executable script has been added into /usr/bin to achieve
recognition of the 'git subrepo' sub-command under the git bash-completion
(through git's: --list-cmds=...,other,...).

Additional adjustment of Makefile and git-subrepo script were made to
make Makefile more generic and to make DESTDIR usage together with
potentially overridden install vars more manageable.
By overriding INSTALL_LIB and INSTALL_EXT to the same path, we achieve
removal of the unnecessary 'git-subrepo.d' subdirectory inside the
/usr/share/git-subrepo path.

Note that non 'make install' ways of installation should work as
before but without the need for the GIT_SUBREPO_ROOT variable.
Potentially, if 'realpath' addition in git-sibrepo change isn't available
on all target systems, readlink could still be used instead.
Initialize own git repo, if project isn't a git clone.
Local git config 'autocrlf' has been removed.
Local default branches were set for all test repos.
Tests were adapted for all local git configurations.
Run tests with fixed locale.
@spog spog force-pushed the pr637 branch 27 times, most recently from 3076c5f to 11af447 Compare November 17, 2024 19:55
@spog spog force-pushed the pr637 branch 4 times, most recently from ac9d7d1 to 1e1b3fc Compare November 24, 2024 11:04
@spog spog force-pushed the pr637 branch 3 times, most recently from 58363aa to 0f70594 Compare December 1, 2024 21:34
spog added 4 commits December 1, 2024 22:48
Instead of having test repos: foo, bar and init committed in a
binary form, generate them using the test/gen* scripts before
starting the first 'test' session. Running 'make clean' removes
the generated test repos.
Disabling system/global git configs and setting default project-wide GIT
configuration for the duration of running tests. Temporary GIT
configuration is set inside git-subrepo project-top-dir.
Also, initialize own git repo, if project isn't a git clone and ensure
that the project is not in a GIT detached HEAD state.
Using 'readlink -f' instead of 'realpath'.
Added pure shell function to get relative path between two dirs.
Set LC_ALL only for Linux.
Echo 'uname' on 'make test'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant