Git Product home page Git Product logo

Comments (3)

rgburke avatar rgburke commented on May 28, 2024

The command you listed above is indeed the go-way of updating a project:

go get -u -v -x github.com/rgburke/grv/cmd/grv

However there is a long standing issue with go get -u and git submodule vendor packages described here: golang/go#17522. So you are completely correct, however due to this issue with go get -u it currently won't work 😄. Apparently this will be fixed in go version 1.11.

I normally update using steps similar to yours:

cd $GOPATH/src/github.com/rgburke/grv
git pull
make install

GRV uses git submodules which are tied to a specific commit. So although doing git pull --recurse-submodules does update each submodule (e.g. pull's down remote branches etc...), it doesn't change HEAD in that repository and the version of the submodule that GRV is built against.
This is intended and has the advantage that everyone builds GRV using the same versions of all dependencies. The disadvantage is that we're not using the latest versions of the dependencies.

If you do want to use the latest version of each dependecy then you can run:

git submodule -q foreach --recursive git reset -q --hard
git submodule update --init --recursive --remote

This will fetch the latest master and update HEAD in each git submodule. However this will also show as unstaged changes when doing a git status in GRV's repository. You will also need to comment out the line git submodule update --init --recursive under the update target in the Makefile before building GRV otherwise it will reset each submodule back to its configured commit.

In summary, doing a git pull in the GRV repository is sufficient to pull down the latest changes.

from grv.

marcelpaulo avatar marcelpaulo commented on May 28, 2024

Wow, thanks for taking the time to reply with such detail, @rgburke, and the advanced git lesson that it pulled ! When I think I got something right with git, I realize I still have so much more to learn. I've updated my build recipes.

from grv.

rgburke avatar rgburke commented on May 28, 2024

I'm glad the info was helpful @marcelpaulo. I've also found that when it comes to git I never stop learning 😄

from grv.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.