首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >git :小型项目工作

git :小型项目工作
EN

Stack Overflow用户
提问于 2010-12-09 02:23:37
回答 3查看 484关注 0票数 2

目前,我正在尝试遵循Pro Git书:http://progit.org/book/ch5-2.html中提到的基于项目的小型工作组。

所以,这是我的设计:

代码语言:javascript
复制
[Live Website Folder] 
|             |
|             |
Developer1    Developer2

我实现这一目标的方式如下:

  1. git init -共享=0777
  2. git克隆/直播/网站developer1
  3. git克隆/直播/网站developer2

我成功地克隆了我的项目,并进入了developer1文件夹。在这里,我对我的文件index.html进行了更改。一旦我做出这些改变,我就会:

代码语言:javascript
复制
git add index.html
git commit -m 'Modified index.html --developer1'
git push

现在,当我转到我的/live/website目录并执行一个git status时,它正确地告诉我文件index.html被修改了。当我这么做时:

代码语言:javascript
复制
git add index.html
git commit -m 'Modified index.html by developer1' 

它成功地完成了提交,但是当我尝试vi index.html时,我看到的文件是原始/未修改的文件。我看不到developer1在该文件中所做的更改。这是预期的行为吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-12-09 02:30:07

git status告诉您的是,index.html不同于git索引中的内容。

推送后,/live/website回购在索引中包含更新的index.html,而在工作副本中包含旧的index.html。您需要执行git reset --hard HEAD,然后在/live/website中执行git checkout -f,以将工作副本重置为与头提交相同的副本。

我建议你稍微修改一下你的设置。添加一个空的staging存储库,并将更改推送到其中。添加一个在git pull staging master中运行/live/website的更新后挂钩。这将确保在提交时立即更新实时网站。

在辉煌的艺术中:

代码语言:javascript
复制
 /live/website
       |
       |
/path/to/staging (bare)
  |          |
  |          |
dev1        dev2

编辑:更新以更正用于修复工作副本的命令序列。

票数 2
EN

Stack Overflow用户

发布于 2010-12-09 02:27:26

看起来,您正在进入一个非空的存储库。这是不建议,可能会产生意想不到的效果来诱捕粗心大意的人。相反,您可能希望创建一个新的裸存储库作为主存储库。

代码语言:javascript
复制
mkdir /git/project.git
cd /git/project.git
git init --bare --shared
cd /live/website
git remote add origin /git/project.git
git push origin master

然后,developer1和developer2应该从/git/project.git中克隆出来,并将其推广到那里。当你想更新你的直播网站时:

代码语言:javascript
复制
cd /live/website
git pull
票数 2
EN

Stack Overflow用户

发布于 2010-12-09 02:26:23

当您推入另一个目录时,它不会更新该远程目录的签出。

你必须做(在现场/网站上):

代码语言:javascript
复制
git reset --hard

从开发人员那里获得新的更新。

这是因为您的树当前指向以前的提交树。但是,当执行“git状态”时,它会从您所处的分支中获取最近的更改。

摆脱这一困境的一种方法是在邮件收件上设置一个git-钩子。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4394300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档