我正在对某些ETL代码进行一些更改,并希望确保我不会破坏任何内容。
我有一个git repo,我正在处理的所有文件都已提交并存储在Bitbucket上。 (git push origin master
)
我相信我应该建立一个新的分支,对吗?这会反映在Bitbucket上还是我必须以某种方式将其推到那里?
git branch config_changes
现在,当我对文件进行一些编辑时,我会说以下内容吗?
git checkout config_changes
git add filename.py
git commit -m "changes"
git push origin config_changes
这将备份我对Bitbucket的更改。现在,当我觉得代码已经准备好替换现有代码时,我就这样做了:
git checkout master
git merge config_changes
git push origin config_changes
或者最后一行应该是git push origin master
?
奖金问题:我有Windows任务计划运行.py文件来自动化一些日常的东西。我想对文件进行更改,但保持任务在当前(工作).py文件上运行。有没有办法实现这个目标?任务管理器直接指向文件名。我现在要复制文件夹吗?
答案 0 :(得分:2)
是的,您应该在远程分支中进行大的更改。将第一次更改提交到dev分支并推送后,您将看到分支出现在BitBucket中。
git checkout -b config_changes
*make changes*
git add filename.py
git commit -m 'message'
git push origin config_changes
-b
中的git checkout
标志告诉git您正在从当前工作分支创建一个新分支(在您的情况下为master)。
合并时,你走在正确的轨道上,但你确实应该git push origin master
。 git pull origin master
也是一种很好的做法,可以确保您的主副本与存储库同步(当其他人正在处理同一个项目时)。
git checkout master
git pull origin master
git merge config_changes
git push origin master