我有一个master和一个development分支,都推到了GitHub.我cloneð,pullED和fetchED,但我仍然无法获得比其他任何master分支回来.
我确定我错过了一些明显的东西,但是我已经阅读了手册,而且我一点也不开心.
我创建了一个git存储库来镜像一个实时站点(这是一个非裸的git存储库):
git clone --mirror ssh://user@example.com/path/to/repo
Run Code Online (Sandbox Code Playgroud)
现在,要保持此镜像克隆更新其远程源的所有更改,我必须使用哪个或哪些命令?
我想保持一切更新:提交,引用,钩子,分支等.
谢谢!
我正在尝试设置Git来暂存我的网站,以便我可以git pull让当前版本在本地工作,然后git push将更改推送到远程服务器.我已经设置它以便按照我想要的方式工作,但是在我推动之后,我必须手动运行git checkout -f或git reset --hard HEAD在远程服务器上运行.
我已经尝试将这些作为服务器上的post-receive挂钩添加到shell脚本中,但它似乎没有任何效果.我知道脚本正在运行,因为我在推送后看到"更改推送到服务器".这是post-receive钩子:
#!/bin/sh
git reset --hard HEAD
echo "Changes pushed to server."
Run Code Online (Sandbox Code Playgroud) 我可以通过两个步骤将其推送到存储库来备份我的本地.git:
git push --all ~/gitrepo
git push --tags ~/gitrepo
Run Code Online (Sandbox Code Playgroud)
我可以使用git bundle备份它.
我可以通过简单地复制整个目录或将其归档(压缩!)来备份它:
tar -zcvf gitrepo.tgz .git
Run Code Online (Sandbox Code Playgroud)
现在的问题是它们是否真的相同?(例如,logs不推送子目录)
该git push方法的优点是什么git bundle?
可以tar -zcvf被认为是"完美的git备份"吗?
我曾经在我的私人git服务器上创建一个repo
git init --bare
Initialized empty Git repository in /home/poc/git_repo/local_display_multi_langs .git/
Run Code Online (Sandbox Code Playgroud)
然后我试着add remote在我的mac上工作.
git remote add origin ssh://poc@172.19.16.101/home/poc/git_repo/local_display_multi_langs.git
Run Code Online (Sandbox Code Playgroud)
执行以下命令
514 git flow init
519 git flow feature start read_xml
524 git ci -am "first ci"
Run Code Online (Sandbox Code Playgroud)
然后尝试将所有分支推送到我的私有git服务器的repo并获得如下例外
[src] $ git push origin feature
poc@172.19.16.101's password:
error: src refspec feature does not match any.
error: failed to push some refs to 'ssh://poc@172.19.16.101/home/poc/git_repo/local_display_multi_langs.git'
Run Code Online (Sandbox Code Playgroud)
我错过或误用了一些步骤吗?
如何将我的工作副本上的所有分支推送到远程服务器?
然后当我从我的git服务器克隆项目时.
如何获得新的克隆项目和原始项目是完全相同的.
感谢@VonC
现在,我可以将本地工作副本上的所有分支推送到远程服务器
git push origin --all
但是当我ssh://poc@172.19.16.101/home/poc/git_repo/local_display_multi_langs.git
在另一个文件夹下执行git clone时.
[local_display_multi_langs] $ git …Run Code Online (Sandbox Code Playgroud)