线上分支合并、远程仓库回滚、为开源项目贡献代码、git工作流,(git pull和git fetch,变基)、pycharm操作git(克隆代码、提交到暂存区,提交到版本库,推送到远程)

0 gitlab使用

1 线上分支合并

2 远程仓库回滚(你不要去做)

3 为开源项目贡献代码

4 git工作流,git pull和git fetch,变基

5 pycharm操作git
5.1 克隆代码
5.2 提交到暂存区,提交到版本库,推送到远程
5.3 查看日志
5.4 分支操作
5.5 其他

0 gitlab使用

# 1 创建账号---》管理员审核
# 2 登录进去---》就能看到项目--(项目管理员把你添加成开发者了)
# 3 把代码clone下来,使用pycharm打开
# 4 写代码,本地提交
# 5 推送到远端---》先拉取代码


## 问题: 普通开发者,提交到master分支是不行的
	-创建一个dev分支---》提交到dev分支
    -后期由管理员做分支合并---》把dev合并到master中
    

线上分支合并、远程仓库回滚、为开源项目贡献代码、git工作流,(git pull和git fetch,变基)、pycharm操作git(克隆代码、提交到暂存区,提交到版本库,推送到远程)_第1张图片

1 线上分支合并

# 线下分支合并
	git merge dev
    
    
# 线上分支合并
	-公司有个主分支---》只保留大版本信息,真正的开发在dev分支开发
    
    -你开发的代码,提交到dev分支了,功能写完了,要给用户看了,把dev分支合并到主分支
    	-可以线下分支合并,合并完,推送上去--》没有权限,只能仓库管理员来做
        -线上分支合并:
        	提交:
	        	pr:pull request    
	        	mr:merge request
           
# 远端有分支,本地也有分支
	-1 远程创建,本地拉取
    	本地执行:
	    	git pull origin dev
	    	git checkout dev
    -2 本地创建,提交到远端
    	本地执行:
	    	git branch dev1
	    	git checkout dev1
	    	git push origin dev1
        
# 操作步骤:
	- 1 远端创建dev分支
    - 2 本地:
	 	git pull origin dev
    - 3 git branch  查看看不到,直接checkout 到dev分支就可以了
    - 4 dev分支写代码,本地提交,推送到远端dev
    - 5 功能开发完了,普通开发者,提交pr
    - 6 管理员点审查,测试通过--》同意合并---》dev就合并到master
    

    
    
 # 咱们分支结构:
	master  dev  bug
    所有人在dev开发新功能,开发完,提交pr---》合并到master---》结束
    
    master dev  bug   每个开发者有个分支
   	每个人在自己分支开发,开发完,提交pr---》合并到dev---》你的功能开发完毕
    管理员自己  提pr---》dev和master
    

2 远程仓库回滚(你不要去做)

1 本地回到 初始化的状态(主分支)
	git reset --hard 9cac70d
    
    
2 强制推送到远端
	git push origin master # 失败
    
    git push origin master -f 
    

3 为开源项目贡献代码

1 fork 开源代码----》你仓库就有这个代码
2 clone你仓库的代码
3 写代码,提交到你仓库
4 你仓库,提交pr  你仓库的某个分支  合并到别人的某个分支
5 对方审核通过,同意,才ok

4 git工作流,git pull和git fetch,变基

1  git 工作流:git flow---》分支方案
	-我们没有采用
    -master  dev  bug
    
2 git pull 和 git fetch
	-git pull 从远程仓库拉取代码:从远程获取最新版本并merge到本地
    -git fetch 从远程仓库拉取代码:会将数据拉取到本地仓库 - 它并不会自动合并或修改当前的工作
    -git pull =git fetch +merge
    
    

3 变基 rebase
	-1 多个提交记录整合成一个
    -2 解决多次合并分叉问题

5 pycharm操作git

	之前用命令做的所有操作,使用pychrm点点就可以完成

5.1 克隆代码

线上分支合并、远程仓库回滚、为开源项目贡献代码、git工作流,(git pull和git fetch,变基)、pycharm操作git(克隆代码、提交到暂存区,提交到版本库,推送到远程)_第2张图片

5.2 提交到暂存区,提交到版本库,推送到远程

线上分支合并、远程仓库回滚、为开源项目贡献代码、git工作流,(git pull和git fetch,变基)、pycharm操作git(克隆代码、提交到暂存区,提交到版本库,推送到远程)_第3张图片

5.3 查看日志

线上分支合并、远程仓库回滚、为开源项目贡献代码、git工作流,(git pull和git fetch,变基)、pycharm操作git(克隆代码、提交到暂存区,提交到版本库,推送到远程)_第4张图片

5.4 分支操作

线上分支合并、远程仓库回滚、为开源项目贡献代码、git工作流,(git pull和git fetch,变基)、pycharm操作git(克隆代码、提交到暂存区,提交到版本库,推送到远程)_第5张图片

5.5 其他

线上分支合并、远程仓库回滚、为开源项目贡献代码、git工作流,(git pull和git fetch,变基)、pycharm操作git(克隆代码、提交到暂存区,提交到版本库,推送到远程)_第6张图片
线上分支合并、远程仓库回滚、为开源项目贡献代码、git工作流,(git pull和git fetch,变基)、pycharm操作git(克隆代码、提交到暂存区,提交到版本库,推送到远程)_第7张图片

线上分支合并、远程仓库回滚、为开源项目贡献代码、git工作流,(git pull和git fetch,变基)、pycharm操作git(克隆代码、提交到暂存区,提交到版本库,推送到远程)_第8张图片
线上分支合并、远程仓库回滚、为开源项目贡献代码、git工作流,(git pull和git fetch,变基)、pycharm操作git(克隆代码、提交到暂存区,提交到版本库,推送到远程)_第9张图片

你可能感兴趣的:(Git,git,pycharm,clone,pull,push,gitlab)