实际问题:我的一个项目map是给很多客户用的,不同客户之间的版本不一样,但都在master分支上。有一个客户说要更新,但不是用当前master最新的改动,而是用回之前某个日期的
1.如果我想重新进入到这个commit然后重新npm run build打包 2.或则重新进入到这个commit然后进行修改,再npm run build打包
我是选择哪个方式比较好?然后麻烦具体的操作步骤和回退到当前matser最新commit的方法都说一下,感谢。
(怕把git搞乱了- -)
1.如果只是在过去的某commit打包
你只需要git reset 你要打包commit的sha1码 --hard
比如:
git reset 2cd214d58b02c2133f85c598f2865ea33ea3ecaf --hard即可。
npm run build打包完毕后,执行git pull,就回到了master的最新分支,没任何影响
2.如果只是在过去的某commit进行修改
可以git reset 2cd214d58b02c2133f85c598f2865ea33ea3ecaf --hard之后
为了不影响master,check出新分支进行修改,执行git checkout -b newbranch
修改完毕后,回到master
执行git checkout master
在执行git pull 还原master
再git merge newbranch即可
你的采纳是我最大的动力,谢谢!!!
在这个commit点,新建一个分支,然后切换到这个分支上进行修改。分支的修改不会影响主干。
可以简单理解,git的使用,就是不断建分支,然后合并到主干的(如果需要合并到主干的话)
git checkout -b kehu1 // 创建新分支,不影响旧分支
git reset [commit id] --hard // 将当前分支回滚到想要的地方
// 修改代码...
yarn build or npm run build // 打包
git push --set-upstream origin kehu1 // 将这个分支提交到远程仓库,以免后期这个客户还需要这个修改
git checkout master // 回到 master
你这样问说明你不清楚git的基本命令,git无非就是分支,提交,回退这些。
首先要把当前的代码提交,然后git仓库里是有对应的提交版本的,可以直接回退到指定的版本