В мерзавце, там простой способ представить несвязанное ответвление репозиторию?

@kch I только (7 декабря 2008) скомпилировал v1.6.1-rc1 тег мерзавца, и это действительно содержит мерзавца svn команда ответвления и документация для него. Таким образом, v1.6.1 выпуск мерзавца должен (надо надеяться), содержать эту команду.

318
задан Ikke 25 February 2012 в 22:57
поделиться

4 ответа

Из Книги сообщества Git :

git symbolic-ref HEAD refs/heads/newbranch 
rm .git/index 
git clean -fdx 
<do work> 
git add your files 
git commit -m 'Initial commit'
31
ответ дан 23 November 2019 в 01:02
поделиться

Хотя решение с git symbolic-ref и удаление индекса работает, было бы концептуально более чистым создать новый репозиторий

$ cd /path/to/unrelated
$ git init
[edit and add files]
$ git add .
$ git commit -m "Initial commit of unrelated"
[master (root-commit) 2a665f6] Initial commit of unrelated
 1 files changed, 1 insertions(+), 0 deletions(-)
 create mode 100644 foo

, а затем извлечь из него

$ cd /path/to/repo
$ git fetch /path/to/unrelated master:unrelated-branch
warning: no common commits
remote: Counting objects: 3, done.
Unpacking objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0)
From /path/to/unrelated
 * [new branch]      master     -> unrelated-branch

Теперь вы можете удалить / path / к / не связанные

22
ответ дан 23 November 2019 в 01:02
поделиться

Github имеет функцию под названием Страницы проекта , где вы можете создать конкретную именованную ветку в своем проекте для предоставления файлов, которые будут обслуживаться Github. Их инструкции следующие:

13
ответ дан 23 November 2019 в 01:02
поделиться

Нашел этот скрипт по адресу http://wingolog.org/archives/2008/10/14/merging-in-unrelated-git-branchs и он работает очень хорошо!

#!/bin/bash

set -e

if test -z "$2" -o -n "$3"; then
    echo "usage: $0 REPO BRANCHNAME" >&2
    exit 1
fi

repo=$1
branch=$2

git fetch "$repo" "$branch"

head=$(git rev-parse HEAD)
fetched=$(git rev-parse FETCH_HEAD)
headref=$(git rev-parse --symbolic-full-name HEAD)

git checkout $fetched .

tree=$(git write-tree)

newhead=$(echo "merged in branch '$branch' from $repo" | git commit-tree $tree -p $head -p $fetched)
git update-ref $headref $newhead $head
git reset --hard $headref
0
ответ дан 23 November 2019 в 01:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: