GIT Plugin/en: Unterschied zwischen den Versionen
Cg (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „== Introduction == The plugin provides git-functionality for testsuites. For proper work you need a remote-repository and access to it without entering user…“) |
Alkurz (Diskussion | Beiträge) |
||
Zeile 5: | Zeile 5: | ||
For proper work you need a remote-repository and access to it without entering user name and password. |
For proper work you need a remote-repository and access to it without entering user name and password. |
||
Before starting a git-command, that affects your testsuite-files, a copy of these files will be created. They become |
Before starting a git-command, that affects your testsuite-files, a copy of these files will be created. They become the suffix ".last.sav". |
||
The git-functionality will not work, if you use sub-directories in your project. The .git-directory must be in the same directory as your files of the testsuites. |
|||
Zeile 20: | Zeile 22: | ||
Provides the functionality of 'git clone': Cloning a repository into a a new local directory. |
Provides the functionality of 'git clone': Cloning a repository into a a new local directory. |
||
A dialog asks for the url of the remote repository. |
A dialog box asks for the url of the remote repository. |
||
Executed git-command: ''git clone <repository-url>''. |
Executed git-command: ''git clone <repository-url>''. |
||
Zeile 27: | Zeile 29: | ||
=== Add === |
=== Add === |
||
Before you can commit your new or changed testsuite, you have add the file to the git index |
Before you can commit your new or changed testsuite, you have add the file to the git index. |
||
Executed git-command: ''git add <testsuite |
Executed git-command: ''git add <testsuite>''. |
||
<!-- git add: Add file contents to the index --> |
<!-- git add: Add file contents to the index --> |
||
=== Unstage === |
=== Unstage === |
||
Removes an added testsuite from index. |
Removes an added testsuite from index. It is still modified, but not destined for commit. |
||
Executed git-command: ''git reset HEAD <testsuite |
Executed git-command: ''git reset HEAD <testsuite>'' |
||
=== Add All and Commit... === |
=== Add All and Commit... === |
||
Adds all modified files and commits them in one step. You will be asked for |
Adds all modified files and commits them in one step. You will be asked for entering a commit-message. |
||
Executed git-command: ''git commit -a -m "< |
Executed git-command: ''git commit -a -m "<commit-message>"'' |
||
=== Commit.. === |
=== Commit.. === |
||
Zeile 48: | Zeile 50: | ||
Commits all added files. A message-box will appear to enter the commit-message. An empty commit-message is not allowed. |
Commits all added files. A message-box will appear to enter the commit-message. An empty commit-message is not allowed. |
||
Executed git-command: ''git commit -m "< |
Executed git-command: ''git commit -m "<commit-message>"'' |
||
=== Commit (amend) === |
=== Commit (amend) === |
||
Zeile 60: | Zeile 62: | ||
=== Discard changes in working directory === |
=== Discard changes in working directory === |
||
If you get conflicts by changing the branch, because |
If you get conflicts by changing the branch, because of uncommitted changes in some of your files, you can discard the changes. |
||
Attention: Your changes are lost! |
|||
The other possibility is to commit your changes. |
The other possibility is to commit your changes. |
||
Executed git-command: ''git checkout -- < |
Executed git-command: ''git checkout -- <testsuite>''. |
||
== Branches == |
== Branches == |
||
=== Create Local Branch === |
=== Create Local Branch... === |
||
Creates a new local branch with a given name. |
|||
Executed git-command: ''git checkout -b < |
Executed git-command: ''git checkout -b <branch>''. |
||
=== Delete Local Branch... === |
|||
Deletes a local branch. |
|||
The branch must be merged into the current branch. Otherwise the deletion will be refused. |
|||
Executed git-command: ''git branch -d <branch>''. |
|||
=== Checkout Branch... === |
=== Checkout Branch... === |
||
Checks out a branch. In a dialog you can choose the desired branch. |
Checks out a branch. In a dialog box you can choose the desired branch. |
||
If you have uncommitted changes, git rejects the checkout of the new branch. You can discard (see below) or commit your changes and try again. |
If you have uncommitted changes, git rejects the checkout of the new branch. You can discard (see below) or commit your changes and try again. |
||
Executed git-command: ''git checkout < |
Executed git-command: ''git checkout <branch>''. |
||
=== Push === |
=== Push === |
||
To publish your test- |
To publish your test-suites to the remote-repository you have to push it. |
||
Executed git-command: ''git push''. |
Executed git-command: ''git push''. |
||
Zeile 93: | Zeile 105: | ||
Incorporates changes from the remote repository into the current branch. |
Incorporates changes from the remote repository into the current branch. |
||
Because automatically merge by git isn't possibly, you can get merge-conflicts. To avoid this, better use '''''Merge'''''. If you get unresolvable conflicts, you can reset the files wit '''''Merge Abort after Conflict''''' and try |
Because automatically merge by git isn't possibly, you can get merge-conflicts. To avoid this, better use '''''Merge'''''. If you get unresolvable conflicts, you can reset the files wit '''''Merge Abort after Conflict''''' and try again with '''''Merge'''''. |
||
Executed git-command: ''git pull''. |
Executed git-command: ''git pull''. |
||
Zeile 106: | Zeile 118: | ||
Executed git-command: ''git fetch''. |
Executed git-command: ''git fetch''. |
||
You can compare and merge your testsuite in three different kinds. |
|||
In every case the ''Expecco-ProjectDifferenceBrowser'' will open. After merging you have to save, add and commit your testsuite (and then push). |
|||
=== Merge === |
=== Merge === |
||
Merges with HEAD of the current branch. (Only possible on remote-branches.) |
|||
You get the newest version of the current branch from the repository with the changes done by others. If there exists not automatically mergeable differences between the two version the ''Expecco-ProjectDifferenceBrowser'' will open and you can take over your changes. |
You get the newest version of the current branch from the repository with the changes done by others. If there exists not automatically mergeable differences between the two version the ''Expecco-ProjectDifferenceBrowser'' will open and you can take over your changes. |
||
Zeile 121: | Zeile 130: | ||
=== Merge with Branch... === |
=== Merge with Branch... === |
||
Merges the |
Merges the contents from another branch, you select in a dialog box, to your testsuites. |
||
This command doesn't change the branch in your working directory. |
This command doesn't change the branch in your working directory. |
||
Executed git-command: ''git |
Executed git-command: ''git fetch'' |
||
''git |
''git merge <branch>'' |
||
''git checkout <currentbranch>'' |
|||
''git merge'' |
|||
=== Merge Commit === |
=== Merge Commit === |
||
Zeile 143: | Zeile 150: | ||
== Status |
== Status information == |
||
=== Show Log === |
=== Show Log === |
||
Displays a dialog with the commit |
Displays a dialog box with the commit log of the current branch. |
||
Executed git-command: ''git log'' |
Executed git-command: ''git log'' |
Version vom 31. Juli 2019, 09:57 Uhr
Inhaltsverzeichnis
Introduction[Bearbeiten]
The plugin provides git-functionality for testsuites.
For proper work you need a remote-repository and access to it without entering user name and password.
Before starting a git-command, that affects your testsuite-files, a copy of these files will be created. They become the suffix ".last.sav".
The git-functionality will not work, if you use sub-directories in your project. The .git-directory must be in the same directory as your files of the testsuites.
Initialization[Bearbeiten]
Administration Configuration[Bearbeiten]
Sets the global git parameters for user name and mail-address.
Executed git-command: git config --global user.name=<user name>, git config --global user.email=<mail address>.
Administration Clone[Bearbeiten]
Provides the functionality of 'git clone': Cloning a repository into a a new local directory. A dialog box asks for the url of the remote repository.
Executed git-command: git clone <repository-url>.
Adding and Committing[Bearbeiten]
Add[Bearbeiten]
Before you can commit your new or changed testsuite, you have add the file to the git index.
Executed git-command: git add <testsuite>.
Unstage[Bearbeiten]
Removes an added testsuite from index. It is still modified, but not destined for commit.
Executed git-command: git reset HEAD <testsuite>
Add All and Commit...[Bearbeiten]
Adds all modified files and commits them in one step. You will be asked for entering a commit-message.
Executed git-command: git commit -a -m "<commit-message>"
Commit..[Bearbeiten]
Commits all added files. A message-box will appear to enter the commit-message. An empty commit-message is not allowed.
Executed git-command: git commit -m "<commit-message>"
Commit (amend)[Bearbeiten]
Replace the tip of the current branch by creating a new commit. The new commit has the same parents and author as the current one.
You should understand the implications of rewriting history if you amend a commit that has already been published!
Executed git-command: git commit --amend.
Discard changes in working directory[Bearbeiten]
If you get conflicts by changing the branch, because of uncommitted changes in some of your files, you can discard the changes.
Attention: Your changes are lost!
The other possibility is to commit your changes.
Executed git-command: git checkout -- <testsuite>.
Branches[Bearbeiten]
Create Local Branch...[Bearbeiten]
Creates a new local branch with a given name.
Executed git-command: git checkout -b <branch>.
Delete Local Branch...[Bearbeiten]
Deletes a local branch.
The branch must be merged into the current branch. Otherwise the deletion will be refused.
Executed git-command: git branch -d <branch>.
Checkout Branch...[Bearbeiten]
Checks out a branch. In a dialog box you can choose the desired branch.
If you have uncommitted changes, git rejects the checkout of the new branch. You can discard (see below) or commit your changes and try again.
Executed git-command: git checkout <branch>.
Push[Bearbeiten]
To publish your test-suites to the remote-repository you have to push it.
Executed git-command: git push.
Pull[Bearbeiten]
Incorporates changes from the remote repository into the current branch.
Because automatically merge by git isn't possibly, you can get merge-conflicts. To avoid this, better use Merge. If you get unresolvable conflicts, you can reset the files wit Merge Abort after Conflict and try again with Merge.
Executed git-command: git pull.
Comparing and merging[Bearbeiten]
Fetch[Bearbeiten]
Downloads objects and refs from the remote repository, but don't change the local files.
Executed git-command: git fetch.
Merge[Bearbeiten]
Merges with HEAD of the current branch. (Only possible on remote-branches.)
You get the newest version of the current branch from the repository with the changes done by others. If there exists not automatically mergeable differences between the two version the Expecco-ProjectDifferenceBrowser will open and you can take over your changes.
Executed git-command: git fetch git merge
Merge with Branch...[Bearbeiten]
Merges the contents from another branch, you select in a dialog box, to your testsuites.
This command doesn't change the branch in your working directory.
Executed git-command: git fetch git merge <branch>
Merge Commit[Bearbeiten]
You can finish the merge with a final 'Merge Commit. You maybe override changes from others.
Executed git-command: git commit -a --no-edit
Merge Abort after Conflict[Bearbeiten]
If you have unresolvable conflicts after pulling, you can abort the merge. You can retry the merge with Merge.
Executed git-command: git merge --abort
Status information[Bearbeiten]
Show Log[Bearbeiten]
Displays a dialog box with the commit log of the current branch.
Executed git-command: git log
Show Status[Bearbeiten]
Shows the working tree status.
Executed git-command: git status
Not implemented[Bearbeiten]
- Drop branches.
- Use of the git-stash-command.