= Contents = - [[#Git Server|Git Server]] - [[#Git Server#Autentisering|Autentisering]] - [[#Git Server#Autentisering#Autentisering HTTP|Autentisering HTTP]] - [[#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]] - [[#Hooks|Hooks]] - [[#Hooks#Framtida förbättringar|Framtida förbättringar]] - [[#Hooks#Default config|Default config]] - [[#Hooks#Default config#cclite|cclite]] - [[#Hooks#Default config#VVVVVV|VVVVVV]] - [[#Hooks#Default config#password-store|password-store]] - [[#Hooks#Default config#reddit-parenthesis-bot|reddit-parenthesis-bot]] - [[#Hooks#Default config#cgit|cgit]] - [[#Hooks#Default config#guile-cairo|guile-cairo]] = Git Server = https://git.hornquist.se [[wn.private:git-hooks]] == Autentisering == === Autentisering HTTP === ==== 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: - [ ] `gitweb.category` should be set automaticly = Hooks = - [[gitserver-documentation]] === Framtida förbättringar === - `enable-remote-branches` ([[man:cgitrc#5]]) - Vad händer om ett repo har både subdir och kattegori - Vad händer om de inte stämmer överrens? - Delade repositories - gitolite? === Default config === {{{ [core] repositoryformatversion = 0 filemode = true bare = true }}} 41adefcd1f91e91d473275a100d31a2c ===== cclite ===== [remote "origin"] url = https://github.com/Sorroko/cclite ===== VVVVVV ===== [remote "origin"] url = https://github.com/TerryCavanagh/VVVVVV fetch = `+refs/heads/*:refs/remotes/origin/*` ===== password-store ===== [remote "upstream"] url = https://git.zx2c4.com/password-store fetch = `+refs/heads/*:refs/remotes/upstream` ===== reddit-parenthesis-bot ===== [gitweb] category = fork [remote "origin"] url = https://github.com/HugoNikanor/reddit-parenthesis-bot ===== cgit ===== [gitweb] group = cgit category = fork [remote "upstream"] url = git://git.zx2c4.com/cgit fetch = `+refs/heads/*:refs/remotes/upstream/*` ===== guile-cairo ===== [gitweb] category = fork [remote "upstream"] url = git://git.savannah.nongnu.org/guile-cairo.git fetch = `+refs/heads/*:refs/remotes/upstream/*`