相关疑难解决方法(0)

Git脱离头部问题

我读过今天与此相关的问题,很多职位(一个有用的一个位置:修复一个Git分离的头? - 为什么我的Git回购进入一个分离的头状态?).

今天我一直在挠头.在阅读这些文章之后,我无法理解如何解决这个问题.

昨天一切都好,我记得已经给出了结账命令.晚上我发现Git没有显示任何变化,即使存在局部变化.在今天研究之后,我现在可以看到git状态显示"HEAD与99f040f分离".

从那时起,我删除了我的D :(在我的Windows 7上)的.git文件夹,并恢复了7月27日备份的.git.还是没有解决.我也尝试了7月25日的版本.但没有运气.所以我现在恢复了昨天的.git版本.

我正在粘贴gitk的截图.我能做些什么来纠正这个问题吗? 在此输入图像描述

git

9
推荐指数
1
解决办法
7550
查看次数

为什么分支尖端在它的遥控器后面?

尽管从远程主机拔出并被告知一切都是最新的,我无法推送到远程主机,因为当前分支位于遥控器的尖端后面.什么?

$ git pull origin master
From https://github.com
 * branch            master     -> FETCH_HEAD
Already up-to-date.
$ git push origin master
To https://github.com
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com'
hint: Updates were rejected because a pushed branch tip is behind its remote
hint: counterpart. Check out this branch and integrate the remote changes
hint: (e.g. 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
Run Code Online (Sandbox Code Playgroud)

git

9
推荐指数
1
解决办法
1950
查看次数

无法使用多个遥控器进行结账

我在我当地的git repo中设置了两个遥控器.一个是我正在贡献的开源项目的回购,另一个是我的回购分支.

看来我只能查看我从origin遥控器下拉的东西.从遥控器抓取分支的常规方法包括

$ git fetch <remote> <branch>
$ git checkout <branch>
Run Code Online (Sandbox Code Playgroud)

但这在我目前的情况下似乎不起作用.

$ git fetch my-remote my-branch
remote: Counting objects: 2297, done.
remote: Compressing objects: 100% (1951/1951), done.
remote: Total 2297 (delta 1044), reused 0 (delta 0), pack-reused 50
Receiving objects: 100% (2297/2297), 2.10 MiB | 1.59 MiB/s, done.
Resolving deltas: 100% (1045/1045), done.
From https://github.com/me/my-repo
 * branch            my-branch -> FETCH_HEAD
 * [new branch]      my-branch -> origin/my-branch
$ git checkout my-branch
error: pathspec 'my-branch' did not match …
Run Code Online (Sandbox Code Playgroud)

git

9
推荐指数
3
解决办法
2765
查看次数

git-svn rebase和dcommit问题

git version 1.7.1
svn, version 1.6.12
Ubuntu 10.10
Run Code Online (Sandbox Code Playgroud)

我只是git而且我使用过svn.但我没有一起使用过.我有一个git存储库,我不得不将我的存储库更多地转换为subversion版本.所以我一直在使用git-svn.大部分时间都可以.但是,我发现围成一圈.

我是唯一一个从事这个项目的人.

我对我的分支进行了一些更改.我然后上演他们:

git stage gateway.c
Run Code Online (Sandbox Code Playgroud)

然后在本地将它们提交给git:

git commit m"Made some changes"
Run Code Online (Sandbox Code Playgroud)

然后我想将它们提交给颠覆.获取最新更新:

git svn rebase
Run Code Online (Sandbox Code Playgroud)

然后我收到以下消息:

It seems that I cannot create a rebase-apply directory, and
I wonder if you are in the middle of patch application or another
rebase.  If that is not the case, please
        rm -fr /home/joe/projects/gateway/.git/rebase-apply
and run me again.  I am stopping in case you still have something
valuable there.
rebase refs/remotes/trunk: command returned error: 1 …
Run Code Online (Sandbox Code Playgroud)

svn git git-svn

8
推荐指数
1
解决办法
7117
查看次数

使用git拉出特定版本

我需要来自特定版本项目(SonarQube项目)的源代码,但我无法弄清楚如何从git中提取它.

我已将repo添加为远程(git add remote origin)并从主分支中提取最新版本,但这不是我需要的版本.

我知道我需要的提交是d25bc0e,但当我尝试" git fetch origin master d25bc0e"我得到错误" fatal: couldn't find remote ref d25bc0e".

可能是我做错了,我对Git不太熟悉.

git github

8
推荐指数
1
解决办法
2万
查看次数

Rstudio灰显了Git命令和(没有分支)

我目前正在努力让Rstudio与我的git存储库一起工作.当我设置一个新项目并分配git存储库时,分支在Master上设置,提交,拉动和按钮都是活动的.一切正常.然后,在某些时候,分支切换到(无分支),提交,拉动和按钮呈灰色显示(如下所示).这发生在我制作的每个git项目中.首先工作然后是灰色的.

在此输入图像描述

我仍然能够使用Shell的git命令,但GUI界面不起作用.

我花了一些时间浏览客户支持论坛和谷歌搜索问题.我找到的一个站点(https://www.r-bloggers.com/things-i-forget-pushpull-greyed-out-in-rstudio/)表示配置列表存在问题.但是,当我这样做时git config --list,我发现我做了have branch.master.remote=origin并且branch.master.merge=refs/heads/master在配置的底部.

我也试过了git push -u origin master,但这也没用.

我每天都使用RStudio和github,如果GUI界面再次正常工作,我会很高兴.

如果有人能帮我解决这个问题,我将非常感激.

编辑:我使用OSX 10.9 Mavericks和Rstudio版本0.99.903.

git r rstudio

8
推荐指数
2
解决办法
2673
查看次数

SCM选择新用户?

这里真的很容易.最好的理由获得胜利.

我是你所听说过的一所学校的计算机科学专业的学生,​​现在已经编程好几年了(大约8年),所以我写了几行代码.但是因为我从来没有真正分发过 - 源代码或二进制文件 - 也没有团队开发(虽然我确信我会这样做!),但我从来不需要学习源代码管理系统.我有一个非常无聊的文件夹层次结构src/project_name或者src/class_code/hw_or_project_name如果我需要将代码发送给朋友或进行评分,它只是一个tarball.

随着我的项目变得越来越大,近年来发生了一些变化.我的Mac,使用Time Machine,现在可以进行每小时备份 - 这几次为我节省了一些时间,最近我通过SSH进行了重大更改...然后几小时后在我的编辑器中保存并关闭了陈旧的副本.

但是,出于某种专业兴趣 - 以及它可能有用的压倒性感觉 - 我决定学习SCMS.现在,我有很多的经验,作为一个源代码"消费者" - ,git clone,svn checkout,,cvs co诸如此类的事情-但没有作为维护者,提交者,或更新.

我的问题是:我应该学什么?现在,你们中间有一群人在尖叫着"为什么一个人?你会用很多!" 但我想学习SCM的基础知识,并在最直接的系统中养成实际使用它的习惯.在我真正需要它之前,我有很多内容要做的概念 - 分支,标签,合并,协作等.

要清楚,我不是Linus Torvalds.我将维护一个,或者几个分支.在我的几十个文件中,我不介意某些操作在一个系统上比在其他系统上多花几百毫秒.

现在我有什么?我有一个虚拟主机.他们提供Subversion托管点击,或者我可以存储其他存储库没有问题.由于我无法解释的原因,我更倾向于Subversion.但这正是我不愿意跳进去的原因.我知道Mercurial,Git等等是热门的新事物,正在分发,但我不确定为什么这是一个好处.事实上,我不太确定它是如何起作用的.

那么,我该怎么做呢?颠覆还是Git?Mercurial还是CVS?Visual Source Safe还是Perforce?(最后一对是一个笑话)为什么一个在另一个?

谢谢你的时间,如果在错误的部分,我道歉.

编辑谢谢大家!感谢您的评论.考虑到Git和Hg之间的选择,我可能会选择Git - 任何分歧?二,为什么 Subversion?它似乎是旧的或其他过时的共识(不仅仅是在这里).为什么?

编辑2所以在阅读了所有的回复并做了一些阅读之后,我决定和Git一起去.如上所述,"答案"是最好的理由.Git似乎比Mercurial更受欢迎,即使它不那么干净.我正在将更改推送到我的网络服务器,我有viewgit已安装,而且工作得很好.在我的网络服务器上存储副本的动力是我想从我的几台机器上工作,我希望它们不同步.我还希望有几个工作副本彼此不同步和我的服务器,我现在明白Subversion在这方面相当薄弱.有很多我还在努力解决,但我现在已经设置好了,这样我就可以从http中拉出/克隆并推送ssh(下一步是设置Gitosis).对于想要做我正在做的事情的新手 - 你会发现你的"推送"命令将在第一次工作,但任何"克隆"的副本都不会跟踪你所做的改变.Git认为这是一个安全功能......我只是略微理解为什么,但它与合并有关.诀窍是使用 服务器上的更新后挂钩,用于将新推送的副本合并到服务器的工作副本中.

svn git cvs version-control mercurial

7
推荐指数
4
解决办法
880
查看次数

为什么这一系列的git-svn命令会导致分离的HEAD?

我这样做:

$ git svn clone http://monsterdebugger.googlecode.com/svn/ -s --prefix=svn/ monsterdebugger
$ cd monsterdebugger
$ git branch -a
* master
  remotes/svn/trunk
$ git co remotes/svn/trunk
Note: checking out 'remotes/svn/trunk'.

You are in 'detached HEAD' state. <And so on...>
Run Code Online (Sandbox Code Playgroud)

我想我还没有完全理解这里发生了什么.不应该遥控器/ svn/trunk是针对svn repo的跟踪分支?为什么我最终得到一个独立的头?

git git-svn

7
推荐指数
1
解决办法
1542
查看次数

Github 存储库未显示最新提交

出于某种原因,我的 Github 存储库没有显示最新的几次提交。我像往常一样执行了git add、git commit 和 git push。但是今晚它似乎没有在 repo 的提交历史中注册。

当我做一个 git log 时,我可以看到我最近的提交。当我执行 git pull 到一个新文件夹来测试它时,我的更改就在那里。当我手动获取提交 url 并将其放入浏览器时,我可以看到更改。它只是没有显示在提交历史中,并且项目的提交总数没有更新。为什么是这样?

git ssh commit github git-commit

7
推荐指数
1
解决办法
1万
查看次数

将master分支设置为最新标记

这是我的git repo现在如何的一个例子:

v1.0    v1.1    v1.2
  |       |       |
  a   -   b   -   c
  |               |
master           HEAD
Run Code Online (Sandbox Code Playgroud)

我通常像这样提交,标记和推送标签:

git commit -a -m "Commit msg"
git tag -a v1.3 -m "Tag msg"
git push --tags
Run Code Online (Sandbox Code Playgroud)

我遇到的主要问题是master分支没有移动到最新的标签,所以我总是处于Detached HEAD状态.有没有办法解决这个问题,以便主分支始终指向最新的推送标签?

tags git push master head

6
推荐指数
1
解决办法
9916
查看次数

标签 统计

git ×10

git-svn ×2

github ×2

svn ×2

commit ×1

cvs ×1

git-commit ×1

head ×1

master ×1

mercurial ×1

push ×1

r ×1

rstudio ×1

ssh ×1

tags ×1

version-control ×1