git常规操作

一. 远程拉仓

1.安装git

  • apt-get install git

2.克隆远程仓库

  • git clone https://github.com/test.git

3.进入拉仓的目录配置信息

4.推送项目到远程仓库

  • git add . (提交到暂存区)
  • git commit -m “立项" (提交到本地代码仓库)
  • git push(此时需要按照提示输入github的账号和密码)(提交到远程仓)
  • git config --global credential.helper store (可以长期存储密码,下次git push 不用输入密码)

注意:

  • 在github上创建库的时候,一定要将initialize this respository  with下的任一选项勾上

二. 其他常见操作

1.git status:查看文件当前和上次提交之间的修改状态

2.git branch : 查看本地分支

3.git branch -r : 查看远程分支

4.git branch -a : 查看所有分支远程分支

5.git branch xxx : 创建本地分支 
6.git push -u origin xxx : 创建远程分支并推本地分支仓库代码到远程分支
第一次提交分支的时候使用-u origin,第二次及以后提交分支代码则直接git push

7. git checkout xxx : 切换分支/ 撤销未暂存的修改(未git add .)

git checkout -b xxx : 创建的同时切换分支
git push -u origin xxx     : 第一次提交分支

8.git checkout 版本号:代码回滚(git log 查看历史版本号)

9.git reset xxx : 撤销文件的暂存状态(git add .)/ 代码硬回滚

10.git merge xxx : 分支合并

11. git pull : 拉远程仓的代码

12.git pull origin develop : 拉取已合并到develop分支(或主线)代码,和本地分支代码对比是否存在冲突部分。

13.git log --graph : 查看分支合并主线详情(图像显示)

14.追加未push但已commit的代码

git add .
git commit --amend 
:将此次提交合并(追加)到上次提交里面


修改commit的注释:
1. 已经commit 但是还未push的注释:
    git commit --amend
    在首行像vim一样修改并保存退出

2. 已经commit 且push到线上的注释:
    git rebase -i HEAD~5,其中5是代表着倒数5次的commit
    将需要修改的注释前的pick改成edit
    之后像1未push的方法一样修改

15.强制回退(一般建议操作)

问题:分支代码未审核完但被合并到主线
解决方法:强制回退

1.回退到未合并前的状态
    git reset --hard 187q340e4ge90bkajhepfhqp94fhuejefbiqugfo 
2.强制将当前回退的代码推送到代码仓
    git push --force 

16.添加版本标签

git tag v1.0
git push origin --tag

三.添加.gitignore 文件,文件内匹配的文件不会添加上库

1.创建 .gitignore ⽂件

2.通过 vim 将以下内容写⼊ .gitignore:

*.pyc :Python,import产生的缓存,二进制文件

*.sqlite3

.idea : pycharm创建python文件的时候会生成的文件,存放项目的配置信息,防止多个人提交错乱

__pycache__ *

.log : 日志文件

.venv

medias/*

四.README.MD文件

github 上repository显示的的界面

五. A,B分支代码合并主线

1.A分支代码托管仓库提交pull request合并到develop分支申请。
2.审核并合并到develop分支。
3.开发环境B分支git pull origin develop,将已合并分支A的develop分支代码更新到B分支,查看差异,保留或修改冲突部分。
4. 开发环境本地检查B分支代码,去往代码托管平台提交合并develop分支申请。
5.审核通过同时将B分支代码功能merge到主develop分支。

6.develop分支代码再申请合并到主线main。

                                                    生产服务器
                                                       ^ 
                                                       |自动化部署
                                                       |3.代码发布上线
                                                       |2.服务重启
                                                       |1.代码发布上线 
                                                        
     0.1版           0.2版            0.3版            0.4版
main *---------------*----------------*----------------*-------------------->
      \                                                ^4.合并
        |                                              |3.提交PR
        |                                              |2.测试人员测试
        |                                              |1.自动化测试(冒烟测试)
develop *-------------------*--------------------------*
        |                   ^             ^
        |                   |             |
    A   *---*------*--------|             |
        |                                 |
        |                                 |
    B   *-----*----*---------------*------*

7. git log --graph : 查看分支合并主线详情(图像显示)

六.添加版本标签

1. 主线功能初步稳定,出1.0版本。

2.切换main主线:
 

1. git tag v1.0       : 设置标签v1.0版本
2. git push --tags    : 将标签推送到远程代码仓管理平台
3. git tag --list     : 查看历史版本号
4. git checkout v1.0  : 按照版本号切换主线代码

七.项⽬代码布局

中大型项目部署目录(Django/flask):
1.admin模块:统计报表,营收数据
2.前后端分离:views.py --> api.py
3.flask中的蓝图相当于Django中的app模块

git常规操作_第1张图片

git常规操作_第2张图片

2.MTV 架构
3.MVC架构

你可能感兴趣的:(工具,github)