git 提交代码

来源:互联网 发布:mac怎么卸载webstorm 编辑:程序博客网 时间:2024/06/15 21:28

1.修改git config,输入自己的名字和邮箱:
git config --global user.name "xxx" 
git config --global user.email "xxx@XXX.com" 
mac: git config --global core.autocrlf input
windows: git config --global core.autocrlf true

2.一个功能完整完成并测试以后,首先使用git status查看本地git仓库状态,然后将新添加的文件放入git管理:git add -A/filename,并且从git仓库中删除本地已经删除的文件:git rm filename。
3.然后将自己本地的代码都提交:git commit --verbose -a -m '注释',注意:提交代码只是将代码提交到本地git仓库,步骤8才是将修改提交到远程git仓库。
4.执行:git fetch origin,下载远程git仓库的所有更新。
5.执行:git merge origin/master,将远程git仓库的更新合并到本地。
6.然后手工处理本地的冲突文件,并检查merge的文件是否有问题。
7.重新按照步骤3提交冲突的文件到本地仓库。
8.执行:git push origin master --follow-tags,将merge后的代码和自己修改的代码推送到远程。

git Branch 相关:

结构示例:

            master            |  |  |branch1 ----   |   ---- developer1           developer2

master -- 主分支, 在此分支上发布最新版本
developer1, developer2 -- 开发人员分支
branch1 -- 可以作为版本备份, 上线版本的bugfix

NOTE: master作为主分支, 需要最少次数的merge代码, 且保证master分支是可以运行的, 而且不该出现测试的文件或代码

流程:
0. 查看当前branch: git status
1. 查看branch: git branch -a (查看本地) git branch -r (查看远程)
2. 创建branch: git branch <branch_name> 
3. 切换分支: git checkout <branch_name> 
4. 把 branch push 到远程: git push origin <branch_name> 
5. 把 branch 和远程关联起来 git branch --set-upstream <branch_name> origin/<branch_name> 
6. 开发并提交
  • 6.1 假设每个人在自己的分支(以 developer1 为例)
  • 6.2 本地修改代码, add, commit. 参考上面第3步
  • 6.3 git pull (merge, 一般在自己的branch不会有其他人提交); 如果你需要合并master的更新(比如其他人提交东西到master), 那么接着执行 git merge origin/master
  • 6.4 看情况作push 命令: git push (比如每天下班前, 或者一个大点的功能开发测试完成); 和上面第8步不同, 不要加"origin master"; 此时代码push到自己 branch 的远程
  • 6.5 如果功能完成, 需要merge到master:
  • * 1) git add => git commit => git pull => git merge master => git add => git commit => git push; 此时自己的本地分支和自己的远程分支都merge到最新;
  • * 2) 切换到master分支 (git checkout master) => git merge developer1 => git add => git commit => git push; 此时本地 master 分支 和 远程master分支都是最新.
  • 6.6 如果需要merge其他人的分支 git pull => git merge developer2 => git add => git commit

7. 每次产品上线(此时, 新功能都开发完成, 并且已经merge到master, 从master打包)之后, 所有分支都从master merge最新的代码
8. 如果线上版本有bug, 或者需要加小版本, 则可以在 branch1 上面开发. 发布小版本后, 将最新代码 merge 到 master.


0 0
原创粉丝点击