[英]failed to git pull same file from specific commit id in local machine?
注意:XXX是本地计算机的用户名
➜ gittest git init
Initialized empty Git repository in /Users/XXX/Desktop/gittest/.git/
➜ gittest git:(master) echo "hello" > 1.md
➜ gittest git:(master) ✗ git add 1.md
➜ gittest git:(master) ✗ git commit -m"hello"
[master (root-commit) ea37549] hello
1 file changed, 1 insertion(+)
create mode 100644 1.md
gittest git:(master) ✗ git push --set-upstream /Users/XXX/Desktop/gittest/.git/ master
Branch 'master' set up to track remote branch 'master' from '/Users/XXX/Desktop/gittest/.git/'.
Everything up-to-date
gittest git:(master) ✗ echo "hello 2" >>1.md # change files
➜ gittest git:(master) ✗ git add 1.md
➜ gittest git:(master) ✗ git commit -m"hello 2"
[master 4593958] hello2
1 file changed, 1 insertion(+)
➜ gittest git:(master) ✗ git push
Everything up-to-date
➜ gittest git:(master) git pull
From /Users/XXX/Desktop/gittest/
* branch master -> FETCH_HEAD
Already up to date.
但是它无法返回最初提交给git push的文件。
你有很多事情混在一起
git init
创建完整的存储库,因此git commit
是在该存储库中创建修订的命令。
git push
用于将更改发送到其他存储库。 实际上,您只是通过推送创建了对同一存储库的自引用。 因此,所有内容都是最新的,因为您正在尝试更新存储库本身。
git pull
用于从其他存储库获取更改,并且默认情况下是git fetch
(更新有关远程存储库的本地知识)和git merge
的快捷方式,以合并尝试合并当前分支与远程存储库中分支的更新的本地知识。
如果您不想处理远程存储库,请不要使用git pull
和git push
。
四处走动
要移至存储库中的特定提交,请使用git checkout
。 但是要注意, git checkout <commit id>
最终将处于分离的HEAD状态。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.