GIT: Gitflow 工作流程
GIT: Gitflow workflow
我已经从分支 develop 创建了 branchA
# git checkout -b branchA
# git push origin -u branchA
修改部分文件
# git add *
# git commit -m "modification in branchA"
# git push
# git checkout develop
# git merge branchA
# git push
然后我创建了另一个分支
# git checkout -b branchB
# git push origin -u branchB
修改部分文件
# git add *
# git commit -m "modification in branchB"
# git push
# git checkout develop
# git merge branchB
# git push
然后又在branchA工作
# git checkout branchA
我修改了1个JSP (home.jsp)
# git add *
# git commit -m "modification in branchA"
# git push
# git checkout develop
# git merge branchA
# git push
那我回到branchB
# git checkout branchB
# git pull
但是我没有在 home.jsp
中所做的更改
首先,仅在跟踪分支上使用git push
,如果您尚未将分支设置为跟踪分支,使用git push origin branch_name
总是更安全。您可以通过
轻松创建新的跟踪分支
git branch --track branch-name origin/branch-name
git branch --set-upstream-to <remote-branch> # for existing branches
现在,如果我做对了,您在倒数第二步中对 branchA 进行了更改并将其合并到 develop 中,但是您尚未使用 develop 中的更改更新 branchB。这就是为什么您在 branchA 中看不到 branchB 发生变化的原因。仅仅因为您从 develop 中分叉出 branchB,并不意味着它会始终随着 develop 中的变化而保持更新。
git checkout branchB
git merge develop
现在您所做的更改应该反映在 branchB
我已经从分支 develop 创建了 branchA
# git checkout -b branchA
# git push origin -u branchA
修改部分文件
# git add *
# git commit -m "modification in branchA"
# git push
# git checkout develop
# git merge branchA
# git push
然后我创建了另一个分支
# git checkout -b branchB
# git push origin -u branchB
修改部分文件
# git add *
# git commit -m "modification in branchB"
# git push
# git checkout develop
# git merge branchB
# git push
然后又在branchA工作
# git checkout branchA
我修改了1个JSP (home.jsp)
# git add *
# git commit -m "modification in branchA"
# git push
# git checkout develop
# git merge branchA
# git push
那我回到branchB
# git checkout branchB
# git pull
但是我没有在 home.jsp
中所做的更改首先,仅在跟踪分支上使用git push
,如果您尚未将分支设置为跟踪分支,使用git push origin branch_name
总是更安全。您可以通过
git branch --track branch-name origin/branch-name
git branch --set-upstream-to <remote-branch> # for existing branches
现在,如果我做对了,您在倒数第二步中对 branchA 进行了更改并将其合并到 develop 中,但是您尚未使用 develop 中的更改更新 branchB。这就是为什么您在 branchA 中看不到 branchB 发生变化的原因。仅仅因为您从 develop 中分叉出 branchB,并不意味着它会始终随着 develop 中的变化而保持更新。
git checkout branchB
git merge develop
现在您所做的更改应该反映在 branchB