Articles

Dotfiles

multe programe sunt configurate folosind fișiere text simplu cunoscute sub numele de „dotfiles”(deoarece numele fișierelor încep cu un ., de ex. ~/.gitconfig, astfel încât acestea suntascunse în lista de directoare ls în mod implicit).

o mulțime de instrumente pe care le utilizați, probabil, au o mulțime de setări care pot fi reglatedestul de fin. De multe ori, instrumentele sunt personalizate cu limbi specializate,de ex.Vimscript pentru Vim sau limba proprie a shell-ului pentru un shell.

personalizarea și adaptarea instrumentelor la fluxul de lucru preferat vă vor face mai productivi. Vă sfătuim să investiți timp în personalizarea instrumentului dvs. mai degrabă decât clonarea dotfiles-urilor altcuiva de la GitHub.

probabil că aveți deja unele dotfiles configurate. Unele locuri pentru a căuta:

  • ~/.bashrc
  • ~/.emacs
  • ~/.vim
  • ~/.gitconfig

unele programe nu pun direct fișierele sub folderul de acasă și în schimb le pun într-un folder sub ~/.config.

Dotfiles nu sunt exclusive pentru aplicații de linie de comandă, de exemplu MPV Video player poate fi configurat editarea fișierelor sub~/.config/mpv

puteți afla despre setările instrumentului dvs. citind documentația on-line Orman pagini. O altă modalitate excelentă este de acăutați pe internet postări de blog despre programe specifice, unde autorii vă vor spune despre personalizările preferate. Cu toate acestea, un alt mod de a învăța despreobicealizări este să te uiți prin dotfiles altor persoane: puteți găsi tone dedotfilesrepositoriespe GitHub — a se vedea cel mai popularaici (vă sfătuim să nu blindlycopy configurații, deși).

organizare

cum ar trebui să vă organizați dotfiles? Acestea ar trebui să fie în propriul dosar,sub controlul versiunii, și symlinked în loc folosind un script. Acest lucru arebeneficiile:

  • instalare ușoară: dacă vă conectați la o mașină nouă, aplicarea yourcustomizations va dura doar un minut
  • portabilitate: instrumentele vor funcționa la fel peste tot
  • sincronizare: puteți actualiza dotfiles oriunde și păstrați-le allin sync
  • schimbare de urmărire: probabil că vă veți menține dotfilesfor întreaga carieră de programare, iar istoricul versiunilor este plăcut să aveți proiecte de lungă durată
cd ~/srcmkdir dotfilescd dotfilesgit inittouch bashrc# create a bashrc with some settings, e.g.:# PS1='\w > 'touch installchmod +x install# insert the following into the install script:# #!/usr/bin/env bash# BASEDIR=$(dirname $0)# cd $BASEDIR## ln -s ${PWD}/bashrc ~/.bashrcgit add bashrc installgit commit -m 'Initial commit'

personalizări specifice mașinii

de cele mai multe ori, veți dori aceeași configurație între mașini, dar uneori veți dori o mică deltă pe o anumită mașină. Iată câteva modalități prin care puteți gestiona această situație:

ramură pe mașină

utilizați controlul versiunii pentru a menține o ramură pe mașină. Această abordare islogically simplă, dar poate fi destul de grea.

if declarații

Dacă fișierul de configurare îl acceptă, utilizați echivalentul if-declarații pentru aaplicați particularizări specifice mașinii. De exemplu, shell-ul dvs. ar putea avea cevaca:

if ]; then {do_something else}; fi# Darwin is the architecture name for macOS systemsif ]; then {do_something}; fi# You can also make it machine specificif ]; then {do_something}; fi

include

Dacă fișierul de configurare îl acceptă, utilizați include. De exemplu ,un ~/.gitconfig poate avea o setare:

 path = ~/.gitconfig_local

și apoi pe fiecare mașină,~/.gitconfig_local poate conține setări specifice mașinii. Puteți chiar să le urmăriți într-un depozit separat pentrusetările specifice mașinilor.

această idee este utilă și dacă doriți ca diferite programe să partajeze unele configurații. De exemplu, dacă doriți ca ambelebash șizsh să partajeze același set de pseudonime, le puteți scrie sub.aliases și să aveți următorul bloc în ambele.

# Test if ~/.aliases exists and source itif ; then source ~/.aliasesfi

resurse

  • dotfiles instructorilor dumneavoastră:Anish,Jon,Jose
  • GitHub nu dotfiles: cadre dotfile,utilitati, exemple, și tutoriale
  • Shell startupscripts: anexplanation a diferitelor fișiere de configurare utilizate pentru shell

exerciții

  1. creați un folder pentru dotfiles și configurați versioncontrol.

  2. adăugați o configurație pentru cel puțin un program, de ex. shell-ul dvs., cu somecustomization (pentru a începe, poate fi ceva la fel de simplu ca customizingyour shell prompt prin setarea $PS1).

  3. configurați o metodă pentru a instala dotfiles rapid (și fără efort manual)pe o mașină nouă. Acest lucru poate fi la fel de simplu ca un script shell care apelează ln -spentru fiecare fișier sau puteți utiliza un specializedutility.

  4. testați scriptul de instalare pe o mașină virtuală proaspătă.

  5. migrați toate configurațiile de instrumente curente în depozitul dotfiles.

  6. publicați dotfiles dvs. pe GitHub.

Editați Această pagină.

licențiat sub CC BY-NC-SA.