In Git you can add a submodule to a repository. This is basically a repository embedded in your main repository. This can be very useful. A couple of advantages of using submodules:
- You can separate the code into different repositories.
| james@james-Streacom ~/wiki-eth-james master snap install brave | |
| snap "brave" is already installed, see "snap refresh --help" | |
| james@james-Streacom ~/wiki-eth-james master snap remove brave | |
| brave removed | |
| james@james-Streacom ~/wiki-eth-james master snap install brave | |
| brave v0.21.24dev from 'brave' installed | |
| james@james-Streacom ~/wiki-eth-james master brave | |
| zsh: command not found: brave | |
| ✘ james@james-Streacom ~/wiki-eth-james master snap remove brave | |
| brave removed |
| james@james-Streacom ~ git clone https://github.com/gnosis/MultiSigWallet.git | |
| Cloning into 'MultiSigWallet'... | |
| remote: Counting objects: 5981, done. | |
| remote: Compressing objects: 100% (34/34), done. | |
| remote: Total 5981 (delta 16), reused 19 (delta 7), pack-reused 5939 | |
| Receiving objects: 100% (5981/5981), 39.37 MiB | 339.00 KiB/s, done. | |
| Resolving deltas: 100% (4607/4607), done. | |
| james@james-Streacom ~ cd MultiSigWallet | |
| james@james-Streacom ~/MultiSigWallet master npm install | |
| npm WARN deprecated ethereumjs-testrpc@4.1.3: ethereumjs-testrpc has been renamed to ganache-cli, please use this package from now on. |
| james@james-Streacom ~ cd /tmp/ | |
| james@james-Streacom /tmp sudo apt-get install linux-headers-`uname -r` | |
| [sudo] password for james: | |
| Reading package lists... Done | |
| Building dependency tree | |
| Reading state information... Done | |
| linux-headers-4.13.0-38-generic is already the newest version (4.13.0-38.43). | |
| linux-headers-4.13.0-38-generic set to manually installed. | |
| The following package was automatically installed and is no longer required: | |
| bubblewrap |
| # Copyright 2013, 2015-2016 Nitor Creations Oy, Jonas Berlin | |
| # | |
| # Licensed under the Apache License, Version 2.0 (the "License"); | |
| # you may not use this file except in compliance with the License. | |
| # You may obtain a copy of the License at | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # | |
| # Unless required by applicable law or agreed to in writing, software | |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| #!/usr/bin/perl | |
| # Copyright 2013, 2015, 2017 Nitor Creations Oy, Jonas Berlin | |
| # | |
| # Licensed under the Apache License, Version 2.0 (the "License"); | |
| # you may not use this file except in compliance with the License. | |
| # You may obtain a copy of the License at | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # |
| james@james-Streacom ~/Archive rustup update | |
| info: syncing channel updates for 'stable-x86_64-unknown-linux-gnu' | |
| info: syncing channel updates for 'nightly-x86_64-unknown-linux-gnu' | |
| info: latest update on 2018-04-19, rust version 1.27.0-nightly (ac3c2288f 2018-04-18) | |
| info: downloading component 'rustc' | |
| 73.1 MiB / 73.1 MiB (100 %) 1.4 MiB/s ETA: 0 s | |
| info: downloading component 'rust-std' | |
| 57.9 MiB / 57.9 MiB (100 %) 1.4 MiB/s ETA: 0 s | |
| info: downloading component 'cargo' | |
| 4.3 MiB / 4.3 MiB (100 %) 1.3 MiB/s ETA: 0 s |
| James@DESKTOP-EL89DSR MINGW64 ~/jrl (protobuf-codegen-pure) | |
| $ cargo build | |
| Compiling libp2p-floodsub v0.1.0 (file:///C:/Users/James/jrl/floodsub) | |
| Compiling futures-mutex v0.3.0 (https://github.com/paritytech/futures-mutex#18ca1125) | |
| Compiling aio-limited v0.1.0 (https://github.com/paritytech/aio-limited.git#1f42497d) | |
| Compiling ring v0.12.1 (https://github.com/briansmith/ring?rev=3a14ef619559f7d4b69e2286d49c833409eef34a#3a14ef61) | |
| Compiling cid v0.2.3 | |
| Compiling tokio-tcp v0.1.0 | |
| Compiling tokio-udp v0.1.1 | |
| Compiling datastore v0.1.0 (file:///C:/Users/James/jrl/datastore) |
| James@DESKTOP-EL89DSR MINGW64 ~/jrl (pure-rust-protoc) | |
| $ git diff master | |
| diff --git a/floodsub/Cargo.toml b/floodsub/Cargo.toml | |
| index 0d187c7..02d5b17 100644 | |
| --- a/floodsub/Cargo.toml | |
| +++ b/floodsub/Cargo.toml | |
| @@ -17,3 +17,7 @@ protobuf = "2" | |
| smallvec = "0.6.0" | |
| tokio-io = "0.1" | |
| varint = { path = "../varint-rs" } |
| James@DESKTOP-EL89DSR MINGW64 ~/jrl (pure-rust-protoc) | |
| $ cargo build | |
| Downloading ring v0.12.1 | |
| Downloading untrusted v0.5.1 | |
| Downloading rayon v0.8.2 | |
| Compiling untrusted v0.5.1 | |
| Compiling rayon v0.8.2 | |
| Compiling libp2p-identify v0.1.0 (file:///C:/Users/James/jrl/identify) | |
| Compiling libp2p-kad v0.1.0 (file:///C:/Users/James/jrl/kad) | |
| Compiling libp2p-relay v0.1.0 (file:///C:/Users/James/jrl/relay) |