当前位置:  开发笔记 > IOS > 正文

Git基本工作流程

如何解决《Git基本工作流程》经验,为你挑选了3个好方法。

问题是你正试图推动非裸机回购.非裸仓库是具有关联工作树的仓库(即,文件实际上已签出到磁盘).默认情况下,Git不会让你推送到非裸仓库; 推到非裸露的回购仅更新Git的内部数据结构,并不会改变工作树(磁盘上的文件),这意味着,如果你再回去给你推到了回购,并开始对文件的工作,你我将处理这些文件的旧版本.当然,当您尝试提交更改时,这会导致问题.

执行此操作的最佳方法是推送到存储库,这是通过在创建存储库--bare时将标志传递给Git而创建的存储库:

$ mkdir new_repo
$ cd new_repo
$ git --bare init

当然,裸仓库不会检出任何文件,因此您无法实际使用它(您必须首先克隆它).

如果你仅仅使用一个Git回购当地发展(而不是共享或服务Git的回购),你不具备有远程回购推到; 您可以处理本地非裸仓库的单个副本.



1> mipadi..:

问题是你正试图推动非裸机回购.非裸仓库是具有关联工作树的仓库(即,文件实际上已签出到磁盘).默认情况下,Git不会让你推送到非裸仓库; 推到非裸露的回购仅更新Git的内部数据结构,并不会改变工作树(磁盘上的文件),这意味着,如果你再回去给你推到了回购,并开始对文件的工作,你我将处理这些文件的旧版本.当然,当您尝试提交更改时,这会导致问题.

执行此操作的最佳方法是推送到存储库,这是通过在创建存储库--bare时将标志传递给Git而创建的存储库:

$ mkdir new_repo
$ cd new_repo
$ git --bare init

当然,裸仓库不会检出任何文件,因此您无法实际使用它(您必须首先克隆它).

如果你仅仅使用一个Git回购当地发展(而不是共享或服务Git的回购),你不具备有远程回购推到; 您可以处理本地非裸仓库的单个副本.



2> Sergey Kuzne..:

首先,您不需要克隆本地存储库.您可以使用分支在同一存储库中划分开发.

Git是一个分布式VCS,如果您之前有Subversion或CVS的经验,那么您需要改变主意.

Git非常敏捷,您可以使用不同的工作流程.团队工作更需要克隆存储库,而不是本地开发(IMHO).

分店是您的理想选择.

看到.让我们为您的存储库设置master分支,以获得生产就绪的代码.让我们为开发创建另一个分支:

$ git checkout -b development master

现在您正在开发分支.

您可以为要开发的每个功能使用不同的分支.这非常简单,乐于助人.

让我们假设你想要实现一些新功能,你需要创建一个新的分支:

$ git checkout -b newfeature development

现在您可以使用代码,添加文件,提交等等.

接下来,您需要新开发的功能合并开发分支:

$ git add .
$ git commit -m "My last changes for the new feature"
$ git checkout development
$ git merge newfeature

现在,来自newfeature分支的新代码合并到开发分支中.

在将来的某个时候,当您确定开发分支中的代码获得某个里程碑时,您可以将所有更改从开发合并到分支.

这是一个非常基本的工作流程,它可以为许多分支机构提供帮助.

我现在为您提供建议:阅读更多关于git,分支,存储的信息(非常非常有助于快速修复).过了一段时间,你会从使用git中获得很大的努力.

祝好运.



3> Jason Watts..:

这是成功的git工作流程的最清晰,最全面的描述.它基本上涵盖了谢尔盖建议的内容,增加了一些非常丰富的图形.

一个成功的Git分支模型

作者还建议您在合并时包含--no-ff标记以记录您在历史记录中有特征分支的事实.

推荐阅读
谢谢巷议
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有