git 基本设置

标签 git

我(终于)说服了我的经理允许我们设置版本控制,并且在过去几天进行了一些研究并决定使用 git。 不管怎样,我在这里找到了一个教程 http://toroid.org/ams/git-website-howto 在基本设置上,这会将更改推送到远程存储库。 这对我们公司非常有用。

这是我完成的步骤

本地框

cd /website
git init
git add .
git commit -m "Initial commit into git"

服务器

cd /var/git/
mkdir website.git
cd website.git
git init --bare

mkdir /var/www/website

cat > hooks/post-receive

#!/bin/sh
GIT_WORK_TREE=/var/www/website git checkout -f

chmod +x Hook /接收后

本地盒子

git remote add web ssh://user@server/var/git/website.git
git push web +master:refs/heads/master

现在我在执行推送时收到错误“此操作必须在工作树中运行”这是来自接收后 Hook 。 我知道我错过了一步,但不确定那到底是什么......

最佳答案

我想您的工作目录 website 是空的。因此,您的 git add . 不会添加任何内容,并且下一次提交不会创建新的提交。

为了生成主分支,你需要完成至少一次提交,至少有一个文件。

在本地框中,做

touch empty
git add empty
git commit -m "Initial commit into git"
git push web

关于git 基本设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8511817/

相关文章:

git - 在 Git 中模块化地暂存文件

macos - Git 段错误 : 11

git - 将 GIT LFS 与 artifactory 集成有什么优势

Git: merge 远程更改

git - 在 git 中的两个项目之间共享代码

git - 对于大型项目来说,在 WSL 上的 Debian 和 Ubuntu 上运行 git 命令非常慢

git - 如何快速检查 git pull 命令是否成功?

git - 如何在 python 脚本中包含 GitHub secret ?

git - 大型仓库的维护者如何知道如何解决 merge 冲突?

git - 'git merge'具体是如何工作的?