我正在使用git来跟踪某些人改变的内容,并与其他人共享"只读"."读者"可能不时需要做出改变,但大多数情况下他们不会.
如果需要的话,我想允许git"编写者"重新推送推出的分支**,并确保"读者"不会意外地获得合并.这通常很容易.
git pull origin +master
Run Code Online (Sandbox Code Playgroud)
有一个案例似乎会引起问题.如果读者进行本地更改,则上述命令将合并.如果读者没有进行局部更改,我希望pull完全自动化,而如果他们进行了本地更改,则应该停止并请求输入.我想跟踪任何上游变化,同时注意合并下游变化.
在某种程度上,我真的不想拉.我想完全跟踪主分支.
**(我知道这不是一个最佳实践,但在我们的案例中似乎是必要的:我们有一个主要分支包含大部分工作和一些主题分支,用于需要隔离的微小变化的特定客户.这似乎最简单经常改变以使主题保持最新.)
这是场景:有人有一个我已经分叉的 git 存储库(如果重要的话,在 github 上)。在我的分支中,我创建了许多分支,其中包含上游已拉取的更改。或者在某些情况下应用我的分支的差异而不是正确拉动分支。
我想要找到的是我所有分支的列表,这些分支已经完全合并到上游主分支中。这样我就可以安全地删除这些分支,因为git branch其他工具列出了 30 多个分支,而且看起来很杂乱。
我想我正确地解释了为什么这个问题与链接的问题不同:或者在某些情况下应用了我的分支的差异而不是正确地拉动分支例如git branch --merged不是一个完整的答案,但是哦......
因为无法克隆git repo而遇到了问题.它开始运行然后取消一半.我当前的git repo大小是53.7 MB Git版本在服务器和我的遥控器上是1.7.12.4.
错误如下:
MacBook-Pro:htdocs macbook$ git clone myrepo@mysite.com:~/opt/git/myrepo.git
Cloning into 'myrepo'...
zcardepo@zcardepot.com's password:
remote: Counting objects: 8888, done.
remote: Compressing objects: 100% (7185/7185), done.
Write failed: Broken pipe267/8888), 1.03 MiB | 1001.00 KiB/s
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
Run Code Online (Sandbox Code Playgroud)
我创建了一个新的新回购,克隆就好了.一旦我将我的站点文件添加到它并将它们推送到远程.我再也无法从中克隆了.但我可以从中汲取它.
我添加了这个没有运气:
[core]
compression = -1
[pack]
windowMemory = 10m
packSizeLimit = 20m
Run Code Online (Sandbox Code Playgroud)
我试着将这两者都提升到更高的价值.没运气
我也尝试在远程仓库上运行git gc --aggressive和git gc --prune.
我一直在寻找如何拉远程分支的半小时,但无法弄清楚。
我的远程 git 存储库有一个名为frontend. 当我运行时,git pull origin frontend我得到以下输出:
* branch frontend -> FETCH-HEAD
Already up-to-date.
Run Code Online (Sandbox Code Playgroud)
当我运行时git branch,我得到以下信息:
*master
Run Code Online (Sandbox Code Playgroud)
为什么不在frontend由 返回的列表中git branch?
如果它有帮助,当我运行时git branch -v -a,返回的分支之一是remotes/origins/frontend
提前致谢!!
如果一个git-project有几个分支,问题是当你签出一个新的分支(第一次),是否git pull需要?
$master> git checkout branchA
$branchA> git pull
Run Code Online (Sandbox Code Playgroud)
请注意,这里的想法是两个命令都是在彼此之后执行的(这个问题不是关于何时或为什么要运行git pull)
我已经对此进行了测试,但到目前为止pull还没有引入新的提交,但有些人声称pull需要这样做.有人可以描述一个确实需要或可能打破这个神话的场景吗?
所以我对我的文件进行了一些更改,现在当我检查我的状态时,它说:
On branch master
Your branch and 'origin/master' have diverged,
and have 1 and 80 different commits each, respectively.
(use "git pull" to merge the remote branch into yours)
nothing to commit, working directory clean
Run Code Online (Sandbox Code Playgroud)
所以我试着拉,它说
error: unable to create file docs/com/teamname/tutortrader/C:\nppdf32Log\debuglog.txt (Invalid argument)
Run Code Online (Sandbox Code Playgroud)
我试过git rm -f docs/com/teamname/tutortrader/C:\nppdf32Log\debuglog.txt但它只是说这个文件不存在.我也试过了rm -f C:\nppdf32Log\debuglog.txt,但那也不存在.
我在我的本地分支上有1次提交,然后将远程分支的更改带到我的本地,我git pull在我的本地分支上做了一个,我惊讶地git说这个.
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
Run Code Online (Sandbox Code Playgroud)
我明白我是vi编辑.
我的问题是为什么 git让我输入消息.我以前从未面对过它.
我的git版本是: version 1.9.5-preview20141217
我提到了这个问题,但我仍然觉得很难理解.谢谢.
哪个比另一个更可取,为什么?如果我在提交之前拉取,其他开发人员所做的更改是否与我目前正在处理的内容合并?如果是这样,这意味着这个更可取吗?
我有两台服务器用于开发和生产。在开发服务器中,我有一个与 origin 合并的新分支。现在我想进入生产环境并进行更改。但是在分支 master 的生产服务器中,我修改了两个文件,这些文件只需要这个服务器。
所以当我打:
拉
我得到:
error: Your local changes to the following files would be overwritten by merge:
app/code/local/NextBits/DependentCustomOptionsImage/Block/Adminhtml/Template/Edit/Tab/Options/Option.php
app/design/adminhtml/default/default/layout/dependentcustomoptionsimage.xml
Please, commit your changes or stash them before you can merge
Run Code Online (Sandbox Code Playgroud)
这是我需要的两个文件。
如何在不覆盖这些文件的情况下提取原点?
或者我如何保留这些文件,提取更改并将其还原?
我的git储存库中有多个遥控器。如果我执行git pull,那么它将要求我一位同事的密码。
How can I change the remote to black?
git ×10
git-pull ×10
github ×2
bash ×1
branch ×1
git-checkout ×1
git-clone ×1
git-commit ×1
git-push ×1
git-stash ×1