小编lov*_*ove的帖子

克隆没有标签的回购?

我想创建没有使用clone的标签的裸git项目.但是通过谷歌知道没有像" --no-tags" 这样的选项.

有没有办法克隆没有像下面的标签?

$ git clone {path}/test.git --no-tags --mirror
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激!!:)

git git-clone git-tag

8
推荐指数
3
解决办法
7265
查看次数

Cherry-pick从其他repo提交到git repo的特定文件夹

我非常熟悉git cherry-pick.目前我正在尝试从其他git存储库中挑选一些提交.场景如下:

A - > git repo("A/foo/B",其中B是foo中的目录)

B - > git repo

我的目的是将git repo B的提交/应用补丁/合并提交到A/foo/B目录.

A/FOO/B

我知道它可以通过多种方式完成,例如merge,cherry-pick和apply patch.

我也试过下面的命令,这符合我的意图:

git --git-dir=../B/.git format-patch --stdout sha1^..sha1 | git am --directory='B/'
Run Code Online (Sandbox Code Playgroud)

但有没有什么方法可以通过樱桃选择获得相同的东西来获得预期的解决方案或任何其他完美的解决方案来弥补它.

请建议!!

谢谢 :)

git git-cherry-pick

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

git pull显示"破坏"消息

我今天做了一个git pull并获得了以下内容:

$ git pull
remote: Counting objects: 8, done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 8 (delta 6), reused 0 (delta 0)
Unpacking objects: 100% (8/8), done.
From bitbucket.org:[...]
   968e1d5..672edb4  develop    -> origin/develop
   911ae33..37250eb  release/fta -> origin/release/fta
destructing 4
destructing 3
destructing 2
destructing 1
Merge made by the 'recursive' strategy.
 .../[...].cs  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Run Code Online (Sandbox Code Playgroud)

一些背景:

  • 拉动无法做快进.因此我得到了合并提交.
  • 从我的分支从远程分支的点开始,我有一个提交(有2个文件更改),远程有一个提交(更改了1个文件).

那么"破坏X"的消息是什么?为什么有4个?两个提交,其中3个文件更改合并.

检查了git文档并做了一些duckduckgoing并找不到答案.

亲切的问候

git git-pull

5
推荐指数
1
解决办法
165
查看次数

如何在远程分支上获取最新信息?

我试图从远程github分支中获取最新代码.假设这个分支名为myDevBranch,我该如何在本地获取?我试过了:

git fetch myDevBranch 
Run Code Online (Sandbox Code Playgroud)

返回:

fatal: 'myDevBranch' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
Run Code Online (Sandbox Code Playgroud)

看起来像一个安全问题,还是有另一种方式在本地获取远程分支?

git git-branch

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

Cherry-pick和patch apply有什么区别?

我知道git cherry-pick和git apply终端系统。但是今天我遇到了一些问题。我通过使用两个修订版的差异来应用一个补丁。我使用以下命令:

git diff HEAD> diff.patch

git apply diff.patch

我的补丁申请失败了一个文件。

然后,我只是想尝试挑选 commit-id2。它被成功挑选。

可能是什么原因?任何人都想对同一事物有所了解。

git git-cherry-pick

3
推荐指数
1
解决办法
2931
查看次数

获取所有匹配正则表达式的git分支并将其拆分为数组

我试图从我的git repo中获取git branches -a匹配regex(grep xxx)的所有分支().

通常在命令行中我写这个:

git branch -a | grep xxx
Run Code Online (Sandbox Code Playgroud)

所以我试图在.sh文件中做同样的事情:

  1. 得到所有匹配正则表达式的分支
  2. 将其拆分为数组
  3. 得到第一个分支

以下是我的代码:

#!/bin/bash

branches=( $(git branch -a | grep $1) )

echo branches : $branches
echo branch : ${branches[0]}
Run Code Online (Sandbox Code Playgroud)

可悲的是,它以某种方式添加了当前文件夹中的所有文件.

这是输出:

$> checkout.sh 2887
branches : ant 
branch : ant 
Run Code Online (Sandbox Code Playgroud)

如果我branches=( $(git branch -a | grep $1) )改为branches=$(git branch -a | grep $1)我最后得到了我的目录和分支中的所有文件

regex git bash git-branch

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

Git - 如何将单个分支推送到多个分支

我有三个分支dev test master

最初我只有 dev 分支可以使用,所以我使用了这个

git push origin dev

但稍后我将基于 env 拥有不同的分支,并将从各自的分支进行部署。Buntill develeopemet 是否有可能test并且master始终与 dev 具有相同的头脑

或者换句话说

git push origin dev|test|master

所以我可以推送到我单个命令的所有分支,然后我可以合并选择性提交。我的意思是所有其他分支都与 dev 相同

git git-push git-branch

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

git添加所有跟踪的文件 - 也包括父目录中的文件

可以说我有一个git根文件夹mine_git,其中有一个子目录subdir.所以我已经工作了一点,而且我在subdir- git status列出所有已更改的文件:

subdir$ git status -uno
# On branch master
# ...
#
#   modified:   mysubdirfile.txt
#   modified:   ../a-main-file.txt
#
no changes added to commit (use "git add" and/or "git commit -a")
Run Code Online (Sandbox Code Playgroud)

K,所以我想将所有这些跟踪和修改的文件添加到临时区域(或缓存?索引?不确定名称),所以我可以事后提交; 所以我发出:

subdir$ git add -u
Run Code Online (Sandbox Code Playgroud)

......然后我再次检查:

subdir$ git status -uno
# On branch master
# Changes to be committed:
#   ...
#
#   modified:   mysubdirfile.txt
#
# Changes not staged for commit:
#   ...
#
#   modified:   ../a-main-file.txt
# …
Run Code Online (Sandbox Code Playgroud)

git git-add

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