Cosa pensano le persone del DVCS fossile? [chiuso]


124

fossil http://www.fossil-scm.org L'
ho trovato di recente e ho iniziato a usarlo per i miei progetti domestici. Voglio sentire cosa pensano gli altri di questo VCS.

Quello che mi manca nella mente è il supporto IDE. Spero che arriverà, ma uso bene la riga di comando.

Le mie cose preferite sul fossile: eseguibile singolo con wiki del web server integrato e tracciamento dei bug. Il repository è solo un file di database SQLite ( http://www.sqlite.org ), su cui è facile eseguire backup. Mi piace anche il fatto che posso eseguire fossili da e mantenere il repository sulla mia chiavetta USB. Ciò significa che il mio sviluppo del software è diventato completamente portatile.

Ditemi cosa ne pensate....


Sembra davvero interessante. Sai se c'è qualche strumento per spingere / tirare su / da git, mercurial o svn?
Thilo,

Ho trovato un link sul wiki dei fossili. Non ho davvero guardato questo. Qualcuno che ha bisogno di questa funzione, dai un'occhiata e commenta: < fossil-scm.org/index.html/wiki?name=Import+CVS+Repositories >
javelinBCD


3
Fossil ha aggiunto l'importazione e l'esportazione GIT ... fossil-scm.org/index.html/doc/trunk/www/inout.wiki
javelinBCD

@javelinBCD: FYI Git non è un acronimo
bug del

Risposte:


182

Signor Millikin, se prenderà qualche minuto per rivedere parte della documentazione sui fossili, penso che le sue obiezioni vengano indirizzate lì. La memorizzazione di un repository in un database sQLite è probabilmente più sicura di qualsiasi altro approccio. Vedere il testo del collegamento per alcuni dei vantaggi dell'utilizzo di un database transazionale per archiviare un repository. Per quanto riguarda il gonfiore: il tutto è in un unico eseguibile autonomo che sembra confutare quella preoccupazione.

Divulgazione completa: sono l'autore del fossile.

Nota che ho scritto fossili perché nessun altro DVCS ha soddisfatto le mie esigenze. D'altra parte, i miei bisogni non sono i tuoi bisogni e quindi solo tu puoi giudicare se il fossile è giusto per te. Ma ti incoraggio almeno a dare un'occhiata alla documentazione e provare a capire il problema che il fossile sta cercando di risolvere prima di licenziarlo.


43
Fossil ha un bell'aspetto, bel lavoro.
Greg Hewgill,

7
Le caratteristiche fornite dai fossili che non si ottengono con altri DVCS includono: - Wiki integrato. - Tracciamento bug integrato - Manufatti immutabili - Eseguibile autonomo, autonomo che può essere eseguito in una prigione chroot - Formato file semplice, ben definito e duraturo - Interfaccia web integrata
A.Bouchez

71
Informativa completa : È anche l'autore di SQLite;)
Alan Plum,

18
+1 per questa parte della tua risposta: "D'altra parte, i miei bisogni non sono i tuoi bisogni e quindi solo tu puoi giudicare se il fossile è giusto per te". Ho avuto una formazione sulla gestione della qualità e hanno definito la qualità come "Adeguamento allo scopo". La tua risposta punta esattamente nella stessa direzione!
sergiol

1
@pluma, ho iniziato ad avere interessi in Fossil da quando ho sentito che è stato realizzato dallo sviluppatore di Sqlite, Mr. D Richard Hipp :) Anche se non l'ho usato, posso immaginare che sia leggero e robusto.
Edwin Yip,

47

Dopo aver usato Fossil per più di un anno su progetti di sviluppo non banali, mi sento abbastanza sicuro di approfondire questo argomento.

Di seguito la mia esperienza finora. A volte sto confrontando con git e svn, semplicemente perché conosco molto bene quegli SCM e il confronto mi rende più facile farcela.

Sono totalmente innamorato di questo SCM, quindi è principalmente punti sul lato della questione.

Cosa mi piace di Fossil:

1) Abbiamo un sacco di macchine (win / mac / un numero di distribuzioni Linux) e l'installazione a singolo eseguibile è bella come sembra. Nessuna dipendenza; funziona e basta. Git è un mucchio di file disordinati e l'inferno delle dipendenze in Subversion lo rende molto sgradevole su alcune distribuzioni Linux, specialmente se devi costruirlo tu stesso.

2) Il flusso di lavoro Fossil predefinito si adatta perfettamente ai nostri progetti e, se necessario, sono possibili più flussi di lavoro git'ish.

3) Lo abbiamo trovato estremamente robusto, anche su grandi progetti. Non mi aspetto nient'altro dai ragazzi che hanno scritto sqlite. Nessun incidente, nessuna corruzione, niente affari divertenti.

4) In realtà sono molto, molto soddisfatto delle prestazioni. Non veloce come git su alberi enormi, ma neanche molto più lento. Ricopro il tempo perso non dovendo consultare la documentazione ogni altro comando, come nel caso di Git.

5) Il fatto che ci sia un database transazionale collaudato dietro ogni operazione mi fa dormire meglio di notte. Sì, abbiamo attraversato più di un orribile incidente di depositi di Subversion stantii e corrotti (per fortuna, una comunità utile ci ha aiutato a risolverli.) Non riesco a immaginare che ciò accada in Fossil. Persino Subversion 1.7.x usa Sqlite ora per l'archiviazione dei metadati. (Prova a spegnere l'alimentazione nel mezzo di un commit git - lascerà un repository corrotto!)

6) Il tracker dei problemi integrato e il wiki sono opzionali, ovviamente, ma molto utili in quanto sono sempre presenti - non è richiesta l'installazione. Vorrei che il tracker dei problemi avesse alcune funzionalità in più, ma hey - è un SCM.

7) Il server integrato e la web gui sono semplicemente geniali e abbastanza configurabili tramite CSS.

8) A volte abbiamo bisogno di importare da e verso repository git e sovversione. Questo è un gioco da ragazzi in Fossil.

9) Repository di file singolo. Nessuna directory ".svn" dappertutto.

Cosa mi manca / non mi piace di Fossil:

1) Qualcuno per favore scrivi TortoiseFossil per i nostri utenti non tecnici di Windows :)

2) La comunità non è ancora così grande, quindi probabilmente è difficile per molte persone introdurla nella loro azienda. Speriamo che questo cambi, ottenendo tutti i vantaggi di una grande comunità (documentazione, ulteriori test delle nuove versioni, ecc.)

3) Vorrei che il sito web locale avesse una funzione di ricerca (inclusa la ricerca del contenuto del file).

4) Meno opzioni di unione rispetto a git (anche se il flusso di lavoro Fossil rende in primo luogo meno probabile la fusione.)

Spero che tutti diano una scossa a Fossil: il mondo è un posto migliore con cose che funzionano e che non è necessario essere uno scienziato missilistico da usare.


2
Hai dimenticato di dire che TortoiseFossil probabilmente arriverà un giorno, ma per ora abbiamo code.google.com/p/fuel-scm .
grand johnson,



Lo strumento fuel-scm era stato spostato in fuel-scm.org/fossil/index . Un altro approccio è quello di sfruttare l'IDE di Visual Studio se si utilizza per un progetto relativo a Windows. Consulta la documentazione su fossil-scm.org/xfer/doc/trunk/www/fossil-from-msvc.wiki
g5thomas

Solo curioso: qualcosa è cambiato negli ultimi anni?
gennaio

14

Fossil è piccolo, semplice, ma potente e robusto, mi ricorda alcuni principi di C Culture. Piacevole per chi si sviluppa in modo indipendente e continua a collaborare. Ogni grande progetto dovrebbe iniziare con principi e proseguirli al suo interno man mano che raccoglie più livelli (GUI, funzionalità extra).

Sono impressionato con fossili e iniziare a utilizzare ... dare un'occhiata al fossile

Saluti


11

Sto atterrando su questa pagina dopo un anno dall'ultimo post, l'aggiunta ricorsiva che è stata menzionata qui è ora curata.

Fossil mi affascina con semplicità soprattutto dopo che ho faticato a far funzionare un sistema di tracciamento dei bug con Mercurial. Devo vedere come gestire più progetti, pubblicare i repository per l'accesso multiutente e come fare l'unione, gestire le patch ecc. Ho la sensazione che non sarà deludente andare avanti.


7

Non mi interessa utilizzarlo per il controllo della versione del codice sorgente, ma mi interessa un wiki personale controllato controllato dalla versione che posso sincronizzare tra tutte le macchine che utilizzo.


4

damian,

1 / sì, il fossile non supporta l'aggiunta ricorsiva. Tuttavia ci sono alcune soluzioni piuttosto semplici come

for /r %i in (*.*) do fossil add "%i"

su Windows e

find . -type f -print0 | xargs -0 fossil add --

su Unix.

2 / Ho visto il messaggio su manifest non valido quando si aggiunge un file con caratteri non ASCII nel nome file. Il problema è stato corretto nell'ultima build.

Saluti, Petr


2
Puoi sempre usare PowerShell su Windows e questo rende molto più piacevole questo tipo di riga di comando.
javelinBCD,

14
Su Linux / Unix / Mac OS XI basta fare 'aggiunta fossile'. e aggiunge tutto, tutte le mie sottodirectory e tutto
Trausti Thor,

2
'fossil addremove' è anche completamente ricorsivo su tutte le piattaforme. Il post sopra è probabilmente obsoleto.
FvD,

1
Sì, questo post è obsoleto
Johannes Kuhn l'

3

Penso che i fossili siano davvero fantastici. La caratteristica più importante per me è stata l'installazione semplice e le impostazioni predefinite per gli sviluppatori. Attualmente lo uso per tenere traccia delle modifiche locali dei miei file. (Il nostro progetto è ospitato in sourceforge e tenuto traccia in CVS.) In questo modo posso "impegnarmi" localmente anche se altrimenti si romperà il progetto, quindi è possibile tenere traccia anche delle modifiche più piccole.


1

Fossil è buono. È semplice e facile da usare. Se fossil può fornire l'interfaccia della GUI per il check-in e il check-out, sarebbe meglio (preferire java gui all'archiviazione della GUI multipiattaforma).

I principali vantaggi di Fossil sono "open source" e "usa il database SQLite", quindi qualcuno può compilare il codice sorgente fossile per far funzionare i fossili sulla piattaforma google android (dispositivi mobili e tablet).


0

Sto provando il tuo CV in questo momento. Mi piace l'idea di avere tutto integrato. Dopo tutto, è tutto ciò che voglio quando cerco un sistema come questo. Sono un utente attivo di Mercurial. E non sono riuscito a trovare un'integrazione con un tracker di problemi (ho provato senza successo a impostare p Trac con mercurial in passato). Dopo alcuni test mi rendo conto che: 1) il comando "aggiungi" non è ricorsivo, oppure non riesco a trovare nel documento un modo per farlo 2) scrivo una mazza (lavoro con Windows) per aggiungere 750 file ed eseguo (ci è voluto un po 'di tempo). Quando un commit di esecuzione salta con "manifest malformed"

penso che potresti affrontare questi problemi e altri facendo un sondaggio come quello del Mercurial in https://www.mercurial-scm.org/wiki/UserSurvey . potresti scrivermi a dnoseda su gmail

mi interessa il tuo lavoro. continua a migliorarlo.

Saluti

ps .: come miglioramento del sindaco potresti aggiungere qualcosa come gitstat


3
(Non sono uno sviluppatore di fossili - solo un utente) 1. ha un tracker di problemi (è un self hosting) 2. La cartella di aggiunta di fossili è ricorsiva (ignora i file / le cartelle con il comando '.') L'ho usata ieri sera per creare un repository fossile locale del trunk di sovversione plt-scheme.org senza problemi 3. La mailing list è attiva e lo sviluppatore è molto reattivo e al momento non sembra troppo affollato. C'è anche il tracker dei problemi, che non ho dovuto usare perché Fossil è stato privo di bug per me.
Stephen,

1
Fogbugz (bug tracking) lavora con Kiln (un repository online per Mercurial) entrambi forniti da Fogcreek
Toby Allen

-9

Forse una reazione istintiva, ma l'idea di archiviare un repository in un BLOB binario come un database SQLite mi terrorizza. Sono anche dubbioso dei vantaggi di includere wiki e tracker di bug direttamente nel VCS - o sono sotto funzionalità rispetto al software completo come Trac, o il VCS è enormemente gonfio rispetto a Subversion o Bazaar.


21
SQLite non è "un BLOB binario". È un formato file veramente aperto, multipiattaforma e ben documentato. Poiché SQLite è il database più utilizzato, in futuro sarà sempre il supporto per esso. E la conservazione degli artefatti utilizzati nei fossili è anche efficiente, ben documentata e di facile lettura. SQLite è uno dei più grandi progetti open source oggi ed è ospitato usando fossili.
A. Bouchez,

3
per un modo semplice e veloce di interagire con un db sqlite, inclusa l'esportazione, vedere l'estensione di firefox code.google.com/p/sqlite-manager
matt wilkie

8
Tutti i DVCS là fuori sono "BLOB binari" quando guardi i loro repository. L'ultimo non binario è stato CVS ... Anch'io avevo delle riserve, ma le ho superate.
Jürgen A. Erhard,

2
"Fossil non si basa su SQLite. L'attuale implementazione di Fossil utilizza SQLite come archivio locale per il contenuto del database distribuito e come cache per meta-informazioni sul database distribuito che è precompilato per una presentazione semplice e veloce. Ma l'uso di SQLite in questo ruolo è un dettaglio di implementazione e non è fondamentale per la progettazione. " www.sqlite.org/debug1/doc/trunk/www/theory1.wiki
Gulbahar,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.