You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Pk-vcs-git is lightweight library for execute basic Git VCS operations (merge, branch create etc). It uses [pk-vcs-api](https://github.com/ProjectKaiser/pk-vcs-api) exposing IVCS implementation for Git repositories and [JGit](https://eclipse.org/jgit/) as framework to work with Git repositories.
4
+
scm4j-vcs-git is lightweight library for execute basic Git VCS operations (merge, branch create etc). It uses [scm4j-vcs-api](https://github.com/ProjectKaiser/scm4j-vcs-api) exposing IVCS implementation for Git repositories and [JGit](https://eclipse.org/jgit/) as framework to work with Git repositories.
5
5
Features:
6
6
- Branch create and remove
7
7
- Branch merge with result return (success or list of conflicted files)
@@ -13,19 +13,19 @@ Features:
13
13
14
14
# Terms
15
15
- Workspace Home
16
-
- Home folder of all folders used by vcs-related operations. See [pk-vcs-api](https://github.com/ProjectKaiser/pk-vcs-api) for details
16
+
- Home local folder of all folders used by vcs-related operations. See [scm4j-vcs-api](https://github.com/ProjectKaiser/scm4j-vcs-api) for details
17
17
- Repository Workspace
18
-
-Folder for LWC folders related to Repository of one type. See [pk-vcs-api](https://github.com/ProjectKaiser/pk-vcs-api) for details
18
+
-Local folder for LWC folders related to Repository of one type. See [scm4j-vcs-api](https://github.com/ProjectKaiser/scm4j-vcs-api) for details
19
19
- Locked Working Copy, LWC
20
-
-Folder where vcs-related operations are executed. Provides thread- and process-safe repository of working folders. See [pk-vcs-api](https://github.com/ProjectKaiser/pk-vcs-api) for details
20
+
-Local folder where vcs-related operations are executed. Provides thread- and process-safe repository of working folders. See [scm4j-vcs-api](https://github.com/ProjectKaiser/scm4j-vcs-api) for details
21
21
- Test Repository
22
22
- Git repository which is used to execute functional tests
23
23
- File-based repository is used
24
-
- Generates new before and deletes after each test
24
+
- Generates new one before and deletes after each test
25
25
- Named randomly (uuid is used)
26
26
27
-
# Using pk-vcs-git
28
-
- Add github-hosted pk-vcs-git and pk-vcs-api projects as maven dependencies using [jitpack.io](https://jitpack.io/). As an example, add following to gradle.build file:
27
+
# Using scm4j-vcs-git
28
+
- Add github-hosted scm4j-vcs-git and scm4j-vcs-api projects as maven dependencies using [jitpack.io](https://jitpack.io/). As an example, add following to gradle.build file:
29
29
```gradle
30
30
allprojects {
31
31
repositories {
@@ -35,11 +35,10 @@ Features:
35
35
36
36
dependencies {
37
37
// versioning: master-SNAPSHOT (lastest build, unstable), + (lastest release, stable) or certain version (e.g. 1.1)
Or download release jars from https://github.com/ProjectKaiser/pk-vcs-git/releases, https://github.com/ProjectKaiser/pk-vcs-api/releases
41
+
Or download release jars from https://github.com/ProjectKaiser/scm4j-vcs-git/releases
43
42
- Create Workspace Home instance providing path to any folder as Workspace Home folder path. This folder will contain repositories folders (if different vcs or repositories are used)
- Obtain Repository Workspace from Workspace Home providing a certain Repository's url. The obtained Repository Workspace will represent a folder within Workspace Home dir which will contain all Working Copies relating to the provided VCS Repository
- Use methods of `IVCS` interface. See [pk-vcs-api](https://github.com/ProjectKaiser/pk-vcs-api) for details
58
+
- Use methods of `IVCS` interface. See [scm4j-vcs-api](https://github.com/ProjectKaiser/scm4j-vcs-api) for details
60
59
- Use `vcs.setProxy()` and `vcs.setCredentials()` if necessary
61
60
62
61
# Implementation details
63
62
-[JGit](https://eclipse.org/jgit/) is used as framework to work with Git repositories
64
-
-[Github](https://github.com/) is used as hosting of a Test Repository
65
-
- LWC is obtained for each vcs operation.
63
+
- Each vcs operation is executed within a LWC
66
64
-`getLocalGit(IVCSLockedWorkingCopy wc)` method is used to create a Git implementation to execute vcs operations within `wc` Working Copy
67
-
- If provided LWC is empty then current Test Repository is cloned into this LWC, otherwise just Git object is created
65
+
- If provided LWC is empty then current Test Repository is cloned into this LWC, otherwise existing repository is just switched to required branch
68
66
- If `IVCS.setProxy()` is called then provided proxy is used for each url which contains `repoUrl`
69
67
70
68
# Functional testing
71
69
- New local file-based Test Repository is created before each test and deletes automatically after each test
72
-
- To execute tests just run GitVCSTest class as JUnit test. Tests from VCSAbstractTest class will be executed. See [pk-vcs-test](https://github.com/ProjectKaiser/pk-vcs-test) for details
70
+
- To execute tests just run GitVCSTest class as JUnit test. Tests from VCSAbstractTest class will be executed. See [scm4j-vcs-test](https://github.com/ProjectKaiser/scm4j-vcs-test) for details
0 commit comments