KDevelop5/Manual/Working with version control systems/da: Difference between revisions

From KDE UserBase Wiki
(Importing a new version from external source)
(Created page with "===Git===")
 
(12 intermediate revisions by 2 users not shown)
Line 3: Line 3:
== Arbejdet med versionskontrolsystemer ==
== Arbejdet med versionskontrolsystemer ==


If you are working with larger projects, chances are that the source code is managed by a version control system such as [http://subversion.apache.org subversion] or [http://git-scm.com/ git]. The following description is written with '''subversion''' in view but will be equally true if you use '''git''' or any other supported version control system.
Hvis du arbejder med store projekter, så bliver kildekoden sandsynligvis håndteret af et versionskontrolsystem så som [http://subversion.apache.org subversion] eller [http://git-scm.com/ git]. Det følgende er skrevet med '''subversion''' i tankerne, men vil være lige så sandt, hvis du bruger '''git''' eller et andet understøttet versionskontrolsystem.


First not that if the directory in which a project is located is under version control, '''KDevelop''' will automatically notice. In other words: It is not necessary that you tell '''KDevelop''' to check out a copy itself when setting up your project; it is ok to point '''KDevelop''' at a directory into which you have previously checked out a copy from the repository. If you have such a directory under version control, open the '''Projects''' tool view. There are then a number of things you can do:
===Subversion===


* If your directory has become outdated, you can update it from the repository: Click on the project name with the right mouse button, go to the menu <menuchoice>Subversion</menuchoice> and select <menuchoice>Update</menuchoice>. This will bring all files that belong to this project up to date with respect to the repository.
Bemærk først, at hvis mappen, som projektet er placeret i er under versionskontrol, så vil '''KDevelop''' automatisk bemærke det. Med andre ord behøver du ikke at bede '''KDevelop''' om at tjekke en kopi ud, når du opsætter dit projekt. Det er i orden at dirigere '''KDevelop''' til en mappe, til hvilken du tidligere har tjekket en kopi fra et arkiv ud. Hvis du har en mappe under versionskontrol, så åbn værktøjsvisningen '''Projekter'''. Der er flere ting du kan gøre:


* If you want to restrict this action to individual subdirectories or files, then expand the tree view of this project to the level you want and right click on a subdirectory or file name, then do the same as above.
* Hvis din mappe er blevet forældet, så kan du opdatere den fra arkivet: Højre-klik på projektets navn og vælg <menuchoice>Subversion</menuchoice> og vælg <menuchoice>Opdatér</menuchoice>. Dette vil synkronisere alle filerne i dette projekt med arkivet.
 
* Hvis du ønsker at begrænse denne handling til individuelle undermapper eller filer, så udvid projektets trævisning til det niveau, du ønsker, højreklik på undermappen eller filen og gør det samme som ovenfor.


[[Image:kdevelop-8.png|thumb|600px]]
[[Image:kdevelop-8.png|thumb|600px]]


* If you've edited one or more files, expand the view of this project to the directory in which these files are located and right click on the directory. This gives you a menu item <menuchoice>Subversion</menuchoice> that offers you different choices. Choose <menuchoice>Compare to base</menuchoice> to see the differences between the version you have edited and the version in the repository you had previously checked out (the revision "base"). The resulting view will show the "diffs" for all files in this directory.
* Hvis du har redigeret en eller flere filer, så udvid projektvisningen til mappen, hvor disse filer findes og højreklik på den. Menupunktet <menuchoice>Subversion</menuchoice> giver dig forskellige muligheder. Vælg <menuchoice>Sammenlign med Base...</menuchoice> for at se forskellene imellem den version, som du har redigeret og den version, som er i det arkiv, som du tidligere tjekkede projektet ud fra ("revisionsbasen"). Det resulterer i en visning af forskellene for alle filerne i denne mappe.
 
* Hvis du kun har redigeret en enkelt fil, så kan du også få menuen <menuchoice>Subversion</menuchoice> for denne fil ved simpelthen at højreklikke på det tilsvarende filnavn i projektvisningen. Du kan også bare højreklikke i den editorvisning, som filen blev redigeret i for at få denne menu frem.
 
* Hvis du tjekke en eller flere redigerede filer ind, så højreklik enten på en individuel fil, en mappe eller hele projektet og vælg <menuchoice>Subversion -> Commit</menuchoice>. Derved havner du i tilstanden <menuchoice>Eftersyn</menuchoice>, den tredje tilstand ved siden af <menuchoice>Kode</menuchoice> og <menuchoice>Fejlsøgning</menuchoice>, som du finder i øverste højre hjørne af '''KDevelops''' hovedvindue. Billedet til højre viser, hvordan det ser ud. I tilstanden <menuchoice>Eftersyn</menuchoice> viser den øverste del forskelle for hele undermappen eller projektet og for hver enkelt ændret fil med ændringerne fremhævet (se de forskellige faneblade i denne del af vinduet). Som udgangspunkt er alle ændrede filer del af det "changeset", som du er ved at committe, men du kan fravælge nogle af filerne, hvis deres ændringer ikke er relaterede til det, som du ønsker at committe. I eksemplet til højre har jeg for eksempel fravalgt <code>step-32.cc</code> og <code>step-32.prm</code>, fordi ændringerne i disse filer ikke har noget at gøre med de andre ændringer, som jeg lavede i projektet og jeg ikke ønsker at tjekke dem ind endnu (det vil jeg måske gøre senere i et separat commit). Efter at have efterset ændringerne kan du skrive en commit-besked i tekstboksen og klikke på <menuchoice>Commit</menuchoice> til højre for at sende dem af sted.
 
* Hvis du blot ønsket at committe en enkelt fil, så kan du &mdash;  ligesom ved visning af forskelle &mdash; også højreklikke i editorvinduet og vælge menuen <menuchoice>Subversion -> Commit</menuchoice>.
 
===Git===
 
[[File:Kdevelop-git-options.png|300px|thumb|right]] Since [http://git-scm.com/ git] is becoming more and more popular with companies programmers, let us look at the options for git. Whether you right-click on the project name or on an individual file, one of the menu choices it gives you is <menuchoice>Git</menuchoice>. When clicked it produces the submenu shown on the right with some of the more common git commands.
 
;Commit
: Commit your changes to the local repository with an optional message describing the changes made.
 
;Push
: Update the remote repository.
 
;Pull
: Fetch from and integrate with the local repository from the remote repository.
 
;Add
: Add the file to the list of files to be committed when you perform the commit. This can be used as many times as needed before the commit.
 
;Revert
: Reverse an earlier commit due to a commit error or a patch that is creating a problem.
 
;Search History
: Search history pulls up a dialog that displays the log of the commits along with the commit message and a list of files affected.
 
;Annotation
: Annotates each line in the given file with commit information.
 
;Show Differences
: Shows the differences of a patch.
 
;Branches
: Opens a dialog that shows the current branches as well as a search box, and buttons for the following branch actions: create, delete, rename, compare, checkout, and merge.
 
;Rebase
: Opens a dialog to select the branch to rebase to.
 
;Stash Manager
: Opens a dialog displaying a list of stashes that have been pushed with buttons to determine what to do next. The buttons have the following actions:
 
*Show: Shows the selected stash as a diff and switches to diff view
 
*Apply: Applies the stash but does not remove the stash
 
*Pop: Applies the stash and removes it from the Stash Manager
 
*Branch: Opens a dialog for a branch name to create with the stash


* If you only edited a single file, you can also get the <menuchoice>Subversion</menuchoice> menu for this file by simply right clicking on the corresponding file name in the project view. Even simpler, just right clicking into the '''Editor''' view in which you have opened this file will also give you this menu option.
*Drop: Deletes the stash


* If you want to check in one or more edited files, right click either on an individual file, subdirectory, or whole project and select <menuchoice>Subversion -> Commit</menuchoice>. This will get you into <menuchoice>Review</menuchoice> mode, the third mode besides <menuchoice>Code</menuchoice> and <menuchoice>Debug</menuchoice> as you can see in the top right corner of the '''KDevelop''' main window. The picture on the right shows you how this looks. In <menuchoice>Review</menuchoice> mode, the top part shows you diffs for the entire subdirectory/project and each individual changed file with changes highlighted (see the various tabs on this part of the window). By default, all changed files are in the changeset you are about to commit, but you can unselect some of the files if their modifications are unrelated to what you want to commit. For example, in the example on the right I have unselected <code>step-32.cc</code> and <code>step-32.prm</code> because the changes in these files have nothing to do with the other ones I made to this project and I don't yet want to check them in yet (I may later want to do so in a separate commit). After reviewing the changes you can enter a commit message into the text box and hit <menuchoice>Commit</menuchoice> on the right to send things off.
*Close: Closes the Stash Manager


* As with seeing differences, if you want to check in a single file you can also just right click into the editor window to get the <menuchoice>Subversion -> Commit</menuchoice> menu item.
;Push Stash
: Save your local modifications to the current working branch to a new stash entry and roll them back to HEAD. The <message> part is optional and gives the stash a description.


;Pop Stash
: Remove a single stash from the stash list and apply it on top of the current working tree, i.e., do the opposite operation of git stash push. The working directory must match the index.


{{Prevnext2
{{Prevnext2
| prevpage=Special:MyLanguage/KDevelop5/Manual/Debugging_programs | nextpage=Special:MyLanguage/KDevelop5/Manual/Customizing KDevelop
| prevpage=Special:MyLanguage/KDevelop5/Manual/Debugging_programs | nextpage=Special:MyLanguage/KDevelop5/Manual/Customizing KDevelop
| prevtext=Debugging programs | nexttext=Customizing KDevelop
| prevtext=Fejlsøgning af programmer | nexttext=Tilpasning af KDevelop
| index=Special:MyLanguage/KDevelop5/Manual | indextext=Back to menu
| index=Special:MyLanguage/KDevelop5/Manual | indextext=Indholdsfortegnelse
}}
}}


[[Category:Development]]
[[Category:Udvikling/da]]

Latest revision as of 07:59, 14 November 2022

Other languages:

Arbejdet med versionskontrolsystemer

Hvis du arbejder med store projekter, så bliver kildekoden sandsynligvis håndteret af et versionskontrolsystem så som subversion eller git. Det følgende er skrevet med subversion i tankerne, men vil være lige så sandt, hvis du bruger git eller et andet understøttet versionskontrolsystem.

Subversion

Bemærk først, at hvis mappen, som projektet er placeret i er under versionskontrol, så vil KDevelop automatisk bemærke det. Med andre ord behøver du ikke at bede KDevelop om at tjekke en kopi ud, når du opsætter dit projekt. Det er i orden at dirigere KDevelop til en mappe, til hvilken du tidligere har tjekket en kopi fra et arkiv ud. Hvis du har en mappe under versionskontrol, så åbn værktøjsvisningen Projekter. Der er flere ting du kan gøre:

  • Hvis din mappe er blevet forældet, så kan du opdatere den fra arkivet: Højre-klik på projektets navn og vælg Subversion og vælg Opdatér. Dette vil synkronisere alle filerne i dette projekt med arkivet.
  • Hvis du ønsker at begrænse denne handling til individuelle undermapper eller filer, så udvid projektets trævisning til det niveau, du ønsker, højreklik på undermappen eller filen og gør det samme som ovenfor.
  • Hvis du har redigeret en eller flere filer, så udvid projektvisningen til mappen, hvor disse filer findes og højreklik på den. Menupunktet Subversion giver dig forskellige muligheder. Vælg Sammenlign med Base... for at se forskellene imellem den version, som du har redigeret og den version, som er i det arkiv, som du tidligere tjekkede projektet ud fra ("revisionsbasen"). Det resulterer i en visning af forskellene for alle filerne i denne mappe.
  • Hvis du kun har redigeret en enkelt fil, så kan du også få menuen Subversion for denne fil ved simpelthen at højreklikke på det tilsvarende filnavn i projektvisningen. Du kan også bare højreklikke i den editorvisning, som filen blev redigeret i for at få denne menu frem.
  • Hvis du tjekke en eller flere redigerede filer ind, så højreklik enten på en individuel fil, en mappe eller hele projektet og vælg Subversion -> Commit. Derved havner du i tilstanden Eftersyn, den tredje tilstand ved siden af Kode og Fejlsøgning, som du finder i øverste højre hjørne af KDevelops hovedvindue. Billedet til højre viser, hvordan det ser ud. I tilstanden Eftersyn viser den øverste del forskelle for hele undermappen eller projektet og for hver enkelt ændret fil med ændringerne fremhævet (se de forskellige faneblade i denne del af vinduet). Som udgangspunkt er alle ændrede filer del af det "changeset", som du er ved at committe, men du kan fravælge nogle af filerne, hvis deres ændringer ikke er relaterede til det, som du ønsker at committe. I eksemplet til højre har jeg for eksempel fravalgt step-32.cc og step-32.prm, fordi ændringerne i disse filer ikke har noget at gøre med de andre ændringer, som jeg lavede i projektet og jeg ikke ønsker at tjekke dem ind endnu (det vil jeg måske gøre senere i et separat commit). Efter at have efterset ændringerne kan du skrive en commit-besked i tekstboksen og klikke på Commit til højre for at sende dem af sted.
  • Hvis du blot ønsket at committe en enkelt fil, så kan du — ligesom ved visning af forskelle — også højreklikke i editorvinduet og vælge menuen Subversion -> Commit.

Git

Since git is becoming more and more popular with companies programmers, let us look at the options for git. Whether you right-click on the project name or on an individual file, one of the menu choices it gives you is Git. When clicked it produces the submenu shown on the right with some of the more common git commands.

Commit
Commit your changes to the local repository with an optional message describing the changes made.
Push
Update the remote repository.
Pull
Fetch from and integrate with the local repository from the remote repository.
Add
Add the file to the list of files to be committed when you perform the commit. This can be used as many times as needed before the commit.
Revert
Reverse an earlier commit due to a commit error or a patch that is creating a problem.
Search History
Search history pulls up a dialog that displays the log of the commits along with the commit message and a list of files affected.
Annotation
Annotates each line in the given file with commit information.
Show Differences
Shows the differences of a patch.
Branches
Opens a dialog that shows the current branches as well as a search box, and buttons for the following branch actions: create, delete, rename, compare, checkout, and merge.
Rebase
Opens a dialog to select the branch to rebase to.
Stash Manager
Opens a dialog displaying a list of stashes that have been pushed with buttons to determine what to do next. The buttons have the following actions:
  • Show: Shows the selected stash as a diff and switches to diff view
  • Apply: Applies the stash but does not remove the stash
  • Pop: Applies the stash and removes it from the Stash Manager
  • Branch: Opens a dialog for a branch name to create with the stash
  • Drop: Deletes the stash
  • Close: Closes the Stash Manager
Push Stash
Save your local modifications to the current working branch to a new stash entry and roll them back to HEAD. The <message> part is optional and gives the stash a description.
Pop Stash
Remove a single stash from the stash list and apply it on top of the current working tree, i.e., do the opposite operation of git stash push. The working directory must match the index.