Mis*_*hko 52 git git-pull git-fetch
我想知道我的本地回购是否是最新的(如果没有,理想情况下,我希望看到更改).
我怎么能检查这个而不做git fetch
还是git pull
?
Phi*_*ley 72
试试git fetch --dry-run
手册(git help fetch
)说:
--dry-run
Show what would be done, without making any changes.
Run Code Online (Sandbox Code Playgroud)
小智 46
首先使用git remote update
, 使您的远程引用保持最新。然后,您可以执行以下几项操作之一,例如:
git status -uno
会告诉您正在跟踪的分支是在前面、后面还是已经发散。如果它什么也没说,本地和远程是一样的。示例结果:在分支 DEV
您的分支落后于 'origin/DEV' 7 次提交,并且可以快进。
(使用“git pull”来更新你的本地分支)
git show-branch *master
将向您显示名称以“master”结尾的所有分支中的提交(例如 master 和 origin/master)。如果您-v
与 git remote update ( git remote -v update
)一起使用,您可以看到哪些分支已更新,因此您实际上不需要任何其他命令。
jim*_*ith 17
git remote show origin
Run Code Online (Sandbox Code Playgroud)
结果:
HEAD branch: master
Remote branch:
master tracked
Local branch configured for 'git pull':
master merges with remote master
Local ref configured for 'git push':
master pushes to master (local out of date) <-------
Run Code Online (Sandbox Code Playgroud)
flo*_*dee 12
您可以git status -uno
用来检查您的本地分支是否与原始分支是最新的.
另一种选择是查看远程分支的状态,将
git show-branch remote/branch
其用作比较,您可以看到git show-branch *branch
所有远程和存储库中的分支!查看此答案了解更多/sf/answers/229489921/
小智 5
不是真的 - 但我不知道git fetch
会有什么伤害,因为它不会改变你当地的任何分支机构.
您必须先运行,git fetch
然后才能将本地存储库与远程服务器上的文件进行比较。
此命令仅更新您的远程跟踪分支,并且在您调用git merge
或之前不会影响您的工作树git pull
。
要在获取后查看本地分支和远程跟踪分支之间的区别,您可以使用git diff 或 git cherry 如此处所述。
git remote show origin
Enter passphrase for key ....ssh/id_rsa:
* remote origin
Fetch URL: git@github.com:mamaque/systems.git
Push URL: git@github.com:mamaque/systems.git
HEAD branch: main
Remote branch:
main tracked
Local ref configured for 'git push':
Run Code Online (Sandbox Code Playgroud)
main pushes to main (up-to-date)
两者都是最新的
main pushes to main (fast-forwardable)
远程可以用本地更新
main pushes to main (local out of date)
本地可以用远程更新
归档时间: |
|
查看次数: |
78355 次 |
最近记录: |