aboutsummaryrefslogtreecommitdiff
path: root/GitServer.wiki
blob: 77354a7de304260f893434a09f9c3c62c05bcfb8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
= Contents =
  - [[#Git Server|Git Server]]
    - [[#Git Server#Autentisering|Autentisering]]
      - [[#Git Server#Autentisering#Autentisering HTTP|Autentisering HTTP]]
        - [[#Git Server#Autentisering#Autentisering HTTP#Nuläget|Nuläget]]
        - [[#Git Server#Autentisering#Autentisering HTTP#Framtiden|Framtiden]]
      - [[#Git Server#Autentisering#Autentisering SSH|Autentisering SSH]]
        - [[#Git Server#Autentisering#Autentisering SSH#Problem|Problem]]
        - [[#Git Server#Autentisering#Autentisering SSH#HTTP access|HTTP access]]
        - [[#Git Server#Autentisering#Autentisering SSH#gitweb.owner|gitweb.owner]]
    - [[#Git Server#Pull Requests|Pull Requests]]
  - [[#Taggning|Taggning]]
    - [[#Taggning#Cleanup|Cleanup]]

= Git Server =
https://git.hornquist.se

== Autentisering ==

=== Autentisering HTTP ===
==== Nuläget ====
Det finns grunderna till ett autentiseringsscript skviret. I nuläget
släpps alla in på https://git.hornquist.se/vimwiki , men enbart jag
släpps in på övriga sidor.

Vid felaktig inloggning och försök till inloggning på rootsidan hamnar
man på en suspekt 404 sida. Se istället till att min:
- [ ] kan logga in på root-sidan
- [ ] vid misslyckande hamnar tillbaka på login-sidan med ett
      felmedelande.

==== Framtiden ====

Det jag vill ha är ett grupp-baserat system där jag enkelt kan lägga
till användare. Varje användare är med i ett antal gruppen, och varje
repo har en användare och en grupp. Autentiseringssystemet ska gärna
vara skillt från Unix's system (men fungera ungefär lika dant).

=== Autentisering SSH ===

Gitolite används för authentisering på serversidan. Dock har det vissa
problem:

- [[#HTTP access]]
- [[#gitweb.owner]]

==== Problem ====
:TODO: 
2018-12-28

Jag satte upp gitolite, och pull fungerade bra. Dock med vissa
autentiseringsskavanker enligt nedan. Dock gick repon:a sönder när jag
drog från dem via HTTP. Tror det hade att göra med filrättigheter. Om
nginx låter en sätta användare per sub-sida skulle det lösa problemen.

==== HTTP access ====
För nuvarande är HTTP-access allt eller inget på repo:na markerade
daemon. Förhoppningen är att det ska gå att sätta upp HTTP konton,
vilkas rättigheter sedan administreras genom gitolite.

Även vilka konton som finns får gärna administreras genom gitolite.

==== gitweb.owner ====
Då (planen är att) cgit ska autentisera användare mot fälten
`gitweb.{owner,group}` behöver dem propageras ut från gitolite.
Alternativt att någon form av gemensamm config sätts, som trycker till
dem båda.

== Pull Requests ==

Taget från [[Vimwiki]]:

    Jag bör från varje wiki sida länka till motsvarande git sida.
    (http://wiki.hornquist.se & http://git.hornquist.se/vimwiki ).
    Sen bör servern tillåta smidiga pull-requests för att andra ska kunna
    förbättra.

En lösning är att ha fyra access-nivåer till servern (eller
åtminstånde repo):
- Enbart läsning
- Push skapar ny gren (pull request)
- Kan jobba på existerande grenar (som de inte skapat)
- Full access

= Taggning =
{{{
find -type d -name \*.git -execdir env GIT_DIR={} git config gitweb.category Liu \;
}}}

== Cleanup ==
:TODO:

- [X] `gitweb.gatecory` is set on most right now.
- [ ] `gitweb.category` should be set automaticly
- [X] liu/TDDD86-labbar should get a README clarifying it's only a mirror
- [ ] liu/TDDD86-labbar is broken