git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Verilog/ASIC development support is insufficient in git , help!

From
JLJustin Leung <jleung@redback.com>
Date
May 12, 2008, 19:02 UTC
Message-ID
<4828942E.2060803@redback.com>
In-Reply-To
<56b7f5510805112257u13252c71kda880fb3f3e43485@mail.gmail.com>
Hi Dana,
 My best wishes to your family . having 6 surgeries is no joke.
I wish you have all recovered well .

Thanks for letting me know that I am not the crazy one to try to implement git in asia :)

I believe that this tool is full of potential in our community. All it takes would be just a minor tweak to fit our methodology .

in the mean time, while my team is still happy with cvs , due to the design habits (good or bads.. but they are used to the way it is ) , probably svn and p4 are still the only logical choose ; not that I m happy with these chooses though.

git will get there but i think no big hardware firm would like to be the first to adopt to it .. especially my managements would like to minimize risks .

 Justin
Dana How wrote:
Show 65 quoted lines
> Hi Justin,
>
> I was originally drawn to git for the exact reasons you identified in
> your 2nd email.
> Namely,  it is extremely difficult in a p4-based environment to share
> intermediate work within a design team without pushing the work out to
> be visible by the entire team.  "Inter-user design sync'ing" is exactly what
> I wanted.  In its absence,  we have made all references between files
> relative.  This means you can flip over to someone else's netlist by changing
> one path (say to the top-level design file) to point into someone's private
> repository.  That top-level file then includes everything else using paths
> relative to its own location,  so you get the correct stuff automatically.
> Of course,  you get tripped up all the time by stuff implicitly used and not
> named in the top-level file and its children...
>
> Now,  it would be far better for this to be a lightweight branch in git,  and
> then having people checkout this branch and use it.  (Because,  for example,
> while one person is pointing into another's tree,  the latter can't change.)
> But p4 (and cvs) has trained everyone to think of branches as painful and
> for wizards only.  Plus I am not personally interested in investing any time
> writing scripts on top of p4;  the ideas I outlined in the previous paragraph
> were easier and almost as good as anything (easily) doable in p4
> (but not as good as lightweight branching).
>
> I agree with other responses to your email that you may want to think
> about writing simple wrapper scripts that add tags to checkins with some
> simple incrementing numeric part to keep your back-end people happy.  Yet
> other responses were distracted by the linearity of your centralized/shared
> checkins:  the inter-design sync'ing you want,  and the lightweight branching
> it may imply,  aren't necessarily incompatible with the linear main
> public history
> that most design teams expect (and which is unavoidable in design work
> containing lots of unmergeable files,  such as layout design).
> So I don't necessarily think you would be happy with Subversion
> (I'm certainly not happy with p4).
>
> There are two other issues you may want to keep in mind.  In our
> chip design activities,  we have a lot of very large files (100MB to ~3GB),
> and the p4 repository has grown beyond 3TB.  Now,  this is simply
> a data set size region which is not used by the git developers.  I think
> the git data model is fine for large projects and files (Linus mused otherwise
> a few weeks ago,  but it seems fine to me),  but due to lack of use,
> various details when handling large files/projects remain to be worked out
> and/or optimized as much as the rest of git.  It is true since I
> started watching
> there have been a lot of important improvements in this area.
>
> Secondly,  you may also want to discuss with your IT people (or whoever
> is responsible for back-up) how git packs/repacks repositories.  Ours were
> very uncomfortable with the idea that the _entire_ repository has to get
> re-arranged frequently.  I think they would have been much happier
> with an approach more similar to how Unix systems were backed up in the
> 80s: have a level-0 repack which repacks everything, a level-1 which repacks
> only stuff added since the last level-0,  level-2 since level-1,  etc.
> To do this would be a pretty straightforward change to git-repack.sh,
> probably using .keep files.  In each level it is clear what needs to
> be backed up.
>
> Anyway,  good luck!  Many of the things you touched on,  or which I
> mentioned above,  have been (partially) implemented or at least
> discussed before,
> so your requests aren't crazy.  Unfortunately,  in my case,  having 6 surgeries
> in my family in the last year has kept me from doing that much useful
> for git along these lines and thus I remain stuck with p4 for now.
>   
Previous: Dana HowNext: Christian MICHON
Message 7 of 11 in “Verilog/ASIC development support is insufficient in git , help!”
  1. Justin LeungMay 11, 2008
  2. Kevin BallardMay 11, 2008
  3. Justin LeungMay 11, 2008
  4. Kevin BallardMay 11, 2008
  5. Justin LeungMay 12, 2008
  6. Dana HowMay 12, 2008
  7. Justin LeungMay 12, 2008
  8. Christian MICHONMay 11, 2008
  9. Justin LeungMay 12, 2008
  10. Jakub NarebskiMay 11, 2008
  11. Daniel BarkalowMay 12, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.