Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从非克隆文件夹将全新目录上载到git_Git_Github_Bitbucket - Fatal编程技术网

如何从非克隆文件夹将全新目录上载到git

如何从非克隆文件夹将全新目录上载到git,git,github,bitbucket,Git,Github,Bitbucket,我有一个关于bitbucket的老项目。我最近在一个本地文件夹上工作,并对项目进行了彻底的重组和编辑。现在我发现这个本地文件夹没有被克隆。。。如何推送此项以替换存储库> 我使用git init创建了一个空存储库。如果我克隆远程回购,那么我的本地更改将被覆盖,对吗 我想我需要做两件事: 以某种方式将本地空git连接到bitbucket,而不覆盖 我的变化 上传更改 有什么想法吗?我想我通过以下方式解决了这个问题: 增加回购: git init git remote set-url origin

我有一个关于bitbucket的老项目。我最近在一个本地文件夹上工作,并对项目进行了彻底的重组和编辑。现在我发现这个本地文件夹没有被克隆。。。如何推送此项以替换存储库>

我使用git init创建了一个空存储库。如果我克隆远程回购,那么我的本地更改将被覆盖,对吗

我想我需要做两件事:

  • 以某种方式将本地空git连接到bitbucket,而不覆盖 我的变化
  • 上传更改

有什么想法吗?

我想我通过以下方式解决了这个问题:

增加回购:

git init
git remote set-url origin git@bitbucket.org:username/project.git
(注意:使用设置url,而不是添加,因为它在某个点已经存在)

然后添加文件

git add ./*
git commit
git push --force -u origin master

因此,您在本地repo中有您的初始提交,所有其他更改都未被限制,并且您希望用您的本地更改替换origin,对吗?如果不想覆盖bitbucket历史记录,可以:

  • 为更改创建本地分支
    git签出-b您的分支
  • 添加并提交对该分支的所有更改
    git Add./*
    git commit
  • 把所有东西都从垃圾桶里拿出来
  • git chekout主机
    (假设您的主机与bitbucket主机同步)
  • git合并您的分支机构

  • 使用此解决方案,您将创建一个新的提交图,并释放旧的历史记录。是的,这很好。
    cd /path/to/not_cloned/folder
    git init
    git remote add origin BITBUCKET_URL
    git fetch
    git reset --soft origin/master # This will move your current 'master' branch to the same commit as 'origin/master'
    git status
    # You should see all files from repository as deleted and all new files as untracked
    git add .
    git commit --message "New structure"
    git push origin master