Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.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_Bitbucket - Fatal编程技术网

在不丢失旧版本的情况下使用git推送新版本

在不丢失旧版本的情况下使用git推送新版本,git,bitbucket,Git,Bitbucket,我正在学习使用git,现在我有一个项目,我正在使用bitbucket保存我的代码,我知道如何更新它,问题是现在我对我的代码做了一些修改,我想上传它,但没有丢失或更新bitbucket上已经存在的代码,我怎么做?我找不到命令 分支是否与版本相同?例如,如果我创建一个分支: git checkout -b <new-branch> git签出-b 这个分支类似于project v1.2?没有必要使用这个分支 每次执行提交时,相应的版本都存储在存储库中。您可以稍后通过git check

我正在学习使用git,现在我有一个项目,我正在使用bitbucket保存我的代码,我知道如何更新它,问题是现在我对我的代码做了一些修改,我想上传它,但没有丢失或更新bitbucket上已经存在的代码,我怎么做?我找不到命令

分支是否与版本相同?例如,如果我创建一个分支:

git checkout -b <new-branch>
git签出-b

这个分支类似于project v1.2?

没有必要使用这个分支

每次执行提交时,相应的版本都存储在存储库中。您可以稍后通过
git checkout
或bitbucket gui访问它

您需要做的就是将(
git add
)文件添加到存储库中,然后使用
git commit-m“添加了对此的支持”
提交代码的当前状态(您添加的所有文件)

在对文件做了一些更改之后,您可以执行“git commit-m”修复了有关…的问题,并且此版本也将存储在历史记录中

请注意,提交是(通常)代码中的小增量更改。
对于发布管理和版本(
v.1.0
v.2.2
等),您可以使用
标签
,正如@Schwern在下面的评论中所建议的那样。

如果我理解您的要求,您希望能够更新您的项目,但仍然允许人们下载此版本。您希望人们能够在使用v1.2的同时下载v1.1

在版本控制中,这通常是通过使用。标记只是在提交上放置一个标签。它有点像树枝,但从不动。然后人们可以签出标签。例如

# This tags the current commit as v1.1
git tag v1.1

# This uploads your tags.
git push --tags

# Then anyone can checkout v1.1
git checkout v1.1
对发布使用标记允许任何人轻松签出发布,并且您可以继续提交具有良好提交消息的小更改

给你

其他系统如。Bitbucket似乎不支持此功能,但是


至于分支,如果完成了v1.1,那么就不需要为新版本进行分支。继续使用
master
并为新版本制作新标签


版本分支适用于必须同时维护多个主要版本的大型项目。例如,编程语言可能需要在同时处理v3的同时维护v2。所以它们可能有一个v2分支和一个v3分支。每个都有自己的标签(v2.2.4、v3.0.3等)。

您必须了解开发人员使用的标准。 创建一个从master到develop的分支,并发展到您的分支

主->发展->你的分支

您可能会在您的分支中进行更改,合并到develop中,然后进行开发以创建发布分支并合并到master中,然后创建一个新标记并投入生产。这个新标签将包含您所有的更改和旧代码


V1.2(标记)提交消息的可能重复不适合发布。这样使用它们可以鼓励大型提交—将版本控制转变为增量备份系统。另外,您必须搜索提交历史记录才能找到发布。提交应该用于小的更改,提交消息应该描述更改的原因。对于发布。它们注释提交,很容易列出(
git tag-l
),并且可以直接检出(
git checkout v1.1
),我完全同意。我不是想用消息来标记发布,那是不同的故事。让我把答案中的信息改得更准确些。
# To get latest tag using command
git describe

# To create new tag
git tag v1.1

# To uploads all your tags in origin
git push --tags
# To create a new branch
git branch branchName

# To checkout in branch 
git checkout branchName

# Create a new branch and checkout in that branch
git checkout -b branchName

# To pull branch in origin
git pull origin branchName

# To add all files in which you have done changes
git add .

# To add single file in which you have done changes
git add pathToFile/fileName

# To commit your changes
git commit -m "Your message, what changes you have done"

# To push your changes in origin remote 
git push origin yourBranch