Questions tagged «git»

Git是一个开源的分布式版本控制系统(DVCS)。使用此标签可解决有关Git使用和工作流程的问题。不要仅仅因为存储库恰好托管在GitHub上而使用[github]标签来解决与Git相关的问题。另外,请勿对碰巧涉及Git储存库的一般编程问题使用此标记。

19
什么是Git修订版本号?
我们在工作中使用SVN,但是对于我的个人项目,我决定使用Git。所以我昨天安装了Git,不知道Git中的等效修订号是多少。 假设我们正在使用3.0.8版,并且每个Bug修复都有其自己的修订号,在我们讨论此Bug修复时可以使用。因此,如果我将Git中的代码标记为3.0.8,那么可以用作修订号或其他更详细的标识吗?我发现哈希对人类不是那么用户友好。

5
主分支和开发分支之间的“ git pull”或“ git merge”
我有我的master分支机构,还有一个develop要进行一些更改的分支机构。我需要合并从master到的更改develop,但最终将合并所有从develop到的更改master。我想到了两个不同的工作流程: git pull origin master进入develop分支 git merge master进入develop分支 最好的方法是哪种,为什么?
243 git  workflow 


23
git clone期间“找不到'https'的远程帮助程序”
我无法克隆HTTPS存储库。我可以克隆SSH仓库,但不能克隆HTTPS仓库。由于位于公司防火墙后面,因此无法测试GIT协议。 这就是我想要做的: $ git clone https://github.com/nvie/gitflow.git Cloning into gitflow... fatal: Unable to find remote helper for 'https' 到目前为止,我已经尝试了以下方法(基于Google搜索) 通过清除和安装Git apt-get build-deps通过安装Gitapt-get 安装curl开发库 安装Expat库 下载Git源码并使用以下命令构建: ./configure --prefix=/usr --with-curl --with-expat 还尝试将configure指向curl二进制文件(./configure --prefix=/usr --with-curl=/usr/bin/curl) 我已经尝试了所有可以在互联网上找到的一切,但是没有运气。谁能帮我? Git版本= 1.7.6.4 操作系统= Ubuntu 11.04
243 linux  git  ubuntu 




4
Git子模块更新
我不清楚以下含义(来自Git子模块更新文档): ...将使子模块HEAD分离,除非指定--rebase或--merge。 如何--rebase/ --merge改变事物? 我的主要用例是拥有一堆中央存储库,我将通过子模块将其嵌入到其他存储库中。我希望能够直接在其原始位置或从其嵌入式存储库(通过子模块使用它们的存储库)内部对这些中央存储库进行改进。 在这些子模块中,是否可以像在常规存储库中一样创建分支/修改并使用推/拉,还是需要谨慎? 我如何将子模块引用的提交从(标记)1.0提升到1.1(即使原始存储库的头部已经是2.0),还是选择完全使用哪个分支的提交?

6
将空提交推送到远程
我已将一个提交推送到远程,但现在我意识到提交消息不正确。我想更改提交消息,但AFAIK是不可能的。因此,我决定使用正确的消息创建空提交: git commit --allow-empty 推送空提交是否有任何不利/后果?由于此空的提交,我将来可能会遇到任何问题吗?
242 git  git-commit 

7
在git中为多个阶段条目获取致命错误
在OS X上将Git版本2.2.0与统一游戏引擎一起使用,并想提交我的代码。我添加了所有内容,但未收到错误消息。然后提交-m,并得到以下错误消息: fatal: multiple stage entries for merged file 'Assets/Prefabs/Resources' 没注意到我推送的消息,但没有给出错误消息,实际上是说Everything up-to-date 我检查了bitbucket(存放回购的地方),但没有显示我的提交。所以我检查了我的本地日志,也没有显示我的提交。 我已经在Google中寻找答案了……什么也没有。这是什么错误?以及如何解决?
241 git 

9
如何在保留其更改的同时从Git存储库中删除选定的提交日志条目?
我想从线性提交树中删除选定的提交日志条目,以使这些条目不会显示在提交日志中。 我的提交树看起来像: R--A--B--C--D--E--HEAD 我想删除B和C条目,以便它们不显示在提交日志中,但应保留从A到D的更改。也许通过引入单个提交,使B和C变为BC,树就看起来像。 R--A--BC--D--E--HEAD 或者,理想情况下,在A直接到达D之后。D'代表从A到B,B到C以及C到D的变化。 R--A--D'--E--HEAD 这可能吗?如果是,如何? 这是一个相当新的项目,因此到目前为止没有分支机构,因此也没有合并。
241 git  commit 

4
Git有多个工作目录?
我不确定这是否受Git支持,但从理论上讲,它似乎应该对我有用。 我的工作流程通常涉及同时编辑多个分支中的文件。换句话说,当我在另一个分支中编辑另一个文件的内容时,我经常想在一个分支中打开几个文件。 我对此的典型解决方案是进行两次签出,但是很遗憾我无法在它们之间共享分支和引用。我想要的是只有两个工作目录由同一个.git文件夹管理。 我知道本地git clone解决方案(默认设置是硬链接共享对象,而--shared选项使用原始存储库设置备用对象存储),但是这些解决方案仅减少了磁盘空间使用量,尤其是在--shared的情况下,似乎充满了危险。 有没有一种方法可以使用一个.git文件夹,并支持两个工作目录?还是Git硬编码为可以随时检出一个工作目录?
241 git 

12
git difftool,立即打开所有差异文件,而不是以串行方式打开
默认的git diff行为是依次打开每个diff文件(等待上一个文件关闭后再打开下一个文件)。 我正在寻找一次打开所有文件的方法-例如,在BeyondCompare中,这将打开同一BC窗口中选项卡中的所有文件。 这样可以更轻松地审查一组复杂的更改;在diff文件之间来回滑动并忽略不重要的文件。
240 git  difftool 

7
使用dockerfile克隆私人git repo
我已经从似乎各种各样的工作dockerfile中复制了此代码,这是我的: FROM ubuntu MAINTAINER Luke Crooks "luke@pumalo.org" # Update aptitude with new repo RUN apt-get update # Install software RUN apt-get install -y git python-virtualenv # Make ssh dir RUN mkdir /root/.ssh/ # Copy over private key, and set permissions ADD id_rsa /root/.ssh/id_rsa RUN chmod 700 /root/.ssh/id_rsa RUN chown -R …
240 git  bitbucket  docker 

11
“更改未上演以提交”是什么意思
我想如果你想跟踪文件,你应该 git add [files you want to track] 我不知道为什么收到消息Changes not staged for commit。 如果这些文件没有上演,就不应该git告诉我这些文件是 Untracked那样的 我所做的就是从develop分支创建一个新功能并在feature/change_excel_format分支中工作 我以为这些文件应该处于staged状态 但是git status告诉我Changes not staged for commit 为了简单,我只知道有3个阶段的git untracked,staged,committed 任何一个可以告诉我,究竟是什么阶段了Changes not staged for commit 因此,如果我修改了文件a (已经在仓库中) 并输入git stgit会告诉我Changes not staged for commit 如果我 git a那么文件a将在staged status 如果我file a现在修改了,file ain中会有两个状态git,对吗? 因此,我必须决定是staged a进行提交还是进行not stage a分段,然后将先前分段的分段file a丢弃?
239 git 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.