Commit graph

60 commits

Author SHA1 Message Date
c37f2aaca3 pgit.sh: Deprecate CentOS 7

CentOS 7's Git doesn\'t understand -C, consider that obsolete and don't cd into a directory any longer.

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-11-20 16:15:26 +01:00
e46ab382e9 pgit.sh: Set http.proactiveAuth=basic

For git clone, use and persist the http.proactiveAuth=basic config option, because it's needed for janware.com servers.

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-11-20 15:07:17 +01:00
b7833c928a pgit.sh fix: --create-remote-user-repos parsed incorrectly

--create-remote-user-repos is not recognized because of is not recognized because of a typo, fix that.

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-11-18 21:12:54 +01:00
dc5515df09 pgit.sh clone: Use jw-projects.py instead of git-srv-admin.sh

Replace git-srv-admin.sh list-personal-projects by the more universal "jw-projects.py list-repos" for enumerating repo names. This is a step towards supporting Git servers other than janware.com.

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-11-18 15:40:27 +01:00
1b21e33ded pgit.sh: Support --remote-base

pgit.sh has ssh://$login@git.janware.com/srv/git/$fromuser/proj/$reponame hard-coded as the remote Git URLs of every cloned project.

This commit adds support for the global option --remote-base. Passing it changes the URL to <remote-base>/$fromuser/$reponame..

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-11-18 15:25:46 +01:00
aed14fd480 pgit.sh clone: Support --create-remote-user-repos

Add support for --create-user-repos to pgit.sh. It controls whether or not personal remote repositories on janware.com are created when cloning from another user.

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-11-18 15:37:03 +01:00
b82d4249f9 pgit.sh: Remove CVS support

Don't identify projects directory by a the presence of a correct CVS subdirectory any longer.

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-11-17 11:30:59 +01:00
5b758023ac pgit.sh: Re-add scripts/pgit.sh

pgit.sh is not indispensable for building a projects directory, but it is necessary for some convenience targets in projects-dir.mk.

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-11-14 15:38:54 +01:00
bc883deed4 Everywhere: Remove everything non-essential for "make clean all"

This commit removes everything not strictly necessary for running "make clean all" inside jw-build.

packaging jw-devtest. This cuts the repo down from 24077 to 4725 lines of code.

The idea is to

1) Further remove bloat from the remaining bits

2) Re-add what's necessary to build and package other essential repos.

The decision should be based on whether or not jw-build can also be useful in a non-janware context.

Signed-off-by: Jan Lindemann <jan@janware.com>
2025-11-14 15:02:56 +01:00
5e9168480a project-dirs.mk / pgit.sh: Add support for offlining projects

This adds support for the variable OFFLINE_PROJECTS in projects-dir.mk and the PGIT_IGNORE environment variable. Both go hand in hand and do what their names insinuate. OFFLINE_PROJECTS is initialized from EXCLUDE_FROM_BUILD, which in turn is initialized from exclude.txt and friends.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-05-10 08:07:22 +00:00
17244e9a3f pgit.sh: Add support for target refspec to PGIT_CLONE_FROM_USER

PGIT_CLONE_CLONE_FROM_USER now supports optional suffixes of the form [:src-ref[:dst-ref]]. If present, src-ref specifies the remote branch pgit.sh tries to fetch, and dst-ref the local branch it tries to fetch into. src-ref defaults to "master" (as it was before) and dst-ref to nothing, i.e. no head-update of any local branch.

Signed-off-by: Jan Lindemann <jan@janware.com>
2020-02-24 14:35:26 +00:00
e3469d0ac0 pgit.sh: Rename clone remote user-xxx to jw-xxx

This looks more understandable for non-janware user cases

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-10-11 15:28:05 +00:00
db6bdc454e scm.sh + pgit.sh: Add on-demand to recurse-submodules

git pull, push, fetch use --recurse-submodules, which is non-optional for push. Added --recurse-submodules=on-demand to all for consistency.

Signed-off-by: Jan Lindemann <jan@janware.com>
2019-10-09 15:16:25 +00:00
098653aed2 pgit.sh: Add --recurse-submodules to all git fetch, pull and push
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-02-07 11:04:45 +00:00
559198f765 pgit.sh: Run update-descriptions after push during clone
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-01-04 18:06:00 +00:00
00a52c9039 pgit.sh: Don't pull fetchuser into current master, only fetch
Signed-off-by: Jan Lindemann <jan@janware.com>
2019-01-03 12:10:00 +00:00
ce5111e7eb pgit.sh: Fix detection of pending commits

git diff exit status just catches file changes, not not file additions, removals or renames.

Signed-off-by: Jan Lindemann <jan@janware.com>
2018-12-16 11:12:22 +00:00
be98a4049c pgit.sh: Don't uncoditionally set -e

Base that on whether or not PGIT_KEEP_GOING is defined

Signed-off-by: Jan Lindemann <jan@janware.com>
2018-12-12 16:53:27 +00:00
adb18caa13 make, scripts: git submodule update --init --recursive

Consistently run git submodule update with --init --recursive.

Signed-off-by: Jan Lindemann <jan@janware.com>
2018-11-18 18:31:30 +00:00
fb7df55e6f pgit.sh: Add iteration counter to logging
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-10-23 11:45:10 +00:00
20f675c280 make, scripts: Fix CentOS 7 build
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-10-13 10:46:02 +00:00
fce5e7b8c1 pgit.sh: Reduce verbosity
Signed-off-by: Jan Lindemann <jan@janware.com>
2018-03-06 14:45:45 +00:00
8e879fb51a pgit.sh commit: Add support for --cvs
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-10-06 14:15:54 +00:00
b3f12a6c35 pgit.sh: Add support for defining pdir and pdirs in the environment
TODO: These variables seem a bit short for the environment
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-06-17 09:16:44 +00:00
763d18f350 pgit.sh: Make commit check if there's a diff before running commit
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-06-12 09:11:28 +00:00
cf4308e2c5 pgit.sh: Add support for environment variable PGIT_KEEP_GOING

Sadly, a commit returns 1 if there's nothing to commit, which makes pgit.sh error out of the project loop, which is run with set -e. This option disables -e.

OTOH, pgit.sh commit could check for a diff and only run git commit if there is a diff.

Signed-off-by: Jan Lindemann <jan@janware.com>
2017-06-12 08:59:08 +00:00
e1200746e3 pgit.sh: Use plain directory path for diff prefix

The diff source and destination in diff used to be a/path/to/file.txt and b/path/to/file.txt which differed from cvs diff -u. Changed that, now make diff in the toplevel directory creates usable patches for all sources.

Signed-off-by: Jan Lindemann <jan@janware.com>
2017-06-01 08:41:00 +00:00
bab0c1f69f pgit.sh: Some experiments to output formatting
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-04-28 11:37:15 +00:00
7116403214 pgit.sh: Prepare submodules, too
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-04-27 13:34:50 +00:00
57c6132608 pgit.sh: Remove some markers to clean up output
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-04-21 16:59:30 +00:00
f9c20f6a64 pgit.sh: Log more git commands
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-04-21 16:47:20 +00:00
03dde99cc1 pgit.sh: Be more verbose about git commands
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-04-21 15:20:07 +00:00
6a119077d9 pgit.sh: Rename other user's remote to user-xxx
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-04-14 12:03:22 +00:00
8477f45390 projects-dir.mk, projs-dir.mk, pgit.sh: Set CVS_RSH unconditionally to wrapper

Problem is, the OS cvs package sets the environment variable to "ssh" in a profile script. Overriding this to speed things up.

Signed-off-by: Jan Lindemann <jan@janware.com>
2017-04-12 18:21:20 +00:00
76b6084b43 pgit.sh: Fix warning on nonexistent ls */.git
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-04-12 09:29:58 +00:00
55fa0eaec5 $(TOPDIR), make, scripts: Search-and-replace ytools -> jw-build

This project was copied from ytools, with anything not related to providing build-functionality left out. This commit replaces the occurences of ytools with jw-build, and removes some but most certainly not all legacy ytools references.

Signed-off-by: Jan Lindemann <jan@janware.com>
2017-04-07 12:15:48 +00:00
61555328af pgit.sh: Move dependencies from proj.mk into project.conf
Signed-off-by: Jan Lindemann <jan@janware.com>
2017-03-27 10:10:28 +00:00
0df50c415d pgit.sh: Ongoing additions
Signed-off-by: Jan Lindemann <jan@janware.com>
2016-12-07 08:05:50 +00:00
a18523b108 pgit.sh: Add git fetch origin master during initialization from others
Signed-off-by: Jan Lindemann <jan@janware.com>
2016-12-06 19:58:54 +00:00
c14c611c3f pgit.sh: Additions to project fetching from others

- Run git submodule init / update also if project existed - After newly fetching from others: - Git branch --set-upstream-to origin/master - Git push

Signed-off-by: Jan Lindemann <jan@janware.com>
2016-12-06 18:49:14 +00:00
66df5381f4 pgit.sh, *.mk: Fix wrong username in list-personal-projects

Fix: ssh git.jannet.de git-srv-admin.sh -j list-personal-projects is called with wrong username.

Signed-off-by: Jan Lindemann <jan@janware.com>
2016-12-06 17:53:52 +00:00
521c7752bb pgit.sh: Add support for pulling other user's projects as branch into existing
Signed-off-by: Jan Lindemann <jan@janware.com>
2016-11-26 11:49:31 +00:00
e5bad17e18 pgit.sh fixed cloning from other users: Pushurl and creation of own repo
Signed-off-by: Jan Lindemann <jan@janware.com>
2016-11-26 11:32:47 +00:00
fa7059b706 pgit.sh: Replace PGIT_LOGIN by JANWARE_USER
Signed-off-by: Jan Lindemann <jan@janware.com>
2016-11-17 22:36:40 +00:00
0e52bbcc42 pgit.sh: Add distinction between CLONE_FROM_USER and PGIT_LOGIN
Signed-off-by: Jan Lindemann <jan@janware.com>
2016-11-17 22:35:42 +00:00
6b1efdafa3 pgit.sh: Error out in more for-projects loops on error
Signed-off-by: Jan Lindemann <jan@janware.com>
2016-09-30 11:25:39 +00:00
3aefb90ae7 pgit.sh: Fix some situation in which git errors were ignored and iterated on
Signed-off-by: Jan Lindemann <jan@janware.com>
2016-09-16 14:37:18 +00:00
1b5e66808a pgit.sh: Doesn't fail clone over git-srv-admin.sh fails

pgit.sh clone does not error out in clone if git-srv-admin.sh list-personal-projects reports an error, fix that.

Signed-off-by: Jan Lindemann <jan@janware.com>
2016-07-26 13:46:39 +00:00
1481fd2df8 pgit.sh: Another attempt on guessing project directory
Signed-off-by: Jan Lindemann <jan@janware.com>
2016-04-20 16:17:30 +00:00
768c3d6133 pgit.sh: Improved pdir guessing
Signed-off-by: Jan Lindemann <jan@janware.com>
2016-04-20 14:35:23 +00:00