Re: Updating Git Submodules -- a documentation question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I think if you are changing commits and/or branches a lot the
submodules can end up dirty. An alternative approach is to descend
into the submodule root directory and use git commands to work out why
it's dirty and fix it but I've always found that more trouble than
it's worth. YMMV.

On Mon, Oct 17, 2022 at 10:52 PM John Zachary Dover <zac.dover@xxxxxxxxx> wrote:
>
> Here is an example of dealing with untracked files, which Brad discusses at the end of the most recent email in this thread:
>
>> [zdover@fedora src]$ git status
>> On branch main
>> Your branch is up to date with 'origin/main'.
>>
>> Untracked files:
>>   (use "git add <file>..." to include in what will be committed)
>> jaegertracing/jaeger-client-cpp/
>> jaegertracing/opentracing-cpp/
>> jaegertracing/thrift/
>>
>> nothing added to commit but untracked files present (use "git add" to track)
>> [zdover@fedora src]$ cd jaegertracing/
>> [zdover@fedora jaegertracing]$ rm -rf jaeger-client-cpp/
>> [zdover@fedora jaegertracing]$ git submodule update --init --recursive
>> [zdover@fedora jaegertracing]$ git status
>> On branch main
>> Your branch is up to date with 'origin/main'.
>>
>> Untracked files:
>>   (use "git add <file>..." to include in what will be committed)
>> opentracing-cpp/
>> thrift/
>>
>> nothing added to commit but untracked files present (use "git add" to track)
>> [zdover@fedora jaegertracing]$
>
>
> You must change the present working directory to the parent directory of the target directory and then run "rm -rf target_directory/" and then run "git submodule update --init --recursive" in order to clean out the offending directory. This has to be done for each such directory.
>
> I do not know what causes the local working copy to get into this dirty state. (That's what it's called in the git-scm documentation: a "dirty state".)
>
> Zac
>
> On Wed, Oct 12, 2022 at 1:24 PM Brad Hubbard <bhubbard@xxxxxxxxxx> wrote:
>>
>> For untracked files (eg. src/pybind/cephfs/cephfs.c) all you need is
>> 'git clean -fdx' which you ran last in this case.
>>
>> Just about everything can be solved by a combination of these commands.
>>
>> git submodule update --init --recursive
>> git clean -fdx
>> git submodule foreach git clean -fdx
>>
>> If you have files that show up in diff output that have unwanted
>> changes you can also use 'git checkout .' or 'git checkout
>> ./path/to/filename' to revert the changes.
>>
>> If you still have persistent problems with a submodule directory after
>> that just rm the offending directory and run 'git submodule update
>> --init --recursive' again.
>>
>> Also, rather than doing 'git checkout main; git pull' on main I would
>> do 'git checkout main; git fetch origin/main; git reset --hard
>> origin/main' as it's easy to get into a state where pull will fail.
>>
>> HTH.
>>
>> On Wed, Oct 12, 2022 at 12:40 PM John Zachary Dover <zac.dover@xxxxxxxxx> wrote:
>> >
>> > The following console output, which is far too long to include in
>> > tutorial-style documentation that people are expected to read, shows the
>> > sequence of commands necessary to diagnose and repair submodules that have
>> > fallen out of sync with the submodules in the upstream repository.
>> >
>> > In this example, my local working copy has fallen out of sync. This will be
>> > obvious to adepts, but this procedure does not need to be communicated to
>> > them.
>> >
>> > This procedure was given to me by Brad Hubbard.
>> >
>> > Untracked files:
>> > >   (use "git add <file>..." to include in what will be committed)
>> > > src/pybind/cephfs/build/
>> > > src/pybind/cephfs/cephfs.c
>> > > src/pybind/cephfs/cephfs.egg-info/
>> > > src/pybind/rados/build/
>> > > src/pybind/rados/rados.c
>> > > src/pybind/rados/rados.egg-info/
>> > > src/pybind/rbd/build/
>> > > src/pybind/rbd/rbd.c
>> > > src/pybind/rbd/rbd.egg-info/
>> > > src/pybind/rgw/build/
>> > > src/pybind/rgw/rgw.c
>> > > src/pybind/rgw/rgw.egg-info/
>> > >
>> > > nothing added to commit but untracked files present (use "git add" to
>> > > track)
>> > > [zdover@fedora ceph]$ cd src/
>> > > [zdover@fedora src]$ ls
>> > > arch                  cstart.sh           nasm-wrapper
>> > > auth                  dmclock             neorados
>> > > bash_completion       doc                 objclass
>> > > blk                   dokan               objsync
>> > > blkin                 erasure-code        ocf
>> > > btrfs_ioc_test.c      etc-rbdmap          os
>> > > c-ares                fmt                 osd
>> > > cephadm               global              osdc
>> > > ceph-clsinfo          googletest          perfglue
>> > > ceph_common.sh        include             perf_histogram.h
>> > > ceph.conf.twoosds     init-ceph.in        powerdns
>> > > ceph-coverage.in      init-radosgw        ps-ceph.pl
>> > > ceph-crash.in         isa-l               push_to_qemu.pl
>> > > ceph-create-keys      jaegertracing       pybind
>> > > ceph-debugpack.in     java                python-common
>> > > ceph_fuse.cc          journal             rapidjson
>> > > ceph.in               json_spirit         rbd_fuse
>> > > ceph_mds.cc           key_value_store     rbdmap
>> > > ceph_mgr.cc           krbd.cc             rbd_replay
>> > > ceph_mon.cc           kv                  rbd-replay-many
>> > > ceph_osd.cc           libcephfs.cc        README
>> > > ceph-osd-prestart.sh  libcephsqlite.cc    rgw
>> > > ceph-post-file.in     libkmip             rocksdb
>> > > ceph-rbdnamer         librados            s3select
>> > > ceph_release          librados-config.cc  sample.ceph.conf
>> > > ceph-run              libradosstriper     script
>> > > ceph_syn.cc           librbd              seastar
>> > > ceph_ver.c            loadclass.sh        SimpleRADOSStriper.cc
>> > > ceph_ver.h.in.cmake   log                 SimpleRADOSStriper.h
>> > > ceph-volume           logrotate.conf      spawn
>> > > civetweb              mds                 spdk
>> > > ckill.sh              messages            stop.sh
>> > > client                mgr                 telemetry
>> > > cls                   mon                 test
>> > > cls_acl.cc            mount               TODO
>> > > cls_crypto.cc         mount.fuse.ceph     tools
>> > > CMakeLists.txt        mrgw.sh             tracing
>> > > cmonctl               mrun                vnewosd.sh
>> > > common                msg                 vstart.sh
>> > > compressor            mstart.sh           xxHash
>> > > crimson               mstop.sh            zstd
>> > > crush                 multi-dump.sh
>> > > crypto                mypy.ini
>> > > [zdover@fedora src]$ git checkout main
>> > > Switched to branch 'main'
>> > > Your branch is up to date with 'origin/main'.
>> > > [zdover@fedora src]$ git pull
>> > > Already up to date.
>> > > [zdover@fedora src]$ git status
>> > > On branch main
>> > > Your branch is up to date with 'origin/main'.
>> > >
>> > > Untracked files:
>> > >   (use "git add <file>..." to include in what will be committed)
>> > > pybind/cephfs/build/
>> > > pybind/cephfs/cephfs.c
>> > > pybind/cephfs/cephfs.egg-info/
>> > > pybind/rados/build/
>> > > pybind/rados/rados.c
>> > > pybind/rados/rados.egg-info/
>> > > pybind/rbd/build/
>> > > pybind/rbd/rbd.c
>> > > pybind/rbd/rbd.egg-info/
>> > > pybind/rgw/build/
>> > > pybind/rgw/rgw.c
>> > > pybind/rgw/rgw.egg-info/
>> > >
>> > > nothing added to commit but untracked files present (use "git add" to
>> > > track)
>> > > [zdover@fedora src]$
>> > >
>> > > [zdover@fedora ceph]$ git status
>> > > On branch main
>> > > Your branch is up to date with 'origin/main'.
>> > >
>> > > Untracked files:
>> > >   (use "git add <file>..." to include in what will be committed)
>> > > src/pybind/cephfs/build/
>> > > src/pybind/cephfs/cephfs.c
>> > > src/pybind/cephfs/cephfs.egg-info/
>> > > src/pybind/rados/build/
>> > > src/pybind/rados/rados.c
>> > > src/pybind/rados/rados.egg-info/
>> > > src/pybind/rbd/build/
>> > > src/pybind/rbd/rbd.c
>> > > src/pybind/rbd/rbd.egg-info/
>> > > src/pybind/rgw/build/
>> > > src/pybind/rgw/rgw.c
>> > > src/pybind/rgw/rgw.egg-info/
>> > >
>> > > nothing added to commit but untracked files present (use "git add" to
>> > > track)
>> > > [zdover@fedora ceph]$ git submodule update --force --init --recursive
>> > > Submodule 'ceph-erasure-code-corpus' (
>> > > https://github.com/ceph/ceph-erasure-code-corpus.git) registered for path
>> > > 'ceph-erasure-code-corpus'
>> > > Submodule 'ceph-object-corpus' (
>> > > https://github.com/ceph/ceph-object-corpus.git) registered for path
>> > > 'ceph-object-corpus'
>> > > Submodule 'src/arrow' (https://github.com/apache/arrow.git) registered
>> > > for path 'src/arrow'
>> > > Submodule 'src/blkin' (https://github.com/ceph/blkin) registered for path
>> > > 'src/blkin'
>> > > Submodule 'src/c-ares' (https://github.com/ceph/c-ares.git) registered
>> > > for path 'src/c-ares'
>> > > Submodule 'src/crypto/isa-l/isa-l_crypto' (
>> > > https://github.com/intel/isa-l_crypto) registered for path
>> > > 'src/crypto/isa-l/isa-l_crypto'
>> > > Submodule 'src/dmclock' (https://github.com/ceph/dmclock.git) registered
>> > > for path 'src/dmclock'
>> > > Submodule 'src/erasure-code/jerasure/gf-complete' (
>> > > https://github.com/ceph/gf-complete.git) registered for path
>> > > 'src/erasure-code/jerasure/gf-complete'
>> > > Submodule 'src/erasure-code/jerasure/jerasure' (
>> > > https://github.com/ceph/jerasure.git) registered for path
>> > > 'src/erasure-code/jerasure/jerasure'
>> > > Submodule 'src/fmt' (https://github.com/ceph/fmt.git) registered for path
>> > > 'src/fmt'
>> > > Submodule 'src/googletest' (https://github.com/ceph/googletest)
>> > > registered for path 'src/googletest'
>> > > Submodule 'src/isa-l' (https://github.com/ceph/isa-l) registered for path
>> > > 'src/isa-l'
>> > > Submodule 'src/jaegertracing/opentelemetry-cpp' (
>> > > https://github.com/open-telemetry/opentelemetry-cpp.git) registered for
>> > > path 'src/jaegertracing/opentelemetry-cpp'
>> > > Submodule 'src/libkmip' (https://github.com/ceph/libkmip) registered for
>> > > path 'src/libkmip'
>> > > Submodule 'src/pybind/mgr/rook/rook-client-python' (
>> > > https://github.com/ceph/rook-client-python.git) registered for path
>> > > 'src/pybind/mgr/rook/rook-client-python'
>> > > Submodule 'src/rapidjson' (https://github.com/ceph/rapidjson) registered
>> > > for path 'src/rapidjson'
>> > > Submodule 'src/rocksdb' (https://github.com/ceph/rocksdb) registered for
>> > > path 'src/rocksdb'
>> > > Submodule 's3select' (https://github.com/ceph/s3select.git) registered
>> > > for path 'src/s3select'
>> > > Submodule 'src/seastar' (https://github.com/ceph/seastar.git) registered
>> > > for path 'src/seastar'
>> > > Submodule 'src/spawn' (https://github.com/ceph/spawn.git) registered for
>> > > path 'src/spawn'
>> > > Submodule 'src/spdk' (https://github.com/ceph/spdk.git) registered for
>> > > path 'src/spdk'
>> > > Submodule 'src/utf8proc' (https://github.com/JuliaStrings/utf8proc)
>> > > registered for path 'src/utf8proc'
>> > > Submodule 'src/xxHash' (https://github.com/ceph/xxHash.git) registered
>> > > for path 'src/xxHash'
>> > > Submodule 'src/zstd' (https://github.com/facebook/zstd) registered for
>> > > path 'src/zstd'
>> > > Cloning into '/home/zdover/Documents/ceph/ceph-erasure-code-corpus'...
>> > > Cloning into '/home/zdover/Documents/ceph/ceph-object-corpus'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/arrow'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/blkin'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/c-ares'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/crypto/isa-l/isa-l_crypto'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/dmclock'...
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/erasure-code/jerasure/gf-complete'...
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/erasure-code/jerasure/jerasure'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/fmt'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/googletest'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/isa-l'...
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/jaegertracing/opentelemetry-cpp'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/libkmip'...
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/pybind/mgr/rook/rook-client-python'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/rapidjson'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/rocksdb'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/s3select'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/seastar'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/spawn'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/spdk'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/utf8proc'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/xxHash'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/zstd'...
>> > > Submodule path 'ceph-erasure-code-corpus': checked out
>> > > '2d7d78b9cc52e8a9529d8cc2d2954c7d375d5dd7'
>> > > Submodule path 'ceph-object-corpus': checked out
>> > > '038c72b5acec667e1aca4c79a8cfcae705d766fe'
>> > > Submodule path 'src/arrow': checked out
>> > > '347a88ff9d20e2a4061eec0b455b8ea1aa8335dc'
>> > > Submodule 'cpp/submodules/parquet-testing' (
>> > > https://github.com/apache/parquet-testing.git) registered for path
>> > > 'src/arrow/cpp/submodules/parquet-testing'
>> > > Submodule 'testing' (https://github.com/apache/arrow-testing) registered
>> > > for path 'src/arrow/testing'
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/arrow/cpp/submodules/parquet-testing'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/arrow/testing'...
>> > > Submodule path 'src/arrow/cpp/submodules/parquet-testing': checked out
>> > > '600d437de0e8b0e9927c87e76f844a1b385b02e8'
>> > > Submodule path 'src/arrow/testing': checked out
>> > > 'a60b715263d9bbf7e744527fb0c084b693f58043'
>> > > Submodule path 'src/blkin': checked out
>> > > 'f24ceec055ea236a093988237a9821d145f5f7c8'
>> > > Submodule path 'src/c-ares': checked out
>> > > 'fd6124c74da0801f23f9d324559d8b66fb83f533'
>> > > Submodule path 'src/crypto/isa-l/isa-l_crypto': checked out
>> > > 'a6dc869666fca3eef9a0305b290e4e0fc8bac645'
>> > > Submodule path 'src/dmclock': checked out
>> > > 'e4ccdcfa828c84b8ea775a928118f2b8012d0f42'
>> > > Submodule path 'src/erasure-code/jerasure/gf-complete': checked out
>> > > '7e61b44404f0ed410c83cfd3947a52e88ae044e1'
>> > > Submodule path 'src/erasure-code/jerasure/jerasure': checked out
>> > > '96c76b89d661c163f65a014b8042c9354ccf7f31'
>> > > Submodule path 'src/fmt': checked out
>> > > 'b6f4ceaed0a0a24ccf575fab6c56dd50ccf6f1a9'
>> > > Submodule path 'src/googletest': checked out
>> > > '389cb68b87193358358ae87cc56d257fd0d80189'
>> > > Submodule path 'src/isa-l': checked out
>> > > 'bee5180a1517f8b5e70b02fcd66790c623536c5d'
>> > > Submodule path 'src/jaegertracing/opentelemetry-cpp': checked out
>> > > '9f3a8eeb1952c75d6d5f74aa4c5e6ed21e1318a8'
>> > > Submodule 'third_party/benchmark' (https://github.com/google/benchmark)
>> > > registered for path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/benchmark'
>> > > Submodule 'third_party/googletest' (https://github.com/google/googletest)
>> > > registered for path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/googletest'
>> > > Submodule 'third_party/ms-gsl' (https://github.com/microsoft/GSL)
>> > > registered for path 'src/jaegertracing/opentelemetry-cpp/third_party/ms-gsl'
>> > > Submodule 'third_party/nlohmann-json' (https://github.com/nlohmann/json)
>> > > registered for path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/nlohmann-json'
>> > > Submodule 'third_party/opentelemetry-proto' (
>> > > https://github.com/open-telemetry/opentelemetry-proto) registered for
>> > > path 'src/jaegertracing/opentelemetry-cpp/third_party/opentelemetry-proto'
>> > > Submodule 'third_party/prometheus-cpp' (
>> > > https://github.com/jupp0r/prometheus-cpp) registered for path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp'
>> > > Submodule 'tools/vcpkg' (https://github.com/Microsoft/vcpkg) registered
>> > > for path 'src/jaegertracing/opentelemetry-cpp/tools/vcpkg'
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/jaegertracing/opentelemetry-cpp/third_party/benchmark'...
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/jaegertracing/opentelemetry-cpp/third_party/googletest'...
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/jaegertracing/opentelemetry-cpp/third_party/ms-gsl'...
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/jaegertracing/opentelemetry-cpp/third_party/nlohmann-json'...
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/jaegertracing/opentelemetry-cpp/third_party/opentelemetry-proto'...
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp'...
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/jaegertracing/opentelemetry-cpp/tools/vcpkg'...
>> > > Submodule path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/benchmark': checked out
>> > > 'c05843a9f622db08ad59804c190f98879b76beba'
>> > > Submodule path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/googletest': checked out
>> > > 'a6dfd3aca7f2f91f95fc7ab650c95a48420d513d'
>> > > Submodule path 'src/jaegertracing/opentelemetry-cpp/third_party/ms-gsl':
>> > > checked out '6f4529395c5b7c2d661812257cd6780c67e54afa'
>> > > Submodule path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/nlohmann-json': checked
>> > > out '4f8fba14066156b73f1189a2b8bd568bde5284c5'
>> > > Submodule path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/opentelemetry-proto':
>> > > checked out '5c2fe5ddbd9fb9f3e08f31d20f7566a3ee3d8885'
>> > > Submodule path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp': checked
>> > > out '4ea303fa66e4c26dc4df67045fa0edf09c2f3077'
>> > > Submodule 'civetweb' (https://github.com/civetweb/civetweb.git)
>> > > registered for path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb'
>> > > Submodule 'googletest' (https://github.com/google/googletest.git)
>> > > registered for path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest'
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb'...
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest'...
>> > > Submodule path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/civetweb':
>> > > checked out 'eefb26f82b233268fc98577d265352720d477ba4'
>> > > Submodule path
>> > > 'src/jaegertracing/opentelemetry-cpp/third_party/prometheus-cpp/3rdparty/googletest':
>> > > checked out 'e2239ee6043f73722e7aa812a459f54a28552929'
>> > > Submodule path 'src/jaegertracing/opentelemetry-cpp/tools/vcpkg': checked
>> > > out '5568f110b509a9fd90711978a7cb76bae75bb092'
>> > > Submodule path 'src/libkmip': checked out
>> > > 'b25cde94c9b8686988ed1236bd807afe74991333'
>> > > Submodule path 'src/pybind/mgr/rook/rook-client-python': checked out
>> > > '82673cd7c7a3f4919b98706985ff27e57d2c1b94'
>> > > Submodule path 'src/rapidjson': checked out
>> > > 'e4bde977440d4a00f820b6586899e48a972d2493'
>> > > Submodule 'thirdparty/gtest' (https://github.com/google/googletest.git)
>> > > registered for path 'src/rapidjson/thirdparty/gtest'
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/rapidjson/thirdparty/gtest'...
>> > > Submodule path 'src/rapidjson/thirdparty/gtest': checked out
>> > > 'ba96d0b1161f540656efdaed035b3c062b60e006'
>> > > Submodule path 'src/rocksdb': checked out
>> > > 'c540de6f709b66efd41436694f72d6f7986a325b'
>> > > remote: Enumerating objects: 1, done.
>> > > remote: Counting objects: 100% (1/1), done.
>> > > remote: Total 1 (delta 1), reused 1 (delta 1), pack-reused 0
>> > > Unpacking objects: 100% (1/1), 59 bytes | 59.00 KiB/s, done.
>> > > From https://github.com/ceph/s3select
>> > >  * branch              825598ac92dfb889a2107b85d461e9e673838450 ->
>> > > FETCH_HEAD
>> > > Submodule path 'src/s3select': checked out
>> > > '825598ac92dfb889a2107b85d461e9e673838450'
>> > > Submodule path 'src/seastar': checked out
>> > > 'f8d773989fccdf8915260ac4675c4b02e14a57eb'
>> > > Submodule 'dpdk' (https://github.com/ceph/dpdk) registered for path
>> > > 'src/seastar/dpdk'
>> > > Cloning into '/home/zdover/Documents/ceph/src/seastar/dpdk'...
>> > > Submodule path 'src/seastar/dpdk': checked out
>> > > '0f486994114dbc68da07e7345674f7d83b54e0fc'
>> > > Submodule path 'src/spawn': checked out
>> > > '9ee6d12f35ab2fa48b469f13b4830a5e5cfde45e'
>> > > Submodule 'test/dependency/googletest' (
>> > > https://github.com/google/googletest.git) registered for path
>> > > 'src/spawn/test/dependency/googletest'
>> > > Cloning into
>> > > '/home/zdover/Documents/ceph/src/spawn/test/dependency/googletest'...
>> > > Submodule path 'src/spawn/test/dependency/googletest': checked out
>> > > '565f1b848215b77c3732bca345fe76a0431d8b34'
>> > > Submodule path 'src/spdk': checked out
>> > > '1a527e501f810e2b39b9862c96f3e8bdc465db80'
>> > > Submodule 'dpdk' (https://github.com/spdk/dpdk.git) registered for path
>> > > 'src/spdk/dpdk'
>> > > Submodule 'intel-ipsec-mb' (https://github.com/spdk/intel-ipsec-mb.git)
>> > > registered for path 'src/spdk/intel-ipsec-mb'
>> > > Submodule 'isa-l' (https://github.com/spdk/isa-l.git) registered for path
>> > > 'src/spdk/isa-l'
>> > > Submodule 'ocf' (https://github.com/Open-CAS/ocf.git) registered for path
>> > > 'src/spdk/ocf'
>> > > Cloning into '/home/zdover/Documents/ceph/src/spdk/dpdk'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/spdk/intel-ipsec-mb'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/spdk/isa-l'...
>> > > Cloning into '/home/zdover/Documents/ceph/src/spdk/ocf'...
>> > > Submodule path 'src/spdk/dpdk': checked out
>> > > 'a38450c5ae4a20f6966872b1a4f5d797c65951d7'
>> > > Submodule path 'src/spdk/intel-ipsec-mb': checked out
>> > > '997d553615b5b75b309093b359d8710d8d2f11c8'
>> > > Submodule path 'src/spdk/isa-l': checked out
>> > > 'f3993f5c0b69118a229c2dfbb360515cd34a24e6'
>> > > Submodule path 'src/spdk/ocf': checked out
>> > > '9d0795564082b5dfb489ab3fc2fa22cb1538ab85'
>> > > Submodule path 'src/utf8proc': checked out
>> > > '97ef668b312b96382714dbb8eaac4affce0816e6'
>> > > Submodule path 'src/xxHash': checked out
>> > > '1f40c6511fa8dd9d2e337ca8c9bc18b3e87663c9'
>> > > Submodule path 'src/zstd': checked out
>> > > 'b706286adbba780006a47ef92df0ad7a785666b6'
>> > > [zdover@fedora ceph]$ git status
>> > > On branch main
>> > > Your branch is up to date with 'origin/main'.
>> > >
>> > > Untracked files:
>> > >   (use "git add <file>..." to include in what will be committed)
>> > > src/pybind/cephfs/build/
>> > > src/pybind/cephfs/cephfs.c
>> > > src/pybind/cephfs/cephfs.egg-info/
>> > > src/pybind/rados/build/
>> > > src/pybind/rados/rados.c
>> > > src/pybind/rados/rados.egg-info/
>> > > src/pybind/rbd/build/
>> > > src/pybind/rbd/rbd.c
>> > > src/pybind/rbd/rbd.egg-info/
>> > > src/pybind/rgw/build/
>> > > src/pybind/rgw/rgw.c
>> > > src/pybind/rgw/rgw.egg-info/
>> > >
>> > > nothing added to commit but untracked files present (use "git add" to
>> > > track)
>> > > [zdover@fedora ceph]$ git clean -fdx
>> > > Removing build-doc/
>> > > Removing doc/_ext/__pycache__/
>> > > Removing doc/dev/peering_graph.generated.dot
>> > > Removing doc/scripts/__pycache__/
>> > > Removing src/java/doc/
>> > > Removing src/pybind/__pycache__/
>> > > Removing src/pybind/cephfs/build/
>> > > Removing src/pybind/cephfs/cephfs.c
>> > > Removing src/pybind/cephfs/cephfs.egg-info/
>> > > Removing src/pybind/mgr/__pycache__/
>> > > Removing src/pybind/mgr/alerts/__pycache__/
>> > > Removing src/pybind/mgr/balancer/__pycache__/
>> > > Removing src/pybind/mgr/cephadm/__pycache__/
>> > > Removing src/pybind/mgr/cephadm/services/__pycache__/
>> > > Removing src/pybind/mgr/cli_api/__pycache__/
>> > > Removing src/pybind/mgr/crash/__pycache__/
>> > > Removing src/pybind/mgr/dashboard/__pycache__/
>> > > Removing src/pybind/mgr/dashboard/api/__pycache__/
>> > > Removing src/pybind/mgr/dashboard/controllers/__pycache__/
>> > > Removing src/pybind/mgr/dashboard/plugins/__pycache__/
>> > > Removing src/pybind/mgr/dashboard/services/__pycache__/
>> > > Removing src/pybind/mgr/devicehealth/__pycache__/
>> > > Removing src/pybind/mgr/diskprediction_local/__pycache__/
>> > > Removing src/pybind/mgr/feedback/__pycache__/
>> > > Removing src/pybind/mgr/hello/__pycache__/
>> > > Removing src/pybind/mgr/influx/__pycache__/
>> > > Removing src/pybind/mgr/insights/__pycache__/
>> > > Removing src/pybind/mgr/iostat/__pycache__/
>> > > Removing src/pybind/mgr/k8sevents/__pycache__/
>> > > Removing src/pybind/mgr/localpool/__pycache__/
>> > > Removing src/pybind/mgr/mds_autoscaler/__pycache__/
>> > > Removing src/pybind/mgr/mirroring/__pycache__/
>> > > Removing src/pybind/mgr/mirroring/fs/__pycache__/
>> > > Removing src/pybind/mgr/mirroring/fs/dir_map/__pycache__/
>> > > Removing src/pybind/mgr/nfs/__pycache__/
>> > > Removing src/pybind/mgr/orchestrator/__pycache__/
>> > > Removing src/pybind/mgr/osd_perf_query/__pycache__/
>> > > Removing src/pybind/mgr/osd_support/__pycache__/
>> > > Removing src/pybind/mgr/pg_autoscaler/__pycache__/
>> > > Removing src/pybind/mgr/progress/__pycache__/
>> > > Removing src/pybind/mgr/prometheus/__pycache__/
>> > > Removing src/pybind/mgr/rbd_support/__pycache__/
>> > > Removing src/pybind/mgr/restful/__pycache__/
>> > > Removing src/pybind/mgr/rgw/__pycache__/
>> > > Removing src/pybind/mgr/rook/__pycache__/
>> > > Removing src/pybind/mgr/selftest/__pycache__/
>> > > Removing src/pybind/mgr/snap_schedule/__pycache__/
>> > > Removing src/pybind/mgr/snap_schedule/fs/__pycache__/
>> > > Removing src/pybind/mgr/stats/__pycache__/
>> > > Removing src/pybind/mgr/stats/fs/__pycache__/
>> > > Removing src/pybind/mgr/status/__pycache__/
>> > > Removing src/pybind/mgr/telegraf/__pycache__/
>> > > Removing src/pybind/mgr/telemetry/__pycache__/
>> > > Removing src/pybind/mgr/test_orchestrator/__pycache__/
>> > > Removing src/pybind/mgr/tests/__pycache__/
>> > > Removing src/pybind/mgr/volumes/__pycache__/
>> > > Removing src/pybind/mgr/volumes/fs/__pycache__/
>> > > Removing src/pybind/mgr/volumes/fs/operations/__pycache__/
>> > > Removing src/pybind/mgr/volumes/fs/operations/versions/__pycache__/
>> > > Removing src/pybind/mgr/zabbix/__pycache__/
>> > > Removing src/pybind/rados/build/
>> > > Removing src/pybind/rados/rados.c
>> > > Removing src/pybind/rados/rados.egg-info/
>> > > Removing src/pybind/rbd/build/
>> > > Removing src/pybind/rbd/rbd.c
>> > > Removing src/pybind/rbd/rbd.egg-info/
>> > > Removing src/pybind/rgw/build/
>> > > Removing src/pybind/rgw/rgw.c
>> > > Removing src/pybind/rgw/rgw.egg-info/
>> > > Removing src/python-common/build/
>> > > Removing src/python-common/ceph.egg-info/
>> > > Removing src/python-common/ceph/__pycache__/
>> > > Removing src/python-common/ceph/deployment/__pycache__/
>> > > Removing src/python-common/ceph/deployment/drive_selection/__pycache__/
>> > > Removing src/python-common/ceph/rgw/__pycache__/
>> > > [zdover@fedora ceph]$ git submodule foreach git clean -fdx
>> > > Entering 'ceph-erasure-code-corpus'
>> > > Entering 'ceph-object-corpus'
>> > > Entering 'src/arrow'
>> > > Entering 'src/blkin'
>> > > Entering 'src/c-ares'
>> > > Entering 'src/crypto/isa-l/isa-l_crypto'
>> > > Entering 'src/dmclock'
>> > > Entering 'src/erasure-code/jerasure/gf-complete'
>> > > Entering 'src/erasure-code/jerasure/jerasure'
>> > > Entering 'src/fmt'
>> > > Entering 'src/googletest'
>> > > Entering 'src/isa-l'
>> > > Entering 'src/jaegertracing/opentelemetry-cpp'
>> > > Entering 'src/libkmip'
>> > > Entering 'src/pybind/mgr/rook/rook-client-python'
>> > > Entering 'src/rapidjson'
>> > > Entering 'src/rocksdb'
>> > > Entering 'src/s3select'
>> > > Entering 'src/seastar'
>> > > Entering 'src/spawn'
>> > > Entering 'src/spdk'
>> > > Entering 'src/utf8proc'
>> > > Entering 'src/xxHash'
>> > > Entering 'src/zstd'
>> > > [zdover@fedora ceph]$ git diff
>> > > [zdover@fedora ceph]$ git status
>> > > On branch main
>> > > Your branch is up to date with 'origin/main'.
>> > >
>> > > nothing to commit, working tree clean
>> > > [zdover@fedora ceph]$
>> > >
>> >
>> > Zac Dover
>> > Upstream Docs
>> > Ceph Foundation
>> >
>> >
>> > On Thu, Jan 7, 2021 at 1:16 AM John Zachary Dover <zac.dover@xxxxxxxxx>
>> > wrote:
>> >
>> > > I'm working on some improvements to the Developer Guide. One of those is a
>> > > section that explains more clearly to people new to Ceph how to know that
>> > > your submodules are out of date and what to do when they are.
>> > >
>> > > The following location (inb4 I know that this is not the optimal place for
>> > > this information, which is the whole point of this exercise) explains how
>> > > to update submodules:
>> > >
>> > > https://docs.ceph.com/en/latest/install/clone-source/?highlight=update%20submodules#clone-the-source
>> > >
>> > > Sometimes in my local repo, I get the following messages after I run "$
>> > > git reset --hard ceph/master", and I'd like to understand what's going on
>> > > here, and whether I should expect the submodule-updating procedure to
>> > > remedy it:
>> > >
>> > > zdover@zdover-ThinkPad-T530:~/Documents/ceph/src$ git status
>> > > On branch master
>> > > Your branch is up to date with 'remotes/origin/master'.
>> > >
>> > > Untracked files:
>> > >   (use "git add <file>..." to include in what will be committed)
>> > >
>> > > lua/
>> > >
>> > > nothing added to commit but untracked files present (use "git add" to
>> > > track)
>> > >
>> > > Any insight into this matter is welcome.
>> > >
>> > > Thanks,
>> > >
>> > > Zac Dover
>> > > Upstream Docs
>> > > Ceph Foundation
>> > >
>> > _______________________________________________
>> > ceph-users mailing list -- ceph-users@xxxxxxx
>> > To unsubscribe send an email to ceph-users-leave@xxxxxxx
>> >
>>
>>
>> --
>> Cheers,
>> Brad
>>


-- 
Cheers,
Brad

_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx



[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux