¿ªÔÆÌåÓý

ctrl + shift + ? for shortcuts
© 2025 Groups.io

Cloning Projects


 

I generally do a lot of "cloning" of projects to accommodate different processors, board-sizes etc.
I do not see an option to "save as" or "clone" etc on the main project page.
The only way I "seem" to be able to accomplish this is:
1) define a new project
2) delete the sch and kicad_pcb files
3) go to the seeding project's pcbnew and eeschema and use ctl-shift S to "save as" into the new cloned folder
4) re-establish the netlist.

All very cumbersome and I am a little uneasy that something may get "lost"? in the internals of the transfers.

Did I miss some hot-key or other command to simply "clone A ==> B"?

Thanks
Fritz


 

Hi,

By cloning I mean something else (having two or more same circuit at the board and than in order not to place and route all of them, just place and route one and clone make all the rest by cloning). For that operation there is a an "external plugin" (written in python that have to be installed in the kicad PCB by you and than the plugin appear at the list and if you select some option also a an tool icon at the PCB new.

I am also "cloning" schematic sheets into the new project.

I simple made a new project and draw circuit and when I want to add some old circuit I go to schematic sheet and select its circuit and move it from the sheets and place them outside the "page" and than just go to File/Append schematic sheet content and select some old schematic that I want to copy ("clone").? The old schematic appear at the new schematic sheet.

I am not doing the same thing at the layout but I don't see why the same thing won't work.

I am using the Kicad from linux and in order to some commands appear at the PCBnew (kicad layout) you have to run PCBnew outside of project. I am doing that by opening only PCBnew by opening linux terminal and simply run command "pcbnew".? I suppose that the same result at the windows would be just to run PCB new from the list af all programs.

When PCBnew is opened (not from the project but alone) than you should see the File/Append board command and you should be able to import the old layout into the new one (you should first move the old layout away from the center).

After you have both of your layouts at the same pcb than go to schematic and make component annotation and new netlist and in the pcb make netlist update.


Thanks,

Petar

On 12/14/19 3:07 PM, fritz wrote:
I generally do a lot of "cloning" of projects to accommodate different processors, board-sizes etc.
I do not see an option to "save as" or "clone" etc on the main project page.
The only way I "seem" to be able to accomplish this is:
1) define a new project
2) delete the sch and kicad_pcb files
3) go to the seeding project's pcbnew and eeschema and use ctl-shift S to "save as" into the new cloned folder
4) re-establish the netlist.

All very cumbersome and I am a little uneasy that something may get "lost"? in the internals of the transfers.

Did I miss some hot-key or other command to simply "clone A ==> B"?

Thanks
Fritz




 

Thanks Petar.
? I am looking for something a lot more basic than you describe. I simply want to make a duplicate of a complete project. Perusing the web, as of 2015 it did not appear as thought KiCad had a "save as" command. I would expect by now they would have this unless there is no intention of adding this feature. (KiCad does have "save as" for pcbnew and eescheama).? Is there a "save as" at the project level that I missed?

thanks
fritz

On 12/14/2019 9:59 AM, Petar Delic via Groups.Io wrote:
Hi,

By cloning I mean something else (having two or more same circuit at the board and than in order not to place and route all of them, just place and route one and clone make all the rest by cloning). For that operation there is a an "external plugin" (written in python that have to be installed in the kicad PCB by you and than the plugin appear at the list and if you select some option also a an tool icon at the PCB new.

I am also "cloning" schematic sheets into the new project.

I simple made a new project and draw circuit and when I want to add some old circuit I go to schematic sheet and select its circuit and move it from the sheets and place them outside the "page" and than just go to File/Append schematic sheet content and select some old schematic that I want to copy ("clone").? The old schematic appear at the new schematic sheet.

I am not doing the same thing at the layout but I don't see why the same thing won't work.

I am using the Kicad from linux and in order to some commands appear at the PCBnew (kicad layout) you have to run PCBnew outside of project. I am doing that by opening only PCBnew by opening linux terminal and simply run command "pcbnew".? I suppose that the same result at the windows would be just to run PCB new from the list af all programs.

When PCBnew is opened (not from the project but alone) than you should see the File/Append board command and you should be able to import the old layout into the new one (you should first move the old layout away from the center).

After you have both of your layouts at the same pcb than go to schematic and make component annotation and new netlist and in the pcb make netlist update.


Thanks,

Petar


On 12/14/19 3:07 PM, fritz wrote:
I generally do a lot of "cloning" of projects to accommodate different processors, board-sizes etc.
I do not see an option to "save as" or "clone" etc on the main project page.
The only way I "seem" to be able to accomplish this is:
1) define a new project
2) delete the sch and kicad_pcb files
3) go to the seeding project's pcbnew and eeschema and use ctl-shift S to "save as" into the new cloned folder
4) re-establish the netlist.

All very cumbersome and I am a little uneasy that something may get "lost"? in the internals of the transfers.

Did I miss some hot-key or other command to simply "clone A ==> B"?

Thanks
Fritz





 

Hi,

I organize my projects into folders.

I don't make all project in the same folder.

So than it is easy to find what you are looking for.

So when I want to copy some project I simple make copy/paste (folder) and rename the folder (that has project name) from the file browser.


Personally I would like to see some features that already exist in some Kicad branch (years ago) like custom? each ratsnat color... (So I could easier see the GND, VCC and some important nets... by different color).


Thanks,

Petar

On 12/14/19 6:30 PM, fritz wrote:
Thanks Petar.
? I am looking for something a lot more basic than you describe. I simply want to make a duplicate of a complete project. Perusing the web, as of 2015 it did not appear as thought KiCad had a "save as" command. I would expect by now they would have this unless there is no intention of adding this feature. (KiCad does have "save as" for pcbnew and eescheama).? Is there a "save as" at the project level that I missed?

thanks
fritz

On 12/14/2019 9:59 AM, Petar Delic via Groups.Io wrote:
Hi,

By cloning I mean something else (having two or more same circuit at the board and than in order not to place and route all of them, just place and route one and clone make all the rest by cloning). For that operation there is a an "external plugin" (written in python that have to be installed in the kicad PCB by you and than the plugin appear at the list and if you select some option also a an tool icon at the PCB new.

I am also "cloning" schematic sheets into the new project.

I simple made a new project and draw circuit and when I want to add some old circuit I go to schematic sheet and select its circuit and move it from the sheets and place them outside the "page" and than just go to File/Append schematic sheet content and select some old schematic that I want to copy ("clone"). The old schematic appear at the new schematic sheet.

I am not doing the same thing at the layout but I don't see why the same thing won't work.

I am using the Kicad from linux and in order to some commands appear at the PCBnew (kicad layout) you have to run PCBnew outside of project. I am doing that by opening only PCBnew by opening linux terminal and simply run command "pcbnew".? I suppose that the same result at the windows would be just to run PCB new from the list af all programs.

When PCBnew is opened (not from the project but alone) than you should see the File/Append board command and you should be able to import the old layout into the new one (you should first move the old layout away from the center).

After you have both of your layouts at the same pcb than go to schematic and make component annotation and new netlist and in the pcb make netlist update.


Thanks,

Petar


On 12/14/19 3:07 PM, fritz wrote:
I generally do a lot of "cloning" of projects to accommodate different processors, board-sizes etc.
I do not see an option to "save as" or "clone" etc on the main project page.
The only way I "seem" to be able to accomplish this is:
1) define a new project
2) delete the sch and kicad_pcb files
3) go to the seeding project's pcbnew and eeschema and use ctl-shift S to "save as" into the new cloned folder
4) re-establish the netlist.

All very cumbersome and I am a little uneasy that something may get "lost"? in the internals of the transfers.

Did I miss some hot-key or other command to simply "clone A ==> B"?

Thanks
Fritz








 

¿ªÔÆÌåÓý

Kicad 5.1.4: personally, I basically copy the project directory, keeping the .pro, .sch, .kicad_pcb and .lib files, then I complete their filenames by the new version ID.

Launching the .pro file then the other ones never raised any warning. I did it for more then 15 projects but for the moment, I don't know if this procedure is troubleless or if side effects might exist when rescue libs are present or something else.



On 14.12.19 18:30, fritz wrote:

Thanks Petar.
? I am looking for something a lot more basic than you describe. I simply want to make a duplicate of a complete project. Perusing the web, as of 2015 it did not appear as thought KiCad had a "save as" command. I would expect by now they would have this unless there is no intention of adding this feature. (KiCad does have "save as" for pcbnew and eescheama).? Is there a "save as" at the project level that I missed?

thanks
fritz

On 12/14/2019 9:59 AM, Petar Delic via Groups.Io wrote:
Hi,

By cloning I mean something else (having two or more same circuit at the board and than in order not to place and route all of them, just place and route one and clone make all the rest by cloning). For that operation there is a an "external plugin" (written in python that have to be installed in the kicad PCB by you and than the plugin appear at the list and if you select some option also a an tool icon at the PCB new.

I am also "cloning" schematic sheets into the new project.

I simple made a new project and draw circuit and when I want to add some old circuit I go to schematic sheet and select its circuit and move it from the sheets and place them outside the "page" and than just go to File/Append schematic sheet content and select some old schematic that I want to copy ("clone").? The old schematic appear at the new schematic sheet.

I am not doing the same thing at the layout but I don't see why the same thing won't work.

I am using the Kicad from linux and in order to some commands appear at the PCBnew (kicad layout) you have to run PCBnew outside of project. I am doing that by opening only PCBnew by opening linux terminal and simply run command "pcbnew".? I suppose that the same result at the windows would be just to run PCB new from the list af all programs.

When PCBnew is opened (not from the project but alone) than you should see the File/Append board command and you should be able to import the old layout into the new one (you should first move the old layout away from the center).

After you have both of your layouts at the same pcb than go to schematic and make component annotation and new netlist and in the pcb make netlist update.


Thanks,

Petar


On 12/14/19 3:07 PM, fritz wrote:
I generally do a lot of "cloning" of projects to accommodate different processors, board-sizes etc.
I do not see an option to "save as" or "clone" etc on the main project page.
The only way I "seem" to be able to accomplish this is:
1) define a new project
2) delete the sch and kicad_pcb files
3) go to the seeding project's pcbnew and eeschema and use ctl-shift S to "save as" into the new cloned folder
4) re-establish the netlist.

All very cumbersome and I am a little uneasy that something may get "lost"? in the internals of the transfers.

Did I miss some hot-key or other command to simply "clone A ==> B"?

Thanks
Fritz















 

Fritz said "I want to make a duplicate of a complete project."

My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)


 

I use git and branches.


On Sun, Dec 15, 2019, 08:52 ng10066504jan via Groups.Io <ng10066504jan=[email protected]> wrote:
Fritz said "I want to make a duplicate of a complete project."

My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)


 

¿ªÔÆÌåÓý

OK and thanks all for your comments on this.
Apparently the final answer is the one cannot just click "save as" to a different name and be done with it.

Fritz

On 12/15/2019 4:29 AM, Lev wrote:

I use git and branches.

On Sun, Dec 15, 2019, 08:52 ng10066504jan via Groups.Io <ng10066504jan=[email protected]> wrote:
Fritz said "I want to make a duplicate of a complete project."

My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)


 

¿ªÔÆÌåÓý

Open a command prompt and write a batch that will do it automatically.


On 15.12.19 14:17, fritz wrote:

OK and thanks all for your comments on this.
Apparently the final answer is the one cannot just click "save as" to a different name and be done with it.

Fritz

On 12/15/2019 4:29 AM, Lev wrote:
I use git and branches.

On Sun, Dec 15, 2019, 08:52 ng10066504jan via Groups.Io <ng10066504jan=[email protected]> wrote:
Fritz said "I want to make a duplicate of a complete project."

My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)



 

¿ªÔÆÌåÓý

Of course I could but the fact that the developers omit this obvious and standard command found in almost any software indicates to me that perhaps there are future plans that might create a problem later on, such as embedding the file tree information into the project files, integrating the program into some type of name dependent release management system etc etc.
? I fell into this trap with Microchip MPLAB and Zemax a while a back and learned not to tamper.

thanks
fritz

On 12/15/2019 11:56 AM, Pierre-Raymond Rondelle wrote:

Open a command prompt and write a batch that will do it automatically.


On 15.12.19 14:17, fritz wrote:
OK and thanks all for your comments on this.
Apparently the final answer is the one cannot just click "save as" to a different name and be done with it.

Fritz

On 12/15/2019 4:29 AM, Lev wrote:
I use git and branches.

On Sun, Dec 15, 2019, 08:52 ng10066504jan via Groups.Io <ng10066504jan=[email protected]> wrote:
Fritz said "I want to make a duplicate of a complete project."

My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)




 

I can only second the combination of KiCAD and git. Especially handy with the WireIt 3rd party plug-ins and submodules!?

Lev <leventelist@...> schrieb am So., 15. Dez. 2019, 10:29:

I use git and branches.

On Sun, Dec 15, 2019, 08:52 ng10066504jan via Groups.Io <ng10066504jan=[email protected]> wrote:
Fritz said "I want to make a duplicate of a complete project."

My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)


 

¿ªÔÆÌåÓý

I will look at git. I thought it was a version control facility. I am not interested in versions. I just need to clone a project so I can change certain features--I often have 2 or 3 almost identical boards that but using different processors depending on the research group that I am working with for example--or maybe each has a different connector depending the equipment to be interfaced.??? Each of these are named by the processor that they use and they are in their own folders--often on different servers planted with the research group. Not sure if git is meant for this--with other CADs "save as" does this--very simply.

Thanks
Fritz

On 12/15/2019 5:47 AM, grauseba via Groups.Io wrote:

I can only second the combination of KiCAD and git. Especially handy with the WireIt 3rd party plug-ins and submodules!?

Lev <leventelist@...> schrieb am So., 15. Dez. 2019, 10:29:
I use git and branches.

On Sun, Dec 15, 2019, 08:52 ng10066504jan via Groups.Io <ng10066504jan=[email protected]> wrote:
Fritz said "I want to make a duplicate of a complete project."

My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)


 

¿ªÔÆÌåÓý

well it as already been said, but with kicad you just have to copy the whole project directory with your file browser, and it's done...



Le 16/12/2019 ¨¤ 00:59, fritz a ¨¦crit?:

I will look at git. I thought it was a version control facility. I am not interested in versions. I just need to clone a project so I can change certain features--I often have 2 or 3 almost identical boards that but using different processors depending on the research group that I am working with for example--or maybe each has a different connector depending the equipment to be interfaced.??? Each of these are named by the processor that they use and they are in their own folders--often on different servers planted with the research group. Not sure if git is meant for this--with other CADs "save as" does this--very simply.

Thanks
Fritz

On 12/15/2019 5:47 AM, grauseba via Groups.Io wrote:
I can only second the combination of KiCAD and git. Especially handy with the WireIt 3rd party plug-ins and submodules!?

Lev <leventelist@...> schrieb am So., 15. Dez. 2019, 10:29:
I use git and branches.

On Sun, Dec 15, 2019, 08:52 ng10066504jan via Groups.Io <ng10066504jan=[email protected]> wrote:
Fritz said "I want to make a duplicate of a complete project."

My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)


 

Well, this is a typical use case of a version control system.


BR and amrry XMAS,
Levente


On Mon, Dec 16, 2019, 00:59 fritz <fsonnichsen@...> wrote:
I will look at git. I thought it was a version control facility. I am not interested in versions. I just need to clone a project so I can change certain features--I often have 2 or 3 almost identical boards that but using different processors depending on the research group that I am working with for example--or maybe each has a different connector depending the equipment to be interfaced.??? Each of these are named by the processor that they use and they are in their own folders--often on different servers planted with the research group. Not sure if git is meant for this--with other CADs "save as" does this--very simply.

Thanks
Fritz

On 12/15/2019 5:47 AM, grauseba via Groups.Io wrote:
I can only second the combination of KiCAD and git. Especially handy with the WireIt 3rd party plug-ins and submodules!?

Lev <leventelist@...> schrieb am So., 15. Dez. 2019, 10:29:
I use git and branches.

On Sun, Dec 15, 2019, 08:52 ng10066504jan via Groups.Io <ng10066504jan=[email protected]> wrote:
Fritz said "I want to make a duplicate of a complete project."

My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)


 

"Divide and conquer" pays lots of dividends. Is there no way to modify your design so that ONE board can serve all of those clients, with just a few configuration links to set differently? I'd certainly look hard for an answer along those lines.

When I spoke of "divide", I meant divide the system up, put the "seams" in places that allow some modules to be shared by systems which, overall, have different functions/ behaviors.

Tom

Help for beginners, "Getting started" recently overhauled... https://KiCadHowTo.org

On Sunday, 15 December 2019, 23:59:17 GMT, fritz <fsonnichsen@...> wrote:


I will look at git. I thought it was a version control facility. I am not interested in versions. I just need to clone a project so I can change certain features--I often have 2 or 3 almost identical boards that but using different processors depending on the research group that I am working with for example--or maybe each has a different connector depending the equipment to be interfaced.??? Each of these are named by the processor that they use and they are in their own folders--often on different servers planted with the research group. Not sure if git is meant for this--with other CADs "save as" does this--very simply.

Thanks
Fritz

On 12/15/2019 5:47 AM, grauseba via Groups.Io wrote:
I can only second the combination of KiCAD and git. Especially handy with the WireIt 3rd party plug-ins and submodules!?

Lev <leventelist@...> schrieb am So., 15. Dez. 2019, 10:29:

I use git and branches.

On Sun, Dec 15, 2019, 08:52 ng10066504jan via Groups.Io <ng10066504jan=[email protected]> wrote:
Fritz said "I want to make a duplicate of a complete project."

My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)


 

¿ªÔÆÌåÓý

I occasionally do this type of thing with jumpers etc.? But it is just too simple to click "save as", shut down the lab and head for the local tavern (;->
? ? I am rather surprised that I would need to? invoke some additional software or add more clutter to my boards just to avoid a simple "save as" command. Not sure what the philosophy was here but then I am not a computer guy and my software skills date to the time of wire boards and the UNIVAC so I am probably just showing my age and not adopting new ways.?
? At any rate I respect what KiCad developers have accomplished and will continue to pursue it without the famous "save as" button. The bigger dragon I am trying to slay is how to move 100 pin parts a few mm without having to redraft all 100 pin connections. I guess it cannot be done.

regards-
Fritz (AA2OP)

On 12/16/2019 9:56 AM, ng10066504jan via Groups.Io wrote:

"Divide and conquer" pays lots of dividends. Is there no way to modify your design so that ONE board can serve all of those clients, with just a few configuration links to set differently? I'd certainly look hard for an answer along those lines.

When I spoke of "divide", I meant divide the system up, put the "seams" in places that allow some modules to be shared by systems which, overall, have different functions/ behaviors.

Tom

Help for beginners, "Getting started" recently overhauled...

On Sunday, 15 December 2019, 23:59:17 GMT, fritz <fsonnichsen@...> wrote:


I will look at git. I thought it was a version control facility. I am not interested in versions. I just need to clone a project so I can change certain features--I often have 2 or 3 almost identical boards that but using different processors depending on the research group that I am working with for example--or maybe each has a different connector depending the equipment to be interfaced.??? Each of these are named by the processor that they use and they are in their own folders--often on different servers planted with the research group. Not sure if git is meant for this--with other CADs "save as" does this--very simply.

Thanks
Fritz

On 12/15/2019 5:47 AM, grauseba via Groups.Io wrote:
I can only second the combination of KiCAD and git. Especially handy with the WireIt 3rd party plug-ins and submodules!?

Lev <leventelist@...> schrieb am So., 15. Dez. 2019, 10:29:
I use git and branches.

On Sun, Dec 15, 2019, 08:52 ng10066504jan via Groups.Io <ng10066504jan=[email protected]> wrote:
Fritz said "I want to make a duplicate of a complete project."

My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)



 

A one liner will do the job usually.

here is a simple example:

I have a directory containing a project LM386-AFamp
I copy this directory to LM386-AFamp2 using the file manager or the shell
cd into the directory

ls -al

and you will see something like

(user info removed)

AF-AMP-LM386.bak
AF-AMP-LM386-cache.lib
AF-AMP-LM386.kicad_pcb
AF-AMP-LM386.kicad_pcb-bak
AF-AMP-LM386.net
AF-AMP-LM386.pro
AF-AMP-LM386-rescue.lib
AF-AMP-LM386.sch
AF-AMP-LM386.sch-bak
fp-info-cache
rescue-backup
sym-lib-table

run the command

find -name "AF-AMP*" -exec rename AF-AMP AF-AMP2 {} \;

ls -al (again)


AF-AMP2-LM386.bak
AF-AMP2-LM386-cache.lib
AF-AMP2-LM386.kicad_pcb
AF-AMP2-LM386.kicad_pcb-bak
AF-AMP2-LM386.net
AF-AMP2-LM386.pro
AF-AMP2-LM386-rescue.lib
AF-AMP2-LM386.sch
AF-AMP2-LM386.sch-bak
fp-info-cache
rescue-backup
sym-lib-table

and you can see that the names have all been changed to match
the rescue-directory can be deleted I think and it will be recreated on
the first edit.

obviously you can develop this into a little shell batch command if you
want, but I just cut and paste it from my notebook into a shell and edit
as needed.

Note that this is NOT error checked, and you need to ensure that you are
in the directory that you want to operate on....

Hope this helps

Andy
.




On Sun, 15 Dec 2019 17:56:34 +0100
"Pierre-Raymond Rondelle" <pierreraymondrondelle@...> wrote:

Open a command prompt and write a batch that will do it automatically.

On 15.12.19 14:17, fritz wrote:
OK and thanks all for your comments on this.
Apparently the final answer is the one cannot just click "save as" to a different name and be done with it.

Fritz

On 12/15/2019 4:29 AM, Lev wrote:
I use git and branches.

On Sun, Dec 15, 2019, 08:52 ng10066504jan via Groups.Io <ng10066504jan@...> wrote:
Fritz said "I want to make a duplicate of a complete project."

My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)


 

Thanks Andy.
? I have done this -- I am perhaps over cautious as some products that I use put internal directory trees into the files and this can create problems but apparently-so far-not an issue here. I delete most of the generates files like netlist and just rerun it from the new directory.

thanks
fritz

On 12/16/2019 8:55 PM, Andy Eskelson wrote:
A one liner will do the job usually.

here is a simple example:

I have a directory containing a project LM386-AFamp
I copy this directory to LM386-AFamp2 using the file manager or the shell
cd into the directory

ls -al

and you will see something like

(user info removed)

AF-AMP-LM386.bak
AF-AMP-LM386-cache.lib
AF-AMP-LM386.kicad_pcb
AF-AMP-LM386.kicad_pcb-bak
AF-AMP-LM386.net
AF-AMP-LM386.pro
AF-AMP-LM386-rescue.lib
AF-AMP-LM386.sch
AF-AMP-LM386.sch-bak
fp-info-cache
rescue-backup
sym-lib-table

run the command

find -name "AF-AMP*" -exec rename AF-AMP AF-AMP2 {} \;

ls -al (again)

AF-AMP2-LM386.bak
AF-AMP2-LM386-cache.lib
AF-AMP2-LM386.kicad_pcb
AF-AMP2-LM386.kicad_pcb-bak
AF-AMP2-LM386.net
AF-AMP2-LM386.pro
AF-AMP2-LM386-rescue.lib
AF-AMP2-LM386.sch
AF-AMP2-LM386.sch-bak
fp-info-cache
rescue-backup
sym-lib-table

and you can see that the names have all been changed to match
the rescue-directory can be deleted I think and it will be recreated on
the first edit.

obviously you can develop this into a little shell batch command if you
want, but I just cut and paste it from my notebook into a shell and edit
as needed.

Note that this is NOT error checked, and you need to ensure that you are
in the directory that you want to operate on....

Hope this helps

Andy
.




On Sun, 15 Dec 2019 17:56:34 +0100
"Pierre-Raymond Rondelle" <pierreraymondrondelle@...> wrote:

Open a command prompt and write a batch that will do it automatically.

On 15.12.19 14:17, fritz wrote:
OK and thanks all for your comments on this.
Apparently the final answer is the one cannot just click "save as" to a different name and be done with it.

Fritz

On 12/15/2019 4:29 AM, Lev wrote:
I use git and branches.
On Sun, Dec 15, 2019, 08:52 ng10066504jan via Groups.Io <ng10066504jan@...> wrote:
Fritz said "I want to make a duplicate of a complete project."
My "answer" has worked fine for me, for many years, using Windows.

I am blessed with the initials "TKB". I say "blessed" because since 1968, those letters do not seem to have been used for other things.

Thus I can create a folder called KiCadTKB, and know that it is "MyKiCad"... and actually MY stuff, not a folder created by the system.

Within that, I create a "meta folder" for every project. (And every project has a short-form name, e.g. "PCB274". The Meta-folder name will usually have some additional hints as to what the project is for, e.g. "PCB274-quad optocoupler for level shifting" because PCB274 was a breakout to provide 4 channels of opto isolation to convert some 12v digital signals to Arduino-friendly levels.

Within that, a folder called PCB274. That will be my "latest, greatest" version of the board.

From time to time, I go into the ordinary comes-with-Windows file manager, "File Explorer". (I can do all of the following mid-session, without shutting down KiCad. I need to have saved (from within KiCad) any open files.) I right-click on the PCB274 file. Select "Copy". Right-click on a blank part of "PCB274-quad optocoupler for level shifting"' window. Select "Paste". That gives me my duplicate of my project, named "PCB274-Copy" for the moment. I would change the name to something like "PCB274BU19b22-1405", if the backup were made in 2019, November (a/b/c for Oct/Nov/Dec, so month is always a single character), 5th day, at 2:05pm.

If the backup stores the project in the state it was in when I posted it online, or set it to OSHPark.com who make my PCBs, then that would be indicated in the name after the datestamp.

It Just Works. (And the same approach works in many contexts. A few... Arduino... are fussy about the name of the lowest level "container" folder, but renaming it back to what it was is simple enough, if you need to revert to a backup. Or you can add an extra layer of folders, to have "Ardu 384BU19b22-1405" hold just a folder "Ardu384", with the project in THAT.)


 

Andy, KiCAD makes reference to other files WITHIN some of the files in a project.? Merely renaming the files in the directory will not work (consistently at least).

Assuming a *nix type system, within a project directory, with say a project named "Simple PWM", you can do something like:

grep -i "Simple PWM" *

README.txt:Simple PWM driver.
Simple PWM.net:??? (source "/some_path/proj/kicad/Simple PWM/Simple PWM.sch")
Simple PWM.net:??????? (source "Simple PWM.sch")
Simple PWM.sch:LIBS:Simple PWM-cache
Simple PWM.sch-bak:LIBS:Simple PWM-cache

In a more complex project, there can be a lot more file references.? Note the readme above is a file I create with some notes on a design, it isn't part of KiCAD.?

Those references can be fixed with an invocation of sed.

I use git, it's handy for:
? * making backups
? * enable access to projects from other workstations (as I push the repo to a server)
? * revision control (both tracking the changes, but documenting them as well) - this is like uber-undo if you want to do major changes to a design (whereas in-app undo goes away between invocations).
? * branch (yea, make an alternate version of a project)
? * visualize what has changed in a design (since the files are text based)
? * keep custom footprints in sync with the projects that use them.
? * enabling other people to make changes/contributions to your project
? * etc.

git is useful for managing server configuration files, journal documents, etc.? It's not just about source code.

Oh, you can also use git to search for parts/references across multiple designs.? 'git grep' is a wondrous thing.? "hrm, what else have I used XYZ in?? I seem to recall some filter/whatever circuit in conjunction..."


 

Mmm.. when I tested..

On loading kicad complained, then when I continued with the loading it
sorted itself out. The libs were all updated.

The netlist file I did not worry about, As the required aim was to save
the project so that it could be modified and reused, the .net file would
be regenerated anyway. (It is, I've just checked)

Good point to remeber 'tho

It would be better if a copy project was in the main system rather than
messing about like this.

the process must be there as it's pretty much what the templates do.

Andy



On Tue, 17 Dec 2019 09:02:12 -0800
send_no_hormel@... wrote:

Andy, KiCAD makes reference to other files WITHIN some of the files in a project.? Merely renaming the files in the directory will not work (consistently at least).

Assuming a *nix type system, within a project directory, with say a project named "Simple PWM", you can do something like:

grep -i "Simple PWM" *

README.txt:Simple PWM driver.
Simple PWM.net:??? (source "/some_path/proj/kicad/Simple PWM/Simple PWM.sch")
Simple PWM.net:??????? (source "Simple PWM.sch")
Simple PWM.sch:LIBS:Simple PWM-cache
Simple PWM.sch-bak:LIBS:Simple PWM-cache

In a more complex project, there can be a lot more file references.? Note the readme above is a file I create with some notes on a design, it isn't part of KiCAD.

Those references can be fixed with an invocation of sed.

I use git, it's handy for:
* making backups
* enable access to projects from other workstations (as I push the repo to a server)
* revision control (both tracking the changes, but documenting them as well) - this is like uber-undo if you want to do major changes to a design (whereas in-app undo goes away between invocations).
* branch (yea, make an alternate version of a project)
* visualize what has changed in a design (since the files are text based)
* keep custom footprints in sync with the projects that use them.
* enabling other people to make changes/contributions to your project
* etc.

git is useful for managing server configuration files, journal documents, etc.? It's not just about source code.

Oh, you can also use git to search for parts/references across multiple designs.? 'git grep' is a wondrous thing.? "hrm, what else have I used XYZ in?? I seem to recall some filter/whatever circuit in conjunction..."