git bash : how to check if there's a new commit available

前端 未结 2 1890
隐瞒了意图╮
隐瞒了意图╮ 2020-12-06 17:40

I use git with my friend to collaborate on a project. He created a repo in github consisting folders of each of our names, so everytime i update something, I upload it to th

相关标签:
2条回答
  • 2020-12-06 18:19

    Answering your first two questions in turn:

    1. Assuming that origin refers to the GitHub repository in each case, you should just run git fetch origin. Then the "remote-tracking branch" origin/master will be at the version of master on GitHub and you can compare it with your master with git diff master origin/master to see the difference between those two versions, or git log master...origin/master to see the commits which are unique to either master or origin/master.
    2. Yes, you can copy the repository to a USB stick and pull from there. However, if you want to pull from the USB key onto another computer, you'll want to set up a remote that refers to the location of the repository on the USB key.

    With regard to whether there is a better way to do what you're doing, I'm afraid I don't understand clearly enough what you're doing or trying to achieve to comment sensibly. However, having folders in the repository named after each developer with (presumably) very similar source code in them sounds a little suspect - you would typically use branches to deal with divergent versions of the same code.

    0 讨论(0)
  • 2020-12-06 18:24

    If your branch is properly tracking the remote branch, you should be able to do a git status and see if you're ahead or behind the remote and by how many commits.

    This was a little confusing about git for me. Here's the answer in three parts:

    1) Usually when you clone a remote repo, you need the -t flag to track the remote branch you're copying:

    git checkout -tb my_branch origin/my_branch
    

    2) If you forget to do this, you can always do this later by doing:

    git branch --set-upstream my_branch origin/my_branch
    

    3) If your remote branches are the same name as your local branchesyou should be able to just set git to track all remote branches automatically:

    git config push.default matching             <-- for this repo only
    git config --global push.default matching    <-- for all git repos that this user deals with on this machine
    

    For your second question, yes that should be fine as long as you're using the same user on your machine. Git uses SSH authentication so it doesn't matter where the repo is located as long as the right user is running the command so it sends the proper SSH credentials along with the request.

    0 讨论(0)
提交回复
热议问题