Ubuntu Online, Fedora Online, Windows online emulator അല്ലെങ്കിൽ MAC OS ഓൺലൈൻ എമുലേറ്റർ എന്നിങ്ങനെയുള്ള ഞങ്ങളുടെ ഒന്നിലധികം സൗജന്യ ഓൺലൈൻ വർക്ക്സ്റ്റേഷനുകളിലൊന്ന് ഉപയോഗിച്ച് OnWorks സൗജന്യ ഹോസ്റ്റിംഗ് ദാതാവിൽ പ്രവർത്തിപ്പിക്കാവുന്ന git-cvsserver എന്ന കമാൻഡാണിത്.
പട്ടിക:
NAME
git-cvsserver - Git-നുള്ള ഒരു CVS സെർവർ എമുലേറ്റർ
സിനോപ്സിസ്
SSH:
കയറ്റുമതി CVS_SERVER="git cvsserver"
CVS -d :ext:user@server/path/repo.git co
pserver (/etc/inetd.conf):
cvspserver tcp ഇപ്പോൾ ആരും ഇല്ല /usr/bin/git-cvsserver git-cvsserver pserver
ഉപയോഗം:
git-cvsserver [ഓപ്ഷനുകൾ] [pserver|സെർവർ] [ ...]
ഓപ്ഷനുകൾ
ഈ ഓപ്ഷനുകളെല്ലാം സെർവർ സൈഡ് നടപ്പിലാക്കിയാൽ മാത്രമേ അർത്ഥമുള്ളൂ. അവർ ഉണ്ടായിട്ടുണ്ട്
യോട് സാമ്യമുള്ളതാണ് നടപ്പിലാക്കിയത് git-demon(1) ഓപ്ഷനുകൾ കഴിയുന്നത്ര അടുത്ത്.
--അടിസ്ഥാന പാത
മുൻകൈയെടുക്കുക പാത അഭ്യർത്ഥിച്ച CVSROOT-ലേക്ക്
--കണിശമായ-പാതകൾ
ഉപഡയറക്ടറികളിലേക്ക് ആവർത്തനം അനുവദിക്കരുത്
--കയറ്റുമതി-എല്ലാം
കോൺഫിഗറിൽ gitcvs.enabled എന്ന് പരിശോധിക്കരുത്. അനുവദനീയമായ ഒരു ലിസ്റ്റും നിങ്ങൾ വ്യക്തമാക്കേണ്ടതുണ്ട്
നിങ്ങൾക്ക് ഈ ഓപ്ഷൻ ഉപയോഗിക്കണമെങ്കിൽ ഡയറക്ടറികൾ (ചുവടെ കാണുക).
-വി, --വേർഷൻ
പതിപ്പ് വിവരങ്ങൾ അച്ചടിച്ച് പുറത്തുകടക്കുക
-h, -H, --സഹായം
ഉപയോഗ വിവരങ്ങൾ അച്ചടിച്ച് പുറത്തുകടക്കുക
നിങ്ങൾക്ക് അനുവദനീയമായ ഡയറക്ടറികളുടെ ഒരു ലിസ്റ്റ് വ്യക്തമാക്കാം. ഡയറക്ടറികളൊന്നും നൽകിയിട്ടില്ലെങ്കിൽ, എല്ലാം ഉണ്ട്
അനുവദിച്ചു. ഇതൊരു അധിക നിയന്ത്രണമാണ്, gitcvs ആക്സസ് ഇനിയും പ്രവർത്തനക്ഷമമാക്കേണ്ടതുണ്ട്
അല്ലാത്തപക്ഷം gitcvs.enabled config ഓപ്ഷൻ --കയറ്റുമതി-എല്ലാം നൽകുകയും ചെയ്തു.
വിവരണം
ഈ ആപ്ലിക്കേഷൻ Git-നുള്ള ഒരു CVS എമുലേഷൻ ലെയറാണ്.
ഇത് വളരെ പ്രവർത്തനക്ഷമമാണ്. എന്നിരുന്നാലും, എല്ലാ രീതികളും നടപ്പാക്കപ്പെടുന്നില്ല, ആ രീതികൾക്കും
നടപ്പിലാക്കിയവ, എല്ലാ സ്വിച്ചുകളും നടപ്പിലാക്കുന്നില്ല.
CLI CVS ക്ലയന്റും എക്ലിപ്സ് CVS പ്ലഗിനും ഉപയോഗിച്ചാണ് പരിശോധന നടത്തിയത്. മിക്കതും
ഈ രണ്ട് ക്ലയന്റുകളിലും പ്രവർത്തനം നന്നായി പ്രവർത്തിക്കുന്നു.
പരിമിതികൾ
CVS ക്ലയന്റുകൾക്ക് ടാഗ് ചെയ്യാനോ ബ്രാഞ്ച് ചെയ്യാനോ Git ലയനങ്ങൾ നടത്താനോ കഴിയില്ല.
git-cvsserver Git ശാഖകൾ CVS മൊഡ്യൂളുകളിലേക്ക് മാപ്പ് ചെയ്യുന്നു. ഇത് മിക്ക CVS-ൽ നിന്നും വളരെ വ്യത്യസ്തമാണ്
CVS മൊഡ്യൂളുകളിൽ സാധാരണയായി ഒന്നോ അതിലധികമോ ഡയറക്ടറികളെ പ്രതിനിധീകരിക്കുന്നതിനാൽ ഉപയോക്താക്കൾ പ്രതീക്ഷിക്കുന്നു.
ഇൻസ്റ്റലേഷൻ
1. നിങ്ങൾ pserver വഴി CVS ആക്സസ് വാഗ്ദാനം ചെയ്യാൻ പോകുകയാണെങ്കിൽ, /etc/inetd.conf എന്നതിൽ ഒരു വരി ചേർക്കുക
cvspserver സ്ട്രീം tcp ഇപ്പോൾ ആരുമില്ല git-cvsserver pserver
ശ്രദ്ധിക്കുക: ചില inetd സെർവറുകൾ സ്വതന്ത്രമായി എക്സിക്യൂട്ടബിളിന്റെ പേര് വ്യക്തമാക്കാൻ നിങ്ങളെ അനുവദിക്കുന്നു
argv[0] ന്റെ മൂല്യം (അതായത് പ്രോഗ്രാം അത് നടപ്പിലാക്കിയതായി അനുമാനിക്കുന്ന പേര്). ഇതിൽ
/etc/inetd.conf എന്നതിലെ ശരിയായ വരി ഇതുപോലെ കാണപ്പെടുന്നു
cvspserver tcp ഇപ്പോൾ ആരും ഇല്ല /usr/bin/git-cvsserver git-cvsserver pserver
അജ്ഞാത ആക്സസ് മാത്രമേ സ്ഥിരസ്ഥിതിയായി സംരക്ഷിക്കുന്നുള്ളൂ. പ്രതിജ്ഞാബദ്ധമാക്കാൻ നിങ്ങൾ ചെയ്യേണ്ടിവരും
pserver അക്കൗണ്ടുകൾ സൃഷ്ടിക്കുക, കോൺഫിഗറേഷൻ ഫയലിൽ gitcvs.authdb ക്രമീകരണം ചേർക്കുക.
cvsserver എഴുതാൻ അനുവദിക്കണമെന്ന് നിങ്ങൾ ആഗ്രഹിക്കുന്ന ശേഖരണങ്ങൾ, ഉദാഹരണത്തിന്:
[gitcvs]
authdb = /etc/cvsserver/passwd
ഈ ഫയലുകളുടെ ഫോർമാറ്റ് ഉപയോക്തൃനാമവും തുടർന്ന് എൻക്രിപ്റ്റ് ചെയ്ത പാസ്വേഡും ആണ്, ഉദാഹരണത്തിന്:
myuser:$1Oyx5r9mdGZ2
myuser:$1$BA)@$vbnMJMDym7tA32AamXrm./
നിങ്ങൾക്ക് ഉപയോഗിക്കാം htpasswd ഈ ഫയലുകൾ നിർമ്മിക്കാൻ അപ്പാച്ചെയിൽ വരുന്ന സൗകര്യം, പക്ഷേ
അപ്പാച്ചെയുടെ MD5 ക്രിപ്റ്റ് രീതി മിക്ക C ലൈബ്രറിയുടെ ക്രിപ്റ്റ്() ഉപയോഗിക്കുന്നതിൽ നിന്നും വ്യത്യസ്തമാണ്.
ഫംഗ്ഷൻ, അതിനാൽ -m ഓപ്ഷൻ ഉപയോഗിക്കരുത്.
പകരമായി, നിങ്ങൾക്ക് perl-ന്റെ crypt() ഓപ്പറേറ്റർ ഉപയോഗിച്ച് പാസ്വേഡ് നിർമ്മിക്കാം:
perl -e 'my ($user, $pass) = @ARGV; printf "%s:%s\n", $user, crypt($user, $pass)' $USER പാസ്വേഡ്
തുടർന്ന് pserver രീതി വഴി നിങ്ങളുടെ പാസ്വേഡ് നൽകുക, ഉദാഹരണത്തിന്:
cvs -d:pserver:someuser:somepassword server/path/repo.git co
PATH-ൽ Git ടൂളുകൾ ഉള്ളത് ഒഴികെ, SSH ആക്സസിന് പ്രത്യേക സജ്ജീകരണമൊന്നും ആവശ്യമില്ല. എങ്കിൽ
CVS_SERVER എൻവയോൺമെന്റ് വേരിയബിൾ അംഗീകരിക്കാത്ത ക്ലയന്റുകൾ നിങ്ങൾക്കുണ്ട്, നിങ്ങൾക്ക് കഴിയും
പേരുമാറ്റുക git-cvsserver സിവിഎസിലേക്ക്.
ശ്രദ്ധിക്കുക: പുതിയ CVS പതിപ്പുകളും (>= 1.12.11) നേരിട്ട് CVS_SERVER വ്യക്തമാക്കുന്നതിനെ പിന്തുണയ്ക്കുന്നു
CVSROOT പോലെ
cvs -d ":ext;CVS_SERVER=git cvsserver:user@server/path/repo.git" co
ഇത് നിങ്ങളിൽ സംരക്ഷിക്കപ്പെടും എന്ന നേട്ടമുണ്ട് CVS/റൂട്ട് ഫയലുകളും നിങ്ങൾക്ക് ആവശ്യമില്ല
എല്ലായ്പ്പോഴും ശരിയായ എൻവയോൺമെന്റ് വേരിയബിൾ സജ്ജീകരിക്കുന്നതിനെക്കുറിച്ച് വിഷമിക്കേണ്ടതുണ്ട്. SSH ഉപയോക്താക്കൾ നിയന്ത്രിച്ചിരിക്കുന്നു
ലേക്ക് git-shell CVS_SERVER (കൂടാതെ പാടില്ല) ഉപയോഗിച്ച് ഡിഫോൾട്ട് അസാധുവാക്കേണ്ടതില്ല
git-shell cvs എന്നാണ് അർത്ഥമാക്കുന്നത് git-cvsserver മറ്റേ അറ്റം ഓടുന്നതായി നടിക്കുകയും ചെയ്യുന്നു
യഥാർത്ഥ CVS നല്ലത്.
2. CVS-ൽ നിന്ന് ആക്സസ് ചെയ്യാൻ ആഗ്രഹിക്കുന്ന ഓരോ റിപ്പോയ്ക്കും നിങ്ങൾ റിപ്പോയിലെ കോൺഫിഗറേഷൻ എഡിറ്റ് ചെയ്യേണ്ടതുണ്ട്
കൂടാതെ ഇനിപ്പറയുന്ന ഭാഗം ചേർക്കുക.
[gitcvs]
പ്രാപ്തമാക്കിയത് = 1
ഡീബഗ്ഗിംഗിന് # ഓപ്ഷണൽ
logFile=/path/to/logfile
ശ്രദ്ധിക്കുക: അഭ്യർത്ഥിക്കാൻ പോകുന്ന ഓരോ ഉപയോക്താവും നിങ്ങൾ ഉറപ്പാക്കേണ്ടതുണ്ട് git-cvsserver എഴുതിയിട്ടുണ്ട്
ലോഗ് ഫയലിലേക്കും ഡാറ്റാബേസിലേക്കും പ്രവേശനം (ഡാറ്റാബേസ് ബാക്കെൻഡ് കാണുക. നിങ്ങൾക്ക് ഓഫർ ചെയ്യണമെങ്കിൽ
SSH വഴിയുള്ള റൈറ്റ് ആക്സസ്, തീർച്ചയായും ഉപയോക്താക്കൾക്ക് Git-ലേക്ക് റൈറ്റ് ആക്സസ് ആവശ്യമാണ്
ശേഖരം തന്നെ.
ഓരോ റിപ്പോസിറ്ററിയും "നഗ്നമാണ്" (Git ഇൻഡക്സ് ഫയൽ ഇല്ലാതെ) ആണെന്നും നിങ്ങൾ ഉറപ്പാക്കേണ്ടതുണ്ട്.
cvs ജോലി ചെയ്യാൻ പ്രതിജ്ഞാബദ്ധമാണ്. കാണുക gitcvs-മൈഗ്രേഷൻ(7).
എല്ലാ കോൺഫിഗറേഷൻ വേരിയബിളുകളും ഒരു നിർദ്ദിഷ്ട ആക്സസ് രീതിക്കായി അസാധുവാക്കാവുന്നതാണ്.
സാധുവായ രീതി നാമങ്ങൾ "ext" (SSH ആക്സസിന്) "pserver" എന്നിവയാണ്. ഇനിപ്പറയുന്ന ഉദാഹരണം
SSH വഴി ആക്സസ് അനുവദിക്കുമ്പോൾ തന്നെ കോൺഫിഗറേഷൻ pserver ആക്സസ് പ്രവർത്തനരഹിതമാക്കും.
[gitcvs]
പ്രാപ്തമാക്കിയത് = 0
[gitcvs "ext"]
പ്രാപ്തമാക്കിയത് = 1
3. ചെക്ക്ഔട്ട് കമാൻഡിൽ നിങ്ങൾ നേരിട്ട് CVSROOT/CVS_SERVER വ്യക്തമാക്കിയിട്ടില്ലെങ്കിൽ,
സ്വയമേവ അത് നിങ്ങളിൽ സംരക്ഷിക്കുന്നു CVS/റൂട്ട് ഫയലുകൾ, തുടർന്ന് നിങ്ങൾ അവ വ്യക്തമായി സജ്ജീകരിക്കേണ്ടതുണ്ട്
നിങ്ങളുടെ പരിതസ്ഥിതിയിൽ. CVSROOT സാധാരണ പോലെ സജ്ജീകരിക്കണം, പക്ഷേ ഡയറക്ടറി വേണം
ഉചിതമായ Git റിപ്പോയിലേക്ക് പോയിന്റ് ചെയ്യുക. മുകളിൽ പറഞ്ഞതുപോലെ, SSH ക്ലയന്റുകൾക്ക് അല്ല പരിമിതപ്പെടുത്തിയിരിക്കുന്നു
git-shell, CVS_SERVER ആയി സജ്ജീകരിക്കണം git-cvsserver.
കയറ്റുമതി CVSROOT=:ext:user@server:/var/git/project.git
കയറ്റുമതി CVS_SERVER="git cvsserver"
4. കമ്മിറ്റ് ചെയ്യുന്ന SSH ക്ലയന്റുകൾക്ക്, അവരുടെ സെർവർ സൈഡ് .ssh/പരിസ്ഥിതി ഉറപ്പാക്കുക
ഫയലുകൾ (അല്ലെങ്കിൽ .bashrc മുതലായവ, അവയുടെ നിർദ്ദിഷ്ട ഷെൽ അനുസരിച്ച്) ഉചിതമായ മൂല്യങ്ങൾ കയറ്റുമതി ചെയ്യുക
GIT_AUTHOR_NAME, GIT_AUTHOR_EMAIL, GIT_COMMITTER_NAME, GIT_COMMITTER_EMAIL എന്നിവയ്ക്കായി.
ലോഗിൻ ഷെൽ ബാഷ് ആയ SSH ക്ലയന്റുകൾക്ക്, .bashrc ഒരു ന്യായമായ ബദലായിരിക്കാം.
5. ഉപഭോക്താക്കൾക്ക് ഇപ്പോൾ പ്രോജക്റ്റ് പരിശോധിക്കാൻ കഴിയണം. CVS ഉപയോഗിക്കുക മൊഡ്യൂൾ പേര്
Git എന്താണെന്ന് സൂചിപ്പിക്കുക തല നിങ്ങൾ പരിശോധിക്കാൻ ആഗ്രഹിക്കുന്നു. ഇത് നിങ്ങളുടെ പുതിയതിന്റെ പേരും സജ്ജീകരിക്കുന്നു
ചെക്ക്-ഔട്ട് ഡയറക്ടറി, നിങ്ങൾ അത് -d ഉപയോഗിച്ച് പറഞ്ഞില്ലെങ്കിൽ . ഉദാഹരണത്തിന്,
ഇത് പരിശോധിക്കുന്നു യജമാനന് പ്രോജക്റ്റ്-മാസ്റ്റർ ഡയറക്ടറിയിലേക്ക് ശാഖ:
cvs co-d പ്രൊജക്റ്റ്-മാസ്റ്റർ മാസ്റ്റർ
ഡാറ്റബേസ് പിന്നിലേക്ക്
git-cvsserver വിവരങ്ങൾ സംഭരിക്കുന്നതിന് ഒരു Git ഹെഡിന് (അതായത് CVS മൊഡ്യൂൾ) ഒരു ഡാറ്റാബേസ് ഉപയോഗിക്കുന്നു
സ്ഥിരമായ CVS റിവിഷൻ നമ്പറുകൾ നിലനിർത്തുന്നതിനുള്ള ശേഖരം. ഡാറ്റാബേസ് ആയിരിക്കണം
ഓരോ പ്രതിജ്ഞാബദ്ധതയ്ക്കും ശേഷം അപ്ഡേറ്റ് (അതായത് എഴുതിയത്).
പ്രതിബദ്ധത നേരിട്ട് ജിറ്റ് ഉപയോഗിച്ചാണ് ചെയ്യുന്നതെങ്കിൽ (ഉപയോഗിക്കുന്നതിന് വിപരീതമായി git-cvsserver) അപ്ഡേറ്റ്
വഴി അടുത്ത റിപ്പോസിറ്ററി ആക്സസ്സിൽ സംഭവിക്കേണ്ടതുണ്ട് git-cvsserver, ആക്സസ്സ് സ്വതന്ത്രമായി
രീതിയും അഭ്യർത്ഥിച്ച പ്രവർത്തനവും.
അതിനർത്ഥം, നിങ്ങൾ വായിക്കാൻ മാത്രം പ്രവേശനം നൽകുകയാണെങ്കിൽപ്പോലും (ഉദാ: pserver രീതി ഉപയോഗിച്ച്),
git-cvsserver വിശ്വസനീയമായി പ്രവർത്തിക്കാൻ ഡാറ്റാബേസിലേക്ക് റൈറ്റ് ആക്സസ് ഉണ്ടായിരിക്കണം (അല്ലെങ്കിൽ നിങ്ങൾ
ഡാറ്റാബേസ് എപ്പോൾ വേണമെങ്കിലും അപ്-ടു-ഡേറ്റ് ആണെന്ന് ഉറപ്പാക്കേണ്ടതുണ്ട് git-cvsserver നടപ്പിലാക്കുന്നു).
സ്ഥിരസ്ഥിതിയായി ഇത് Git ഡയറക്ടറിയിലെ SQLite ഡാറ്റാബേസുകൾ ഉപയോഗിക്കുന്നു
gitcvs. .sqlite. SQLite ബാക്കെൻഡ് താൽക്കാലിക ഫയലുകൾ സൃഷ്ടിക്കുന്നു എന്നത് ശ്രദ്ധിക്കുക
റൈറ്റിലെ ഡാറ്റാബേസ് ഫയലിന്റെ അതേ ഡയറക്ടറി അതിനാൽ ഉപയോക്താക്കൾക്ക് നൽകാൻ ഇത് മതിയാകില്ല
ഉപയോഗിച്ച് git-cvsserver അവർക്ക് റൈറ്റ് ആക്സസ് അനുവദിക്കാതെ ഡാറ്റാബേസ് ഫയലിലേക്കുള്ള റൈറ്റ് ആക്സസ്സ്
ഡയറക്ടറിയിലേക്കും.
ഡാറ്റാബേസ് ശാഖയ്ക്ക് ശേഷം സ്ഥിരമായ രൂപത്തിൽ പുനരുജ്ജീവിപ്പിക്കാൻ കഴിയില്ല
ട്രാക്കിംഗ് മാറി. ഉദാഹരണം: ലയിപ്പിച്ച ശാഖകൾക്ക്, git-cvsserver ഒരു ശാഖ മാത്രം ട്രാക്ക് ചെയ്യുന്നു
വികസനത്തിന്റെ, ശേഷം എ ജിറ്റിനെ ലയിപ്പിക്കുക ക്രമാനുഗതമായി പുതുക്കിയ ഒരു ഡാറ്റാബേസ് ട്രാക്ക് ചെയ്തേക്കാം a
സ്ക്രാച്ചിൽ നിന്ന് പുനർനിർമ്മിച്ച ഒരു ഡാറ്റാബേസിനേക്കാൾ വ്യത്യസ്തമായ ബ്രാഞ്ച്, പൊരുത്തമില്ലാത്ത CVS ഉണ്ടാക്കുന്നു
റിവിഷൻ നമ്പറുകൾ. git-cvsserver എങ്കിൽ ഏത് ബ്രാഞ്ച് തിരഞ്ഞെടുക്കുമെന്ന് അറിയാൻ ഒരു മാർഗവുമില്ല
ലയിപ്പിക്കുന്നതിന് മുമ്പ് അത് വർദ്ധിപ്പിച്ച് പ്രവർത്തിപ്പിച്ചിരുന്നു. അതിനാൽ നിങ്ങൾക്ക് പൂർണ്ണമായോ ഭാഗികമായോ വേണമെങ്കിൽ (പഴയതിൽ നിന്ന്
ബാക്കപ്പ്) ഡാറ്റാബേസ് പുനരുജ്ജീവിപ്പിക്കുക, മുമ്പേ നിലവിലുള്ള CVS സാൻഡ്ബോക്സുകളിൽ നിങ്ങൾക്ക് സംശയമുണ്ടാകണം.
ഇനിപ്പറയുന്ന കോൺഫിഗറേഷൻ വേരിയബിളുകൾ ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഡാറ്റാബേസ് ബാക്കെൻഡ് ക്രമീകരിക്കാൻ കഴിയും:
ക്രമീകരിക്കുന്നു ഡാറ്റാബേസ് ബാക്ക്എൻഡ്
git-cvsserver Perl DBI മൊഡ്യൂൾ ഉപയോഗിക്കുന്നു. മാറുകയാണെങ്കിൽ അതിന്റെ ഡോക്യുമെന്റേഷനും വായിക്കുക
ഈ വേരിയബിളുകൾ, പ്രത്യേകിച്ച് DBI->കണക്ട്() യെ കുറിച്ച്.
gitcvs.dbName
ഡാറ്റാബേസിന്റെ പേര്. SQLite-നുള്ള കൃത്യമായ അർത്ഥം തിരഞ്ഞെടുത്ത ഡാറ്റാബേസ് ഡ്രൈവറെ ആശ്രയിച്ചിരിക്കുന്നു
ഇതൊരു ഫയൽ നാമമാണ്. വേരിയബിൾ സബ്സ്റ്റിറ്റ്യൂഷൻ പിന്തുണയ്ക്കുന്നു (ചുവടെ കാണുക). അടങ്ങിയിരിക്കണമെന്നില്ല
അർദ്ധവിരാമങ്ങൾ (;). ഡിഫോൾട്ട്: %Ggitcvs.%m.sqlite
gitcvs.dbDriver
ഉപയോഗിച്ച DBI ഡ്രൈവർ. ഇതിനായി നിങ്ങൾക്ക് ലഭ്യമായ ഏതെങ്കിലും ഡ്രൈവർ ഇവിടെ വ്യക്തമാക്കാം, പക്ഷേ അത് അങ്ങനെയാകണമെന്നില്ല
ജോലി. cvsserver ഉപയോഗിച്ച് പരീക്ഷിച്ചു DBD::SQLite, പ്രവർത്തിക്കാൻ റിപ്പോർട്ട് ചെയ്തു DBD::Pg, ഒപ്പം
റിപ്പോർട്ട് അല്ല പ്രവർത്തിക്കാൻ DBD::mysql. ദയവായി ഇതൊരു പരീക്ഷണാത്മക സവിശേഷതയായി പരിഗണിക്കുക.
കോളണുകൾ (:) അടങ്ങിയിരിക്കരുത് ഡിഫോൾട്ട്: SQLite
gitcvs.dbuser
ഡാറ്റാബേസ് ഉപയോക്താവ്. SQLite-ന് യാതൊരു ആശയവുമില്ലാത്തതിനാൽ, dbDriver സജ്ജീകരിച്ചാൽ മാത്രം ഉപയോഗപ്രദമാണ്
ഡാറ്റാബേസ് ഉപയോക്താക്കൾ. വേരിയബിൾ സബ്സ്റ്റിറ്റ്യൂഷൻ പിന്തുണയ്ക്കുന്നു (ചുവടെ കാണുക).
gitcvs.dbPass
ഡാറ്റാബേസ് പാസ്വേഡ്. SQLite-ന് യാതൊരു ആശയവുമില്ലാത്തതിനാൽ, dbDriver സജ്ജീകരിച്ചാൽ മാത്രം ഉപയോഗപ്രദമാണ്
ഡാറ്റാബേസ് പാസ്വേഡുകൾ.
gitcvs.dbTableNamePrefix
ഡാറ്റാബേസ് പട്ടിക നാമം പ്രിഫിക്സ്. വേരിയബിൾ സബ്സ്റ്റിറ്റ്യൂഷൻ പിന്തുണയ്ക്കുന്നു (ചുവടെ കാണുക). ഏതെങ്കിലും
അക്ഷരമാല അല്ലാത്ത പ്രതീകങ്ങൾ അടിവരകൾ ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിക്കും.
എല്ലാ വേരിയബിളുകളും ഓരോ ആക്സസ് രീതിയിലും സജ്ജമാക്കാൻ കഴിയും, മുകളിൽ കാണുക.
വേരിയബിൾ ബദൽ
dbDriver, dbUser എന്നിവയിൽ നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന വേരിയബിളുകൾ ഉപയോഗിക്കാം:
%G
Git ഡയറക്ടറിയുടെ പേര്
%g
ആൽഫ-ന്യൂമെറിക് ഒഴികെയുള്ള എല്ലാ പ്രതീകങ്ങളും, ., ഒപ്പം -
_ ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിക്കുന്നു (ഇത് ഒരു ഡയറക്ടറി നാമം ഉപയോഗിക്കുന്നത് എളുപ്പമാക്കും
വേണമെങ്കിൽ ഫയലിന്റെ പേര്)
%m
CVS മൊഡ്യൂൾ/Git തലയുടെ പേര്
%a
പ്രവേശന രീതി ("ext" അല്ലെങ്കിൽ "pserver" എന്നതിൽ ഒന്ന്)
%u
പ്രവർത്തിക്കുന്ന ഉപയോക്താവിന്റെ പേര് git-cvsserver. പേര് നിർണ്ണയിക്കാൻ കഴിയുന്നില്ലെങ്കിൽ, സംഖ്യ
uid ഉപയോഗിക്കുന്നു.
ENVIRONMENT
ഈ വേരിയബിളുകൾ ചില സാഹചര്യങ്ങളിൽ കമാൻഡ്-ലൈൻ ഓപ്ഷനുകളുടെ ആവശ്യകത ഒഴിവാക്കുന്നു, ഇത് അനുവദിക്കുന്നു
ജിറ്റ്-ഷെല്ലിലൂടെ എളുപ്പത്തിൽ നിയന്ത്രിത ഉപയോഗം.
GIT_CVSSERVER_BASE_PATH --ബേസ്-പാത്ത് എന്നതിലേക്കുള്ള ആർഗ്യുമെന്റിന്റെ സ്ഥാനത്ത് എത്തുന്നു.
GIT_CVSSERVER_ROOT ഒരു ഒറ്റ ഡയറക്ടറി വൈറ്റ്ലിസ്റ്റ് വ്യക്തമാക്കുന്നു. ശേഖരം ഇപ്പോഴും ഉണ്ടായിരിക്കണം
മുകളിൽ വിവരിച്ചതുപോലെ, git-cvsserver വഴി പ്രവേശനം അനുവദിക്കുന്നതിനായി ക്രമീകരിച്ചിരിക്കുന്നു.
ഈ എൻവയോൺമെന്റ് വേരിയബിളുകൾ സജ്ജമാക്കുമ്പോൾ, അനുബന്ധ കമാൻഡ്-ലൈൻ ആർഗ്യുമെന്റുകൾ ഉണ്ടാകണമെന്നില്ല
ഉപയോഗിക്കും.
ഗ്രഹണം CVS ഉപയോക്താവ് കുറിപ്പുകൾ
Eclipse CVS ക്ലയന്റുമായി ഒരു ചെക്ക്ഔട്ട് ലഭിക്കാൻ:
1. "ഒരു പുതിയ പ്രോജക്റ്റ് സൃഷ്ടിക്കുക → CVS ചെക്ക്ഔട്ടിൽ നിന്ന്" തിരഞ്ഞെടുക്കുക
2. ഒരു പുതിയ ലൊക്കേഷൻ സൃഷ്ടിക്കുക. ശരിയായത് എങ്ങനെ തിരഞ്ഞെടുക്കാം എന്നതിനെക്കുറിച്ചുള്ള വിശദാംശങ്ങൾക്ക് ചുവടെയുള്ള കുറിപ്പുകൾ കാണുക
പ്രോട്ടോകോൾ.
3. ബ്രൗസ് ചെയ്യുക മൊഡ്യൂളുകൾ ലഭ്യമാണ്. ഇത് നിങ്ങൾക്ക് റിപ്പോസിറ്ററിയിലെ തലകളുടെ ഒരു ലിസ്റ്റ് നൽകും.
നിങ്ങൾക്ക് അവിടെ നിന്ന് മരം ബ്രൗസ് ചെയ്യാൻ കഴിയില്ല. തലകൾ മാത്രം.
4. തിരഞ്ഞെടുക്കുക HEAD ഏത് ബ്രാഞ്ച്/ടാഗ് പരിശോധിക്കണമെന്ന് അത് ചോദിക്കുമ്പോൾ. "ലോഞ്ച് കമ്മിറ്റ് വിസാർഡ്" അൺടിക്ക് ചെയ്യുക
.project ഫയൽ ചെയ്യാതിരിക്കാൻ.
പ്രോട്ടോക്കോൾ കുറിപ്പുകൾ: നിങ്ങൾ pserver വഴി അജ്ഞാത ആക്സസ് ഉപയോഗിക്കുകയാണെങ്കിൽ, അത് തിരഞ്ഞെടുക്കുക. ആ
SSH ആക്സസ് ഉപയോഗിച്ച് തിരഞ്ഞെടുക്കണം ext പ്രോട്ടോക്കോൾ, കോൺഫിഗർ ചെയ്യുക ext ആക്സസ്
മുൻഗണനകൾ→ടീം→CVS→ExtConnection പാളി. CVS_SERVER "git cvsserver" ആയി സജ്ജമാക്കുക. അതല്ല
ഉപയോഗിക്കുമ്പോൾ പാസ്വേഡ് പിന്തുണ നല്ലതല്ല ext, നിങ്ങൾക്ക് തീർച്ചയായും SSH കീകൾ ഉണ്ടായിരിക്കണം
സജ്ജമാക്കുക.
പകരമായി, നിങ്ങൾക്ക് എക്ലിപ്സ് വാഗ്ദാനം ചെയ്യുന്ന നിലവാരമില്ലാത്ത extssh പ്രോട്ടോക്കോൾ ഉപയോഗിക്കാം. ഇൻ
CVS_SERVER അവഗണിക്കപ്പെട്ട സാഹചര്യത്തിൽ, നിങ്ങൾ cvs യൂട്ടിലിറ്റി മാറ്റിസ്ഥാപിക്കേണ്ടതുണ്ട്
കൂടെ സെർവർ git-cvsserver അല്ലെങ്കിൽ നിങ്ങളുടെ .bashrc കൈകാര്യം ചെയ്യുക, അങ്ങനെ വിളിക്കുക CVS ഫലപ്രദമായി വിളിക്കുന്നു
git-cvsserver.
ക്ലയന്റുകൾ അറിയപ്പെടുന്നത് TO ജോലി
ഡെബിയനിൽ CVS 1.12.9
MacOSX-ൽ CVS 1.11.17 (ഫിങ്ക് പാക്കേജിൽ നിന്ന്)
MacOSX-ൽ എക്ലിപ്സ് 3.0, 3.1.2 (എക്ലിപ്സ് CVS ക്ലയന്റ് കുറിപ്പുകൾ കാണുക)
· ആമCVS
പ്രവർത്തനങ്ങൾ പിന്തുണച്ചു
സാധാരണ ഉപയോഗത്തിന് ആവശ്യമായ എല്ലാ പ്രവർത്തനങ്ങളും പിന്തുണയ്ക്കുന്നു, ചെക്ക്ഔട്ട്, വ്യത്യാസം,
സ്റ്റാറ്റസ്, അപ്ഡേറ്റ്, ലോഗ്, ചേർക്കുക, നീക്കം ചെയ്യുക, പ്രതിബദ്ധത.
CVS ടാഗുകൾ അല്ലെങ്കിൽ റിവിഷൻ നമ്പറുകൾ (സാധാരണയായി -r) വായിക്കുന്ന മിക്ക CVS കമാൻഡ് ആർഗ്യുമെന്റുകളും പ്രവർത്തിക്കുന്നു, കൂടാതെ
ഏതെങ്കിലും git refspec (ടാഗ്, ബ്രാഞ്ച്, കമ്മിറ്റ് ഐഡി മുതലായവ) പിന്തുണയ്ക്കുന്നു. എന്നിരുന്നാലും, CVS റിവിഷൻ നമ്പറുകൾ
ഡിഫോൾട്ട് അല്ലാത്ത ശാഖകൾ നന്നായി അനുകരിക്കാത്തതിനാൽ, cvs ലോഗ് ടാഗുകളോ ശാഖകളോ കാണിക്കുന്നില്ല
എല്ലാം. (നോൺ-മെയിൻ-ബ്രാഞ്ച് CVS റിവിഷൻ നമ്പറുകൾ ഉപരിപ്ലവമായി CVS റിവിഷൻ നമ്പറുകളോട് സാമ്യമുള്ളതാണ്,
എന്നാൽ അവർ യഥാർത്ഥത്തിൽ ഒരു ജിറ്റ് കമ്മിറ്റ് ഐഡിയെ നേരിട്ട് എൻകോഡ് ചെയ്യുന്നു, പകരം ഇവയുടെ സംഖ്യയെ പ്രതിനിധീകരിക്കുന്നു
ബ്രാഞ്ച് പോയിന്റ് മുതൽ പുനരവലോകനങ്ങൾ.)
ഒരു പ്രത്യേക ബ്രാഞ്ച് ചെക്ക്ഔട്ട് ചെയ്യാൻ രണ്ട് വഴികളുണ്ടെന്ന കാര്യം ശ്രദ്ധിക്കുക. മറ്റൊരിടത്ത് വിവരിച്ചതുപോലെ
ഈ പേജ്, cvs ചെക്ക്ഔട്ടിന്റെ "മൊഡ്യൂൾ" പാരാമീറ്റർ ഒരു ബ്രാഞ്ച് നാമമായി വ്യാഖ്യാനിക്കപ്പെടുന്നു
പ്രധാന ശാഖയായി മാറുന്നു. നിങ്ങളാണെങ്കിൽപ്പോലും നൽകിയിരിക്കുന്ന സാൻഡ്ബോക്സിന്റെ പ്രധാന ശാഖയായി ഇത് തുടരും
cvs അപ്ഡേറ്റ് -r ഉപയോഗിച്ച് താൽക്കാലികമായി മറ്റൊരു ബ്രാഞ്ച് സ്റ്റിക്കി ആക്കുക. പകരമായി, -r വാദം
യഥാർത്ഥത്തിൽ ചെക്ക്ഔട്ട് ചെയ്യാൻ മറ്റേതെങ്കിലും ശാഖ സൂചിപ്പിക്കാൻ കഴിയും, മൊഡ്യൂൾ ഇപ്പോഴും അങ്ങനെ തന്നെയാണെങ്കിലും
"പ്രധാന" ശാഖ. ട്രേഡ്ഓഫുകൾ (നിലവിൽ നടപ്പിലാക്കിയിരിക്കുന്നതുപോലെ): ഓരോ പുതിയ "മൊഡ്യൂളും" പുതിയത് സൃഷ്ടിക്കുന്നു
തന്നിരിക്കുന്ന മൊഡ്യൂളിനുള്ള ചരിത്രമുള്ള ഡിസ്കിലെ ഡാറ്റാബേസ്, ഡാറ്റാബേസ് സൃഷ്ടിച്ചതിനുശേഷം,
ആ പ്രധാന ശാഖയ്ക്കെതിരായ പ്രവർത്തനങ്ങൾ വേഗത്തിലാണ്. അല്ലെങ്കിൽ, -r അധികമൊന്നും എടുക്കുന്നില്ല
ഡിസ്ക് സ്പേസ്, എന്നാൽ cvs അപ്ഡേറ്റ് പോലെയുള്ള പല പ്രവർത്തനങ്ങൾക്കും വളരെ മന്ദഗതിയിലായിരിക്കാം.
CVS അനുവദിക്കാത്ത പ്രതീകങ്ങളുള്ള ഒരു git refspec നിങ്ങൾക്ക് റഫർ ചെയ്യണമെങ്കിൽ, നിങ്ങൾ
രണ്ട് ഓപ്ഷനുകൾ ഉണ്ട്. ആദ്യം, ജിറ്റ് റെഫ്സ്പെക്ക് നേരിട്ട് വിതരണം ചെയ്യാൻ ഇത് പ്രവർത്തിച്ചേക്കാം
ഉചിതമായ CVS -r വാദം; ചില CVS ക്ലയന്റുകൾക്ക് കാര്യമായ സാനിറ്റി പരിശോധന നടത്താൻ തോന്നുന്നില്ല
വാദം. രണ്ടാമതായി, അത് പരാജയപ്പെടുകയാണെങ്കിൽ, നിങ്ങൾക്ക് ഒരു പ്രത്യേക പ്രതീക രക്ഷപ്പെടൽ സംവിധാനം ഉപയോഗിക്കാം
CVS ടാഗുകളിൽ സാധുതയുള്ള പ്രതീകങ്ങൾ മാത്രം ഉപയോഗിക്കുന്നു. 4 അല്ലെങ്കിൽ 5 പ്രതീകങ്ങളുടെ ഒരു ശ്രേണി
ഫോം (അണ്ടർസ്കോർ ("_"), ഡാഷ് ("-"), ഒന്നോ രണ്ടോ പ്രതീകങ്ങൾ, ഡാഷ് ("-")) എന്നിവ എൻകോഡ് ചെയ്യാൻ കഴിയും
ഒന്നോ രണ്ടോ അക്ഷരങ്ങളെ അടിസ്ഥാനമാക്കിയുള്ള വിവിധ പ്രതീകങ്ങൾ: സ്ലാഷിനുള്ള "s" ("/"), "പി" കാലയളവിനുള്ള
("."), "u" അടിവരയിടുന്നതിന് ("_"), അല്ലെങ്കിൽ ഏത് ബൈറ്റ് മൂല്യത്തിനും രണ്ട് ഹെക്സാഡെസിമൽ അക്കങ്ങൾ
(സാധാരണയായി ഒരു ASCII നമ്പർ, അല്ലെങ്കിൽ ഒരു UTF-8 എൻകോഡ് ചെയ്ത പ്രതീകത്തിന്റെ ഒരു ഭാഗം).
ലെഗസി മോണിറ്ററിംഗ് പ്രവർത്തനങ്ങൾ പിന്തുണയ്ക്കുന്നില്ല (എഡിറ്റുചെയ്യുക, കാണുക, ബന്ധപ്പെട്ടത്). കയറ്റുമതിയും
ഈ ഘട്ടത്തിൽ ടാഗിംഗ് (ടാഗുകളും ശാഖകളും) പിന്തുണയ്ക്കുന്നില്ല.
സി.ആർ.എൽ.എഫ് വര അവസാനിപ്പിക്കുന്നു പരിവർത്തനങ്ങൾ
ഡിഫോൾട്ടായി സെർവർ പുറത്തുപോകുന്നു -k എല്ലാ ഫയലുകൾക്കും മോഡ് ശൂന്യമാണ്, ഇത് CVS ക്ലയന്റിന് കാരണമാകുന്നു
ചില പ്ലാറ്റ്ഫോമുകളിൽ എൻഡ്-ഓഫ്-ലൈൻ പരിവർത്തനത്തിന് വിധേയമായി അവയെ ഒരു ടെക്സ്റ്റ് ഫയലുകളായി കണക്കാക്കാൻ.
സെർവറിനെ സജ്ജീകരിക്കാൻ എൻഡ്-ഓഫ്-ലൈൻ കൺവേർഷൻ ആട്രിബ്യൂട്ടുകൾ ഉപയോഗിക്കാൻ നിങ്ങൾക്ക് കഴിയും -k എന്നതിനായുള്ള മോഡുകൾ
gitcvs.usecrlfattr കോൺഫിഗറേഷൻ വേരിയബിൾ സജ്ജീകരിച്ച് ഫയലുകൾ. കാണുക ഗിറ്റാട്രിബ്യൂട്ടുകൾ(5) കൂടുതൽ കാര്യങ്ങൾക്കായി
എൻഡ്-ഓഫ്-ലൈൻ പരിവർത്തനത്തെക്കുറിച്ചുള്ള വിവരങ്ങൾ.
പകരമായി, gitcvs.usecrlfattr കോൺഫിഗറേഷൻ പ്രവർത്തനക്ഷമമാക്കിയിട്ടില്ലെങ്കിലോ ആട്രിബ്യൂട്ടുകൾ അനുവദിക്കുന്നില്ലെങ്കിലോ
ഒരു ഫയൽ നാമത്തിനായി സ്വയമേവ കണ്ടെത്തൽ, തുടർന്ന് സെർവർ gitcvs.allBinary കോൺഫിഗറേഷൻ ഉപയോഗിക്കുന്നു
സ്ഥിരസ്ഥിതി ക്രമീകരണം. gitcvs.allBinary സജ്ജീകരിച്ചിട്ടുണ്ടെങ്കിൽ, മറ്റുതരത്തിൽ വ്യക്തമാക്കിയിട്ടില്ലാത്ത ഇഷ്ടം ഫയൽ ചെയ്യുക
സ്ഥിരസ്ഥിതി -kb മോഡ്. അല്ലാത്തപക്ഷം ദി -k മോഡ് ശൂന്യമാണ്. എന്നാൽ gitcvs.allBinary സജ്ജീകരിച്ചിട്ടുണ്ടെങ്കിൽ
"ഊഹിക്കാൻ", പിന്നെ ശരിയായത് -k ഫയലിന്റെ ഉള്ളടക്കത്തെ അടിസ്ഥാനമാക്കി മോഡ് ഊഹിക്കും.
മികച്ച സ്ഥിരതയ്ക്കായി CVS, ക്രമീകരണം വഴി ഡിഫോൾട്ടുകൾ അസാധുവാക്കുന്നതാണ് നല്ലത്
gitcvs.usecrlfattr എന്നതിലേക്ക് ട്രൂ, gitcvs.allBinary "ഊഹിക്കാൻ".
ഡിപൻഡൻസികൾ
git-cvsserver DBD::SQLite-നെ ആശ്രയിച്ചിരിക്കുന്നു.
GIT
ഭാഗം ജിറ്റിനെ(1) സ്യൂട്ട്
onworks.net സേവനങ്ങൾ ഉപയോഗിച്ച് git-cvsserver ഓൺലൈനായി ഉപയോഗിക്കുക