[Kde-i18n-pt_br] Explicações

Henrique Marks henriquemarks em gmail.com
Sexta Maio 2 05:52:32 CEST 2008


Um usuário anônimo da lista, o Cícero Julião, me mandou uma pergunta
que ele considera "idiota". A pergunta na verdade é tão boa que
repasso para a lista (desculpa aí Cícero).

Como você bem sabe, estou começando agora :). Portanto, ainda fico
perdido com algumas expressões. Se for muito idiota não entender tais
expressões, peço desculpas antecipado. kkk

O que significa:  "fazendo o trunk",   "fazer merge"?

trunk, stable, branch, são todas expressões relacionadas ao SVN, que é
o sistema de controle de código fonte que o KDE usa: Quando você
trabalha nestes projetos, muitas pessoas contribuem ao mesmo tempo,
nos mesmos arquivos. Como gerenciar esta bagunça ? Utiliza-se para
isto o Subversion, ou SVN para os íntimos.

O trabalho do SVN é guardar todo o código em um ou mais servidores, e
possiblitar que as pessoas tenham acesso livre a este código, para
ver, tocar, mudar, etc. Todo mundo tem acesso livre "de leitura" do
código fonte (e dos arquivos de tradução, que fazem parte do código e
sobre os quais trabalhamos). Mas nem todos tem o acesso no sentido
contrário, ou seja, nem todos podem colocar no repositório novos
arquivos, traduções, etc. Algumas pessoas do nosso time tem este
acesso, e ele é conquistado trabalhando no projeto.

O desenvolvimento de projetos deste porte tem um ciclo que é seguido
por vários projetos de software livre e proprietário. Imagine o
desenvolvimento do software como uma linha, como mostrado adiante ( eu
adoro ASCII art :-) )

--------------------------------------------------------------------------------

A cada dia o software evolui mais e mais, até que chega o dia de seu
lançamento. No entanto, todos sabemos que softwares sofrem mudanças.
Com base nesta premissa, podemos pensar: quem sabe transformamos nossa
"linha" de desenvolvimento em duas: uma para continuar evoluindo e
outra apenas para correções pequenas, em que nada fundamentalmente
novo pode  ser feito, apenas correções são aceitas. A nossa linha de
desenvolvimento ficaria assim:


-----------------------X--------------------------------------------------------------------------------
                             |
                             |
                             |

X--------------------------------------------------------------------------------

O processo de pegar a linha de desenvolvimento (a primeira) e
"quebrá-la" ou "ramificá-la" é chamado de branch (do inglês ramo).
Assim, quando é feito um branch, estamos criando uma segunda linha de
desenvolvimento, na qual apenas bugs podem ser corrigidos, ou pequenas
coisas. Na linha principal, chamada de "tronco" (daí a expressão
trunk) continua o desenvolvimento normal, aquele que produzirá o
software de amanhã.

Para o KDE vale tudo isto: atualmente, está se desenvolvendo a versão
4.1 do KDE. Então o trunk contém o desenvolvimento da versão 4.1. A
última versão estável (stable) gerada foi a 4.0. Esta 4.0 recebeu
tantos consertos que gerou a versão 4.0.1, 4.0.2, e a mais atual
versão do KDE 4.0, a 4.0.3.

Quando traduzimos, podemos escolher: vamos traduzir para o KDE 4.0 ?
Então traduzimos pacotes do stable. Vamos traduzir para a versão
futura ? Então pegamos pacotes do trunk. Vamos traduzir daquela velha
versão, chamada KDE 3.5, que está no 3.5.9, e que é usada por 99% dos
usuários do KDE, e que por isso merece estar completa em Português ?
Então pegamos as mensagens do KDE 3.5.

Deve-se notar, que por causa disso, as mensagens do stable quase não
mudam: numa versão stable, são congeladas as mensagens de tradução. No
trunk estará liberada a colocação de mensagens até alguns dias antes
da liberação do 4.1. Ou seja, se conseguirmos que o trunk fique
próximo de 100%, é muito provável que toda a séria 4.1.x tenha
tradução completa em Português do Brasil.

O que vai acontecer no futuro, daqui ha dois meses, no SVN do KDE:
Será feita uma nova ramificação no trunk do KDE, gerando o "branch"
4.1. Neste branch, somente correções de bugs serão aceitas, e as
mensagens estarão congeladas, sendo aceitas somente traduções. O trunk
vai passar a conter código que irá construir o KDE 4.2, e assim por
diante.

Por que eu traduzo então do kde stable (4.0), se já teremos o 4.1 logo ali ?

Por dois motivos:
1 - Muitos usuários querem usar o KDE 4.0 em Português do Brasil.
2 - Por que a maior parte das mensagens que está no stable também está
no trunk. Lembre-se que o stable é uma ramificação do trunk, ou seja,
no dia que a ramificação foi feita eles eram iguais. Claro, o trunk
evolui, o branch stable parou, então eles vão se tornando diferentes,
mas muita coisa é igual.

Deste modo, minha idéia para o kopete, por exemplo, é que façamos
agora uma junção, que peguemos a versão do stable e coloquemos o
máximo de mensagens já traduzidas no arquivo do trunk. Isto será um
pouco trabalhoso, mas mais fácil do que não aproveitar nada do
trabalho anterior feito no stable. Este ato de juntar os arquivos é o
que chamo de "merge" (misturar). E eu gosto muito de kdiff3, do
kompare, e do msgfmt e seus correlatos para isto.

Final da aula.

P.S. Peço desculpas ao Cícero se ele não gostou da brincadeira, mas a
pergunta dele não é, de modo algum, "idiota". Respondi na lista porque
imagino que muitos outros tenham as mesmas dúvidas. E as pessoas devem
perguntar mesmo, porque as vezes abusamos dos jargões sem explicá-los,
como foi este caso.

Até mais

-- 
Henrique Marks
henriquemarks em gmail.com
http://henriquemarks.blogspot.com
http://henriquemarks.googlepages.com
tel: 30237882


Mais detalhes sobre a lista de discussão Kde-i18n-pt_br