forgejo/modules/git
zeripath 7a7f56044a
Adopt repositories (#12920)
* Don't automatically delete repository files if they are present

Prior to this PR Gitea would delete any repository files if they are
present during creation or migration. This can in certain circumstances
lead to data-loss and is slightly unpleasant.

This PR provides a mechanism for Gitea to adopt repositories on creation
and otherwise requires an explicit flag for deletion.

PushCreate is slightly different - the create will cause adoption if
that is allowed otherwise it will delete the data if that is allowed.

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Update swagger

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Fix tests and migrate overwrite

Signed-off-by: Andrew Thornton <art27@cantab.net>

* as per @lunny

Only offer to adopt or overwrite if the user can do that.

Allow the site administrator to adopt or overwrite in all
circumstances

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Use setting.Repository.DefaultBranch for the default branch

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Always set setting.Repository.DefaultBranch

Signed-off-by: Andrew Thornton <art27@cantab.net>

* update swagger

Signed-off-by: Andrew Thornton <art27@cantab.net>

* update templates

Signed-off-by: Andrew Thornton <art27@cantab.net>

* ensure repo closed

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Rewrite of adoption as per @6543 and @lunny

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Apply suggestions from code review

* update swagger

Signed-off-by: Andrew Thornton <art27@cantab.net>

* missing not

Signed-off-by: Andrew Thornton <art27@cantab.net>

* add modals and flash reporting

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Make the unadopted page searchable

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Add API

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Fix swagger

Signed-off-by: Andrew Thornton <art27@cantab.net>

* fix swagger

Signed-off-by: Andrew Thornton <art27@cantab.net>

* Handle empty and non-master branched repositories

Signed-off-by: Andrew Thornton <art27@cantab.net>

* placate lint

Signed-off-by: Andrew Thornton <art27@cantab.net>

* remove commented out code

Signed-off-by: Andrew Thornton <art27@cantab.net>

Co-authored-by: techknowlogick <techknowlogick@gitea.io>
2020-09-25 07:09:23 +03:00
..
pipeline Add basic repository lfs management (#7199) 2019-10-28 18:31:55 +00:00
tests/repos Fix reading git notes from nested trees (#8026) 2019-09-12 09:14:41 +08:00
blame_test.go Ensure BlameReaders close at end of request (#12102) 2020-07-01 14:01:17 +01:00
blame.go Ensure BlameReaders close at end of request (#12102) 2020-07-01 14:01:17 +01:00
blob_test.go Add Close() method to gogitRepository (#8901) 2019-11-13 07:01:19 +00:00
blob.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
cache.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
command_test.go Fix nondeterministic behavior (#9341) 2019-12-13 17:03:38 +08:00
command.go refactor repo_stats to use os.pipe (#11726) 2020-09-05 16:12:14 -04:00
commit_archive.go Set context for running CreateArchive in to that of the request (#12555) 2020-08-28 09:55:12 +03:00
commit_info_test.go Re-attempt to delete temporary upload if the file is locked by another process (#12447) 2020-08-11 21:05:34 +01:00
commit_info.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
commit_reader.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
commit_test.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 2019-03-27 17:33:00 +08:00
commit.go [Vendor] Switch go-version lib (#12719) 2020-09-05 12:42:58 -04:00
diff_test.go Some refactor on git diff and ignore getting commit information failed on migrating pull request review comments (#9996) 2020-01-28 08:02:03 +00:00
diff.go Some refactor on git diff and ignore getting commit information failed on migrating pull request review comments (#9996) 2020-01-28 08:02:03 +00:00
error.go Handle push rejection in branch and upload (#10854) 2020-03-28 01:13:18 -03:00
git_test.go Graceful: Xorm, RepoIndexer, Cron and Others (#9282) 2019-12-15 09:51:28 +00:00
git.go [Vendor] Switch go-version lib (#12719) 2020-09-05 12:42:58 -04:00
hook.go fix typos (#12545) 2020-08-20 18:41:08 +01:00
notes_test.go Add Close() method to gogitRepository (#8901) 2019-11-13 07:01:19 +00:00
notes.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
parse_test.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
parse.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
README.md move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 2019-03-27 17:33:00 +08:00
ref.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 2019-03-27 17:33:00 +08:00
repo_attribute.go [Vendor] Switch go-version lib (#12719) 2020-09-05 12:42:58 -04:00
repo_blame.go Removed unnecessary conversions (#7557) 2019-07-23 19:50:39 +01:00
repo_blob_test.go Add Close() method to gogitRepository (#8901) 2019-11-13 07:01:19 +00:00
repo_blob.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
repo_branch_test.go Add Close() method to gogitRepository (#8901) 2019-11-13 07:01:19 +00:00
repo_branch.go Adopt repositories (#12920) 2020-09-25 07:09:23 +03:00
repo_commit_test.go Add Close() method to gogitRepository (#8901) 2019-11-13 07:01:19 +00:00
repo_commit.go [Vendor] Switch go-version lib (#12719) 2020-09-05 12:42:58 -04:00
repo_commitgraph.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
repo_compare_test.go Re-attempt to delete temporary upload if the file is locked by another process (#12447) 2020-08-11 21:05:34 +01:00
repo_compare.go Git 2.28 no longer permits diff with ... on unrelated branches (#12364) 2020-07-29 13:53:04 -04:00
repo_gpg.go Sign merges, CRUD, Wiki and Repository initialisation with gpg key (#7631) 2019-10-16 14:42:42 +01:00
repo_hook.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 2019-03-27 17:33:00 +08:00
repo_index.go Be more strict with git arguments (#7715) 2019-08-05 21:39:39 +01:00
repo_language_stats.go Use enry language type to detect special languages (#11974) 2020-06-19 15:24:03 +03:00
repo_object.go Fixes #7292 - API File Contents bug (#7301) 2019-06-29 16:51:10 -04:00
repo_ref_test.go Add Close() method to gogitRepository (#8901) 2019-11-13 07:01:19 +00:00
repo_ref.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
repo_stats_test.go Add top author stats to activity page (#9615) 2020-01-20 12:07:30 +02:00
repo_stats.go refactor repo_stats to use os.pipe (#11726) 2020-09-05 16:12:14 -04:00
repo_tag_test.go Re-attempt to delete temporary upload if the file is locked by another process (#12447) 2020-08-11 21:05:34 +01:00
repo_tag.go [Vendor] Switch go-version lib (#12719) 2020-09-05 12:42:58 -04:00
repo_test.go Add Close() method to gogitRepository (#8901) 2019-11-13 07:01:19 +00:00
repo_tree.go Add configurable Trust Models (#11712) 2020-09-20 00:44:55 +08:00
repo.go Handle push rejection in branch and upload (#10854) 2020-03-28 01:13:18 -03:00
sha1.go Fix issue with DiffIndex on initial commit (#11677) 2020-05-29 22:14:00 +01:00
signature.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
submodule_test.go Compare SSH_DOMAIN when parsing submodule URLs (#12753) 2020-09-07 20:08:10 -04:00
submodule.go Compare SSH_DOMAIN when parsing submodule URLs (#12753) 2020-09-07 20:08:10 -04:00
tag.go Fixes #2738 - Adds the /git/tags API endpoint (#7138) 2019-06-08 17:31:11 +03:00
tree_blob.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
tree_entry_test.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
tree_entry.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
tree.go Migrate to go-git/go-git v5.0.0 (#10735) 2020-03-17 12:19:58 -04:00
utils_test.go Fix ref links in issue overviews for tags (#8742) 2020-05-14 18:55:43 -04:00
utils.go Fix ref links in issue overviews for tags (#8742) 2020-05-14 18:55:43 -04:00

Git Module

This module is merged from https://github.com/go-gitea/git which is a Go module to access Git through shell commands. Now it's a part of gitea's main repository for easier pull request.