Da Anonimo (non verificato) , 29 Aprile 2026

Il caso onesto per Perforce

Questo articolo e un contrappeso. La maggior parte dei blog ingegneristici moderni assume che Git sia la risposta. Per un insieme significativo di progetti, Perforce e genuinamente la scelta migliore.

Segnale 1: workload binary-heavy

Se i tuoi commit quotidiani includono modelli FBX, file PSD, WAV multi-gigabyte, footage camera raw, assemblaggi CAD o artefatti motore compilati, il design di Perforce si adatta al lavoro.

Da Anonimo (non verificato) , 29 Aprile 2026

La domanda del costo

Perforce / Helix Core e software commerciale. Il prezzo varia per piano ma tipicamente atterra intorno ai 25-50 USD per utente al mese.

Da Anonimo (non verificato) , 29 Aprile 2026

Perche il locking conta

Alcuni file non possono essere mergati. Un modello 3D in .fbx, un file Photoshop in .psd, un assemblaggio CAD.

Il modello di locking di Perforce

p4 edit character.fbx
p4 submit -d "Update rig"

p4 lock character.fbx
p4 unlock character.fbx

Il modello nativo di Git

Git non ha concetto di lock esclusivi.

Da Anonimo (non verificato) , 29 Aprile 2026

Problemi diversi, soluzioni diverse

Perforce fu rilasciato nel 1995. Mira a una particolare forma di problema: contenuto grande, spesso binario; workflow altamente regolamentati.

Architettura

Perforce e centralizzato, come SVN, ma ingegnerizzato per scala ben oltre l'uso tipico di SVN.

Da Anonimo (non verificato) , 29 Aprile 2026

L'inflessione del 2005

BitKeeper era stato il VCS del kernel Linux fino all'aprile 2005. Linus Torvalds scrisse Git in 10 giorni. Matt Mackall inizio Mercurial settimane dopo.

Il fattore Linux

Il kernel Linux e il piu grande, piu influente progetto open-source nella storia.

Il fattore GitHub

GitHub si lancio nell'aprile 2008. Per il 2010 GitHub era l'hub OSS.

Effetti di rete

Il costo di cambiare VCS scala con la dimensione del team e l'investimento nell'ecosistema.

Da Anonimo (non verificato) , 29 Aprile 2026

Vocabolario di performance

"Performance su scala" puo significare molte cose: tempo di clone/fetch, velocita log/blame, throughput commit, gestione dimensione working tree.

Clone e fetch

I pack file di Git usano compressione delta aggressiva. Mercurial usa file bundle con compressione simile.

Da Anonimo (non verificato) , 29 Aprile 2026

Due forme di ecosistema

L'ecosistema Git e ampio, guidato dal mercato e irregolare. Quello di Mercurial e piu piccolo, deliberato e piu coeso.

Hosting

Hosting Git e ovunque. L'hosting Mercurial e diminuito drasticamente: Bitbucket ha abbandonato Mercurial nel 2020.

Integrazioni CI/CD

Ogni servizio CI maggiore supporta Git nativamente.

Supporto IDE

VS Code, JetBrains, Vim, Emacs, Sublime Text, Visual Studio — tutti hanno integrazione Git first-class.

Da Anonimo (non verificato) , 29 Aprile 2026

Due lignaggi di design

La CLI di Git e emersa organicamente. Quella di Mercurial e stata progettata top-down.

Coerenza dei comandi

Mercurial usa verbo-sostantivo coerentemente. I verbi di Git si sovrappongono.

Testo di aiuto

hg help commit
git help commit

Messaggi di errore

Mercurial ha errori notoriamente piu amichevoli.

Default sicuri

I comandi Mercurial raramente distruggono dati senza un'estensione esplicita.

Da Anonimo (non verificato) , 29 Aprile 2026

Stessa era, estetica diversa

Git e Mercurial furono entrambi rilasciati nell'aprile 2005, entrambi come risposte alle controversie di licenza di BitKeeper.

La posizione di Git: potenza, bordi, fidarsi dell'utente

Git espone i suoi internals.

La posizione di Mercurial: sicurezza, coerenza, conservatorismo

Mercurial nasconde gli internals piu aggressivamente.