在服务器上建了一个git仓库,完成所有操作后再随便一个目录中git clone,然后touch了一个文件,git add, git commit 后,输出git log;显示提交成功,有相对应的提交信息,然后在另外一个地方git clone,没有我之前提交的文件,请问何解?
Git 是分布式的版本管理,你的本机和远程都会有版本库,做操作时会优先以你本机的版本库为准,所以 Commit 操作会先推送到你本机的版本库里,然后才是 Push 到远程版本库(可以有不止一个远程库,且不一定状态都跟你本地库是一样的)。Push 还有个相对应的操作叫 Pull,相当于将远程库里比较新的部分拉到本地;然后如果本地啥也没有才是 Clone,相当于把远程库全须全尾的复制到本地。
另外不知道你有没有准备好远程库?比如 Github、国内的 Coding.net 都是免费的托管站点,可以找教程看看。另外远程库不是一定要有的,本地版本库项目直接复制文件夹效果也是一样的(原则上来说只要带着隐藏的“.git”文件夹就行,这个文件夹就是该项目的 git 版本库了)。
你git add,git commit只是提交到本地git仓库,你需要git pull,git push,将本地的修改记录提交到远程git仓库中,这样,你在别的地方git clone这个远程git仓库,就会有你之前提交过的文件了
7 回答5.3k 阅读
4 回答4k 阅读
2 回答5.9k 阅读✓ 已解决
5 回答2.8k 阅读
1 回答4k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
你需要git push啊,把修改过的文件推送到服务器上才行。