Sure, a great contribution of Angel with knowledge about Git.<div><br></div><div>Thanks.<br><br><div class="gmail_quote">2012/12/31 Juan Vuletich <span dir="ltr"><<a href="mailto:juan@jvuletich.org" target="_blank">juan@jvuletich.org</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Thanks Angel. Your insights will surely be very useful, even if we'll take it slow.<br>
<br>
Cheers,<div class="im"><br>
Juan Vuletich<br>
<br>
Angel Java Lopez wrote:<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
Hi people!<br>
<br>
I don't know enough of Smalltalk (and its source code in file) to see the best o better way of using GitHub. But I see in other technologies, used in this way:<br>
<br>
- Branch x is an experimental branch, on new or improved feature a. For example, x == stm and the feature is a == Software Transactional Memory. Eventually, the branch dissapears, or it is merged with the main one<br>
<br>
- Branch x is for other platform. Some people uses branch in this way, or eventually it fork another project. But this way of use is rare, AFAIK<br>
<br>
- Branch x is an experimental branch, but born from an external pull request. That is, some other author wrote a Software Transactional Memory implementation, and then, the main author(s) of the central repo, accept his/her contribution, but not in master yet, only to be testes and stressed by all.<br>

<br>
In forked repos, branches are used by the external contributor in the following way. He/she has many ideas, fixes, issues it can resolved. Then, forks the original repo, and not start to work DIRECTLY on this new fork. Instead, he/she creates a branch FOR EACH idea, fix, bug solution, etc... The branches are used like the patches in other systems. Author makes a pull request to central repo, per branch. So, the central authors can accept or reject by branch.<br>

<br>
Regarding Juan question, about "elaborate", the above was about branch. About tags, you can see in the Smalltalk GNU project the use of tags for versions. That is the "standard" way on most technologies.<br>

<br>
Angel "Java" Lopez<br>
@ajlopez<br>
github:ajlopez<br>
<br>
<br></div><div class="im">
On Mon, Dec 31, 2012 at 5:49 AM, H. Hirzel <<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.com</a> <mailto:<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.<u></u>com</a>>> wrote:<br>

<br>
    I have now done a sample how a repository could look like, see<br>
    <a href="https://github.com/hhzl/Cuis" target="_blank">https://github.com/hhzl/Cuis</a><br>
<br>
    A copy of PetitParser is in a subdirectory 'packages'.<br>
<br>
    I did this following the instructions of Angel in the 'Learning github<br>
    ...' thread. Thank you, Angel.<br>
<br>
    What is still missing is the proper use of branches. This should not<br>
    be done in a main branch but in a 'PetitParser' branch.<br>
<br>
    --Hannes<br>
<br>
    On 12/31/12, H. Hirzel <<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.com</a><br></div><div class="im">
    <mailto:<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.<u></u>com</a>>> wrote:<br>
    > Sorry, the last two mails should have gone under the 'Learning git'<br>
    > subject line.<br>
    ><br>
    > As for building a Cuis distribution from *.pck files I think we<br>
    need a<br>
    > 'packages' and a 'scripts' directory in the main repository<br>
    ><br>
    > <a href="https://github.com/jvuletich/Cuis" target="_blank">https://github.com/jvuletich/<u></u>Cuis</a><br>
    ><br>
    > And as we are at adding directories...<br>
    >    in addition a 'documentation' directory<br>
    ><br>
    > --Hannes<br>
    ><br>
    > On 12/31/12, H. Hirzel <<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.com</a><br></div><div><div class="h5">
    <mailto:<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.<u></u>com</a>>> wrote:<br>
    >> and later<br>
    >><br>
    >> <citation><br>
    >> Because a branch in Git is in actuality a simple file that contains<br>
    >> the 40 character SHA-1 checksum of the commit it points to,<br>
    branches<br>
    >> are cheap to create and destroy. Creating a new branch is as<br>
    quick and<br>
    >> simple as writing 41 bytes to a file (40 characters and a newline).<br>
    >><br>
    >> This is in sharp contrast to the way most VCS tools branch, which<br>
    >> involves copying all of the project’s files into a second<br>
    directory.<br>
    >> This can take several seconds or even minutes, depending on the<br>
    size<br>
    >> of the project, whereas in Git the process is always instantaneous.<br>
    >> Also, because we’re recording the parents when we commit, finding a<br>
    >> proper merge base for merging is automatically done for us and is<br>
    >> generally very easy to do. These features help encourage<br>
    developers to<br>
    >> create and use branches often.<br>
    >> </citation><br>
    >><br>
    >> Angel,<br>
    >><br>
    >> how do you think we should use branches?<br>
    >><br>
    >> Amber <a href="https://github.com/NicolasPetton/amber" target="_blank">https://github.com/<u></u>NicolasPetton/amber</a> (Smalltalk which<br>
    compiles<br>
    >> to JavaScript and runs on node.js or in a browser) for example only<br>
    >> has 5.<br>
    >><br>
    >><br>
    >> --Hannes<br>
    >><br>
    >> On 12/31/12, H. Hirzel <<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.com</a><br></div></div><div><div class="h5">
    <mailto:<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.<u></u>com</a>>> wrote:<br>
    >>> There are about 40 branches with names like 'Seaside',<br>
    'Omnibrowser',<br>
    >>> 'Filesystem' ....<br>
    >>><br>
    >>> and the tags are used for version numbers.<br>
    >>><br>
    >>> It seems that the integration/development of a subsystem is<br>
    done in a<br>
    >>> branch.<br>
    >>><br>
    >>> I think we all have to read Chapter 3 of the git book<br>
    >>><br>
    >>> <a href="http://git-scm.com/book/en/Git-Branching" target="_blank">http://git-scm.com/book/en/<u></u>Git-Branching</a><br>
    >>><br>
    >>> <citation><br>
    >>> Some people refer to the branching model in Git as its “killer<br>
    >>> feature” , and it certainly sets Git apart in the VCS<br>
    community. Why<br>
    >>> is it so special? The way Git branches is incredibly lightweight,<br>
    >>> making branching operations nearly instantaneous and switching<br>
    back<br>
    >>> and forth between branches generally just as fast. Unlike many<br>
    other<br>
    >>> VCSs, Git encourages a workflow that branches and merges<br>
    often, even<br>
    >>> multiple times in a day. Understanding and mastering this feature<br>
    >>> gives you a powerful and unique tool and can literally change<br>
    the way<br>
    >>> that you develop.<br>
    >>> </citation><br>
    >>><br>
    >>> :-)<br>
    >>><br>
    >>> --Hannes<br>
    >>><br>
    >>><br>
    >>> On 12/31/12, Juan Vuletich <<a href="mailto:juan@jvuletich.org" target="_blank">juan@jvuletich.org</a><br></div></div><div class="im">
    <mailto:<a href="mailto:juan@jvuletich.org" target="_blank">juan@jvuletich.org</a>>> wrote:<br>
    >>>> Can you elaborate? You see here something I don't get.<br>
    >>>><br>
    >>>> Thanks,<br>
    >>>> Juan Vuletich<br>
    >>>><br>
    >>>> Angel Java Lopez wrote:<br>
    >>>>> Interesting... see the combination of tags and branches<br>
    >>>>><br>
    >>>>> On Sun, Dec 30, 2012 at 6:53 PM, H. Hirzel<br>
    <<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.com</a> <mailto:<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.<u></u>com</a>><br></div>
    >>>>> <mailto:<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.<u></u>com</a><div class="im"><br>
    <mailto:<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.<u></u>com</a>>>> wrote:<br>
    >>>>><br>
    >>>>>     And I think it is useful to have a look at the directory<br>
    structure<br>
    >>>>> of<br>
    >>>>>        <a href="https://github.com/bonzini/smalltalk" target="_blank">https://github.com/bonzini/<u></u>smalltalk</a> (GNU Smalltalk)<br>
    >>>>><br>
    >>>>>     --Hannes<br>
    >>>>><br>
    >>>><br>
    >>>><br>
    >>>> ______________________________<u></u>_________________<br>
    >>>> Cuis mailing list<br></div>
    >>>> <a href="mailto:Cuis@jvuletich.org" target="_blank">Cuis@jvuletich.org</a> <mailto:<a href="mailto:Cuis@jvuletich.org" target="_blank">Cuis@jvuletich.org</a>><div class="im"><br>
    >>>> <a href="http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org" target="_blank">http://jvuletich.org/mailman/<u></u>listinfo/cuis_jvuletich.org</a><br>
    >>>><br>
    >>><br>
    >><br>
    ><br>
<br>
    ______________________________<u></u>_________________<br>
    Cuis mailing list<br></div>
    <a href="mailto:Cuis@jvuletich.org" target="_blank">Cuis@jvuletich.org</a> <mailto:<a href="mailto:Cuis@jvuletich.org" target="_blank">Cuis@jvuletich.org</a>><br>
    <a href="http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org" target="_blank">http://jvuletich.org/mailman/<u></u>listinfo/cuis_jvuletich.org</a><br>
<br>
<br>
------------------------------<u></u>------------------------------<u></u>------------<div class="im"><br>
<br>
______________________________<u></u>_________________<br>
Cuis mailing list<br>
<a href="mailto:Cuis@jvuletich.org" target="_blank">Cuis@jvuletich.org</a><br>
<a href="http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org" target="_blank">http://jvuletich.org/mailman/<u></u>listinfo/cuis_jvuletich.org</a><br>
  <br>
</div></blockquote><div class="HOEnZb"><div class="h5">
<br>
<br>
______________________________<u></u>_________________<br>
Cuis mailing list<br>
<a href="mailto:Cuis@jvuletich.org" target="_blank">Cuis@jvuletich.org</a><br>
<a href="http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org" target="_blank">http://jvuletich.org/mailman/<u></u>listinfo/cuis_jvuletich.org</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div></div>