git commit使用原始代码覆盖新的远程推送更改(分离头?)
我想在我们公司使用的git设置遇到了一些问题 我在一台使用git 1.5.4.3的ubuntu hardy机器上设置了一个带有主代码库的git“服务器”。 我是git新手,通过教程一步一步地设置这个存储库git commit使用原始代码覆盖新的远程推送更改(分离头?),git,commit,Git,Commit,我想在我们公司使用的git设置遇到了一些问题 我在一台使用git 1.5.4.3的ubuntu hardy机器上设置了一个带有主代码库的git“服务器”。 我是git新手,通过教程一步一步地设置这个存储库 git init git add . git commit -m "initial commit" 然后,我安装了一个客户端(WinXP)git,版本为1.7.3.1.msysgit.0(windows的官方git),并通过ssh克隆了该存储库 git clone <IP>:/v
git init
git add .
git commit -m "initial commit"
然后,我安装了一个客户端(WinXP)git,版本为1.7.3.1.msysgit.0(windows的官方git),并通过ssh克隆了该存储库
git clone <IP>:/var/git/<repo> <target>
<made some file changes>
git status ob my client then says:
$ git status
# On branch master
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: searchfunc_admin.php
#
no changes added to commit (use "git add" and/or "git commit -a")
然后我推送到服务器上的存储库:
$ git push origin master
<user>@<IP>'s password:
Counting objects: 5, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 385 bytes, done.
Total 3 (delta 2), reused 0 (delta 0)
To 192.168.1.26:/var/git/farocmsafs
5267756..9404d01 master -> master
如果我执行gitcommit,他会向我请求消息commits,但不会应用对新推送代码的更改
我发现应用新更改的唯一机会是git重置——远程提交ID很难实现。但这样我必须手动将所有更改应用到代码中
我不使用其他分支,只使用“master”,也不使用git commit和“-a”以外的任何其他参数,因此我不知道错误的来源
从目前为止我所读到的,这可能是一个头部分离的问题,但我不知道为什么头部分离。
如果我在ubuntu机器上做了本地更改,一切都会很顺利。在获取或拉取之后,我可以提交并查看远程计算机上的更改。但我无法应用远程更改,除了重置-硬
希望有人能帮我
最好的问候,塞巴斯蒂安不要推到非裸存储库。它会更新头部,但不会更新工作树,当您稍后查看它时,会导致奇怪的行为。您可以通过执行
git reset--hard
将服务器上的工作树更新为当前头来修复它
有两种方法可以解决此问题:
git init--bare初始化服务器上的新存储库
.git
子目录的全部内容移动到顶层。您可能应该重命名存储库,使其以.git
结尾,这是裸存储库的惯常做法看起来您正在推送到一个非裸存储库,它肯定会产生警告,并且根据git的版本,会出现致命错误。我误解了吗?(当推送至非裸回购时,提交会被推送,但工作树不会被触动。如果要使其更新,必须执行
重设--hard
。理想情况下,您只能推送至裸回购。)
$ git push origin master
<user>@<IP>'s password:
Counting objects: 5, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 385 bytes, done.
Total 3 (delta 2), reused 0 (delta 0)
To 192.168.1.26:/var/git/farocmsafs
5267756..9404d01 master -> master
git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: searchfunc_admin.php
#
git diff HEAD
diff --git a/searchfunc_admin.php b/searchfunc_admin.php
index 4e15696..17ca17a 100755
--- a/searchfunc_admin.php
+++ b/searchfunc_admin.php
@@ -9,11 +9,11 @@ require_once("additional/functions.php");
// INITS
//**********
// Connect to database
-if(!$mylocal || !$myafs)
+if($DB_CONNECTION != TRUE)
{
- if(!sqldb_connect())
+ if(($sql_return = sqldb_connect()) != TRUE)
{
- echo "Cant connect to database";
+ echo "Cant connect to database: ".$sql_return;
die(1);
}
}