Development/gerrit/SubmitPatch/da

From The Document Foundation Wiki
Jump to: navigation, search
This page is a translated version of the page Development/gerrit/SubmitPatch and the translation is 100% complete.

Other languages:
dansk • ‎English • ‎italiano • ‎日本語 • ‎한국어 • ‎português do Brasil

Indsend et patch til gennemsyn med gerrit

Indsendelse af patches til gennemsyn

Opret og skub din ændring til gerrit til gennemsyn (officiel gerrit-dokumentation findes her):

git checkout -b <a_local_branch_name_of_your_choice>
# lav dine ændringer af koden, sørg for den bygger
git add file [file ...] # all the new files _and_ changed files
git commit
./logerrit submit master

OBS: for at `logerrit` kommandoen virker, skal du sørge for at have gjort dig klar til gerrit. Instruktioner findes her.

OBS: trinnet git add + git commit kan udføres med 'git gui', husk venligst, at commit-emnelinjen ikke bør være længere end 72 tegn og at commit-meddelsens linjer ikke bør være længere end 80 tegn.

OBS: for at mestre indsendelser, er det nyt at (gen)basere ændringer på en nylig version af masteren, sådan at CI-builds på jenkins kan drage mest muligt nytte af ccache.

OBS: LibreOffice bruger clang-format til at tjekke patsches for ovensstemmelse med etablerede regler. Vi bruger en specifik version af clang-format (for at undgå inkonsistenser, som findes mellem forskellige versioner af det, selv mellem mindre udgivelser). Hvis der ikke er forudinstalleret et clang-format, bliver der sendt en advarsel på tidspinktet for git commit, med instruktioner om, hvordan de nødvendige binære skal installeres. Hvis du har en eller anden version installeret, får du måske ikke advarsler (men får usammenhængende resultater, når buildbots mislykkes, der fortæller dig, at du skal ændre formateringen på en anden måde), eller den præinstallerede version ikke virker (fx beklager sig over kommandolinje-indstillingerne). Den version, der bruges af LibreOffice kan findes på https://dev-www.libreoffice.org/bin/.

Kun den sidste linje er speciel og vil skubbe alle patches i den navngivne lokale gren til revisions-køen fil master-grenen (Juster den derfor, hvis du vil indesende et patch til en af udgivelses-grenene eller andre grene). Når du er lejlighedsvis bidragsyder, skal dit patch have samme e-mailadresse som din konto, ellers får du ikke tilladelse til at skubbe.

Hvis dit skub lykkes, vil git fortælle, hvor dit tilsagn venter på gennemsyn. URLen vil ligne noget i retning af https://gerrit.libreoffice.org/#/c/229/.

Det er en god ide at beholde din lokale gren, mens dit patch er til gennemsyn, det vil gøre det muligt ubesværet at skubbe en ny version af patchet. I mellemtiden kan du

git checkout master

Vende tilbage til master-grenen... og du kan begynde at arbejde på et andet patch efter metoden ovenfor (oprette en lokal gren, kode, indsende og skubbe til gerrit).

Sæt dig selv på listen over bidragsydere

Hvis det er første gang, du bidrager med et patch til LibreOffice-projektet, skriv dig venligst på listen over udviklere og bidragsydere (ifølge instruktionerne der) og angiv dine bidrags licens.

Send venligst ikke erklæringen før du sender dit første bidrag til gerrit og sørg for at du har tilladelse fra dine forældre, hvis du er mindreårig

Mere om indsendelse af patches

Som et alternativ til ovenstående kan overveje at bruge "git review" som forklaret i Development/GitReview.

Detaljeret behandling af nogle emner under indsendelse af patches

Indsendelse af en ny version

Hvis du får brug for at indsende en ny version af dit patch under gennemsynet, sender du:

git checkout <lokal_gren_associeret_med_dit_patch>
<foretag din ændring>
git add ...
git commit --amend  # dette ændrer den seneste indsendelse på grenen, snarere end at oprette en ny
./logerrit submit master

Bemærk, at gerrit vil opdage at det er en ny version af en eksisterende ændring (takket være Change-ID'et).

Tip.svg

Tip:
Hvis du ved en fejl glemte at bruge --amend og nu har 2 indsendelser, kan du flette dem med git rebase -i; se instruktioner på Git for LibreOffice-udviklere.


Brug af git review til af forbedre ændringer og indsende nye patch-versioner

At forbedre ændringer manuelt på ovennævnte måde kan hurtigt blive forvirrende og at holde styr på local_branch_associated_with_your_patch fører let til fejl (associeret, hvordan egentlig?). Hvis du har indsendt flere ændringer til gerrit, er det umuligt at holde dem alle på master-grenen og forbedre dem særskilt. Du er enten nødt til nulstille HEAD^ efter hver indsendelse og downloade/ændre/forbedre/indsende/nulstille for hvert nyt sæt patches eller gøre det i det enkelte grene. Så det er her git review bliver nyttigt.


You will either have to reset HEAD^ after each submission and download/modify/amend/submit/reset for each new patch set, or do that in separate branches and this is where git review comes in handy.

Læs venligst Development/GitReview#Amending_a_gerrit_change for at se, hvordan du gør det.

Indsendelse af patches som private eller igangværende arbejde

Hvis du bruger ./logerrit submit-private master i stedet for ./logerrit submit master, opretter du en privat ændring.

Sådan en ændring vil kun være synlig for dig og hvem, du ellers tilføjer som anmelder med knappen 'Tilføj anmelder' i gerrit.

Hvis du ikke har brug for at skjule din ændring for den brede offentlighed, kan du bruge ./logerrit submit-wip master til at oprette en ændring som igangværende arbejde.

Hvis du ikke bruger logerrit, skub til refs/for/branch%private eller refs/for/branch%wip.

Du kan også slå tilstandene privat og igangværende arbejde til/fra i brugergrænsefladen til gerrit.

Indsendelse af patches til undermodulerne ordbøger, hjælpindhold2, oversættelser til gennemsyn

Se den side der behandler Undermoduler.