RhodeCode Admin
d300144665
repos: cleannup and fix landing-ref code.
...
with latest git update this exposed a bug when we allowed to set references like tip for git repos
now the defaults are loaded from a single place controlled by default branch for git.
Repos without master are now working just fine with new git and new logic.
2023-01-18 22:10:40 +01:00
RhodeCode Admin
ce7e048a7d
git: allow overriding default master branch with an env variable.
2022-08-11 09:39:24 +02:00
Milka Kuzminski
72085d16b0
pull-requests: fixed problems with unicode characters in branches.
2021-04-08 16:59:58 +02:00
Milka Kuzminski
c0508d2945
git: fix for unicode branches
2021-03-18 15:26:51 +01:00
Milka Kuzminski
723ccff72e
git: fix lookups.
...
- prioritize referenace names over numerical ids
- numerical ids are supported as a fallback if ref matching is unsuccessful.
2021-03-17 17:55:02 +01:00
Milka Kuzminski
2cc353de2c
backends: use reference explicitly to properly translate GIT references to commits such as numeric branches
2021-03-16 23:18:52 +01:00
Marcin Kuzminski
293a3535ae
pull-requests: fix way how pull-request calculates common ancestors.
...
- fixes #5561
- added new preview for size (commits/files) of PRs before opening, this is now based on the special logic that calculates common ancestor and has access to preview diff
- store common ancestor in DB so updates of pull-requests are consistent
2020-05-08 08:43:51 +02:00
Marcin Kuzminski
4b277c70fe
git: fixed readme searcher for libgit2
2020-05-14 09:40:41 +02:00
Marcin Kuzminski
fe96e16646
code: update copyrights to 2020
2020-04-16 00:34:52 +02:00
Marcin Kuzminski
4de6dd537c
pull-requests: fixed case for GIT repositories when a merge check failed due to merge conflicts the pull request wrongly reported missing commits.
...
- we're now searching for dangling commits in a repo that has them and cannot see them because of failed merge checks.
- pull-request: will save metadata during merge simulation so merge conflicts are permanently stored, and showed to all users.
2020-04-08 11:17:10 +02:00
Marcin Kuzminski
bd9e5dc1c3
api: exposed modified added/modified/deleted functions of commit to return only paths.
...
This combined with full text search build for certain repositories that each commit
contains lots of file changes results in *huge* (10x in some cases) performance gain.
2020-03-16 15:09:45 +01:00
Marcin Kuzminski
54a47cd524
git: use safe configparser for git submodules to prevent from errors on submodules with % sign.
...
- This is treated as interpolation sign and can cause errors on regular ConfigParser instance.
2020-02-20 11:28:18 +01:00
Marcin Kuzminski
0bed1e9849
git: fixed issue with git submodules detection.
2019-12-03 14:59:06 +01:00
Marcin Kuzminski
ef0be3b6e8
pull-requests: added nicer formatting for merge conflicting files
2019-11-19 16:38:56 +01:00
Marcin Kuzminski
1eb782ad15
pull-requests: expose unresolved files in merge response.
2019-11-15 01:00:13 +01:00
Daniel Dourvaris
337400c423
git: fixed py3 compat for submodule read.
2019-09-25 19:32:20 +02:00
Marcin Kuzminski
70d5bb346a
shadow-repos: skip init of full repo to generate shadow repo path.
2019-09-20 21:00:31 +02:00
Daniel Dourvaris
ff0c66acf2
diffs: handle paths with quotes in diffs.
2019-08-26 21:49:06 +02:00
Daniel Dourvaris
38b8c11ea5
vcsserver: made binary content check be calculated on vcsserver
...
- now can use caching
- for git/hg there are faster dedicated functions instead of detecting the content
2019-08-23 20:31:43 +02:00
Daniel Dourvaris
de8ff5bcfa
file-nodes: added streaming remote attributes for vcsserver.
...
- this will enable doing a streaming raw content or raw downloads of large files without transfering them over to enterprise for pack & repack using msgpack
- msgpack has a limit of 4gb and generally pack+repack for 2gb is very slow
2019-08-23 19:09:59 +02:00
Marcin Kuzminski
5b07354763
git: replaced some raw subprocess commands with dedicated GIT vcsserver commands.
2019-07-19 13:16:44 +02:00
Marcin Kuzminski
928652312a
core: added more accurate time measurement for called functions
2019-07-17 16:28:41 +02:00
Marcin Kuzminski
cab16efa4e
vcs: optimized pre-load attributes for better caching.
2019-07-17 13:50:26 +02:00
Marcin Kuzminski
0b076e1f65
caches: updated cache backend to new vcsserver caches implementation.
2019-07-17 00:14:26 +02:00
Marcin Kuzminski
ccfa86d740
git: adjusted code for new libgit2 backend
...
- made @CachedProperty use a custom decarator that can do invalidations. This
is required for tests
- made few cleanups of code since we use a simpler libgit2 backend now
- removed some unused obsolete code
2019-07-12 17:39:32 +02:00
Marcin Kuzminski
929deba1dd
tests: fixing tests for pull-requests and changelog(commits)
2019-06-28 14:24:57 +02:00
Marcin Kuzminski
634590913e
commits: updated logic of in-memory-commits, fixed tests and re-architectured a bit how commit_ids are calculated and updated.
...
- it's all part of recent updates on performance, and new commit pages
2019-06-11 12:59:37 +02:00
Marcin Kuzminski
6a2e2f0b94
commits: re-implemented fetching a single commit for git case.
...
- faster using always cache if available
- fixed problems after changes of __bool__ of repo object which always rebuilt cache and this is not the case now
- make few error messages better
2019-06-10 12:28:47 +02:00
Marcin Kuzminski
1b48364bb6
commits: allow tag commit translation to be skipped for faster commit fetching in big chunks.
2019-02-11 19:58:34 +01:00
Marcin Kuzminski
4c846e8f05
git: use rev-list for fetching last commit data inc ase of single commit. It's faster that using git log
2019-02-07 11:31:55 +01:00
Marcin Kuzminski
bd1a9c8201
docs: updated copyrights to 2019
2019-01-02 18:13:27 +01:00
Daniel Dourvaris
599f9b7964
pull-requests: ensure merge response provide more details
...
- refactor merge responses with detailed messages
- fixes #5520
- code cleanups
2018-12-30 11:00:09 +01:00
Marcin Kuzminski
169a8475bb
vcs: rename get_file_history to get_path_history as it better reflects what it does.
2018-12-07 09:43:58 +01:00
Marcin Kuzminski
f3d3f479b4
code: fixed deprecated octal calls for py3 compat.
2018-11-30 11:49:27 +01:00
Daniel Dourvaris
a55c002d0c
git: reset should use explicit -- to distinguish we want reset of branch name.
2018-10-16 17:53:16 +02:00
Marcin Kuzminski
5a4a98b40e
git: use a fetch_sync based creation of remote repos.
...
- skips fragile dulwich code that has problems with large repos
- is in sync with logic that does remote fetch
- is faster and more efficient
2018-09-21 13:35:45 +02:00
Marcin Kuzminski
9effaef334
git: use smarter way for checking if repo is empty. This doesn't spam logs with some dulwich exceptions, we shouldn't really care about here.`
2018-08-11 14:20:58 +02:00
Marcin Kuzminski
426032d9a2
caches: make gevent curl connection cache friendly.
...
- gevent threads needs it's own cache, and connection
- added strict detection of cache problem in gevent curl
2018-08-06 19:28:16 +02:00
Marcin Kuzminski
42c80fe075
shadow-repos: use numeric repo id for creation of shadow repos.
...
- Fixes a problem after rename or move into repository group.
2018-06-21 14:04:06 +02:00
Marcin Kuzminski
367a32a69a
git: use force fetch and update for target ref. This solves a case
...
when in PRs a target is force updated and is out of sync. Before
we used a pull which --ff-only fails obviosly because two are out of
sync. This change uses new logic that resets the target branch according to the
source target branch allowing smooth merge simulation.
2018-06-08 15:42:01 +02:00
Marcin Kuzminski
ce7620668d
git: add option to skip stderr logging.
2018-06-08 11:54:41 +02:00
Marcin Kuzminski
1a3259da85
git: quote fake merge user to prevent this command to potentially fail
2018-06-05 00:07:14 +02:00
Marcin Kuzminski
ede517c6b1
shadow-repos: use safer way to destroy shadow repositories.
...
we had reported errors on removal of shadow repos. Not reproduced, however
suspecting are filesystem sync/symlink race-conditions on shared storage.
End result were existing shadow-repo directories that tricked rhodecode
into thinking shadow repos is existing, but infact it was a dummy
structure semi-removed. Using shutil.move we ENSURE rhodecode doesn't
read those back even if removal fails.
2018-06-05 09:53:29 +02:00
Marcin Kuzminski
3ea058d91b
code: code fixes and small adjustments
2018-02-20 17:49:26 +01:00
Marcin Kuzminski
f689a025ce
vcs: use proper attributes/inits on base and child classes.
2018-02-20 17:47:18 +01:00
Marcin Kuzminski
b2c7cd47ea
pull-request, git: add option to skip --ff-only
2018-02-07 18:26:38 +01:00
Marcin Kuzminski
fe5628ee44
mercurial: fix new 4.4.X code change that does strict requirement checks.
...
in few cases we init bare repos for checking, and we should use defauls that
always work.
- fixes #5433
2018-02-01 18:25:24 +01:00
Marcin Kuzminski
c36b8f3d79
git: use force branch checkout to prevent cases when .gitattributes modifies
...
files by specific rule and then checkout is blocked by potential file conflicts.
2018-01-29 14:37:03 +01:00
Marcin Kuzminski
0bc9813397
git: allow force checkouts for git repository
2018-01-23 22:06:41 +01:00
Marcin Kuzminski
93a93bbb19
scm: added push options for Mercurial and Git to allow remote repository sync.
2018-01-22 18:15:51 +01:00