首页 文章 精选 留言 我的

精选列表

搜索[全栈信创],共10004篇文章
优秀的个人博客,低调大师

全栈开发者Git使用指南

一、Git基础 1、Git简介 Git是一种分布式版本控制系统,由Linux之父Linus开发。 所谓分布式版本管理系统,就是在每一台机器上都有一个完整的仓库。 2、Git官网 Git官网:git 在官网上可以获取Git的安装软件。 除此之外,还可以下载《progit》——这是最棒的Git学习资料,而且有中文版本。 3、Git安装 从 https://git-scm.com/downloads官方下载地址下载对应的操作系统版本一步步安装即可。 4、Git基本配置 安装完成之后,在任意目录下,右键 Git Bash Here 全局配置邮箱和用户名(–global表示全局配置,也可以不配置,每个仓库单独配置) $ git config --global user.name "test" $ git config --global user.email test@qq.com 5、Git基本概念 5.1、Git工作区域 Git有四个工作区域: 工作区 简单说工作区就是我们项目的目录。 仓库区/本地仓库 工作区有一个.git目录,其实这个不是工作区,是Git的版本库,存储了Git仓库的所有版本信息 暂存区 暂存区域是一个文件,保存了下次将提交的文件列表信息,一般在 Git 仓库目录中。 有时候也被称作“索引”, 不过一般说法还是叫暂存区域。 远程仓库 对于分布式版本管理系统,远程仓库不是必须存在的,但是通常项目都会有远程仓库。例如Github就是我们非常熟悉的远程仓库。 基本的Git工作流程如下: 在工作目录修改文件 暂存文件,将文件快照放入暂存区 提交更新,找到暂存区的文件,将快照永久性存储到到 Git 仓库区(本地) 将本地仓库的变更推送到远程仓库 以上几个区域的关系可以用下图表示: 5.2、Git分支 分支是为了将修改记录的整个流程分开存储,让分开的分支不受其它分支的影响,所以在同一个数据库里可以同时进行多个不同的修改。 Git 为我们自动创建的第一个分支,也叫主分支,一般其它分支开发完成后都要合并到 master 5.3、Git文件状态 在git中,文件主要有四种状态: Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过git add 状态变为Staged. Unmodify(Committed): 文件已经入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致. 这种类型的文件有两种去处, 如果它被修改, 而变为Modified. 如果使用git rm移出版本库, 则成为Untracked文件 Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过git add可进入暂存staged状态, 使用git checkout 则丢弃修改过, 返回到unmodify状态, 这个git checkout即从库中取出文件, 覆盖当前修改 Staged: 暂存状态. 执行git commit则将修改同步到库中, 这时库中的文件和本地文件又变为一致, 文件为Unmodify状态. 执行git reset HEAD filename取消暂存, 文件状态为Modified 二、Git应用实践 看完上面的Git基础,你可能有一些迷惑,接下来,我们以实际工作中开发的流程来加深对Git的理解吧。 1、克隆项目 可以通过在工作区使用git init来初始化一个Git仓库,但通常开发中我们不会这样做,因为实际的项目大部分已经进行了部分开发,并进行了版本管理,所以我们首先做的是从远程仓库克隆项目。 这里我从Gitee(一般开发项目的远程仓库是部署在内网的GitLab) fork了一个开源项目,将这个项目作为远程仓库的项目: 点击克隆下载,可以看到项目的路径, HTTPS是凭据式的路径,使用此路径,向远程仓库推送代码的时候需要凭据(账号密码); 这种方式向远程仓库提交,会要求账号密码,输入完成之后,Win10操作系统可以选择记住凭据,这样就不用每一次都输入了,Win10操作系统管理凭据 控制面板 → 用户帐户 → 凭据管理器 → Windows凭据 SSH是秘钥式的路径,向远程仓库推送代码的时候,需要本地的私钥和远程仓库的公钥对应。 SSH配置可以参考 Windows配置Github、Gitee共存的Git环境,这里就不详细展开讲解。 我已经进行了公私钥的配置,所以这里选择SSH。 使用git clone命令克隆项目 2、代码管理 项目已经成功克隆,接下来要进行我们的开发了。 2.1、创建分支 通常开发不是在Master分支上,而是在开发分支上,使用 git branch develop创建一个新分支: 可以通过git branch命令列出所有分支: 可以看到我们新建的分支。 2.2、切换分支 使用git checkout develop命令切换到新建的develop分支: 2.3、添加文件到暂存区 接下来,我们再develop分支上进行一些开发操作,我这里对 redeme 进行了一些修改,需要把修改添加到暂存区。 首先通过 git status命令查看工作区文件状态 接下来使用 git add README.md命令(可以使用git add .添加所有修改)将更改添加到暂存区 可以看到文件已经添加。 2.4、提交修改到仓库 接下来使用`git commit -m "

优秀的个人博客,低调大师

Python全栈 Web(Django框架、模板继承、模型)

模板的继承: 语法: 在父模板中 必须要标识出那些内容在子模板中允许为修改 {% block 名称 %} {% endblock %} 在子模板中 指定继承自那个父模板 {% extends '父模板名称' %} 增加block标签 改写属于自的内容 {% block 名称 %} {% endblock %} block的作用: 在父模板中正常显示 在子模板中 如果不修改的话 则按父模板的内容显示 要是修改的话则按照子模板的内容显示 <!doctype html> &

优秀的个人博客,低调大师

Python全栈 Web(Django框架、概述、项目配置)

前言: Flask虽然是轻量级框架但是复杂操作需要自己写扩展和灵活性还是非常高的 基于Flask的项目 我就写在一个博客里了 持续更新。。。 Django众所周知的Pythonweb框架 之前写过一篇Django的博客 是1.11.8版本的 后来决定先写Flask 所以就没有持续更新 Django1.11.8版本 今天我们说的是Django2.xx版本 2.xx版本还是有所不同的 大概19年初中期就会出2.xx的长期支持版 Django Django 项目是一个Python定制框架,它源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来。 Django 框架的核心组件有: 用于创建模型的 对象关系映射 为最终用户设计的完美管理界面 一流的 URL 设计 设计者友好的模板语言 缓存系统 当前使用的版本是最新版 也就是

优秀的个人博客,低调大师

Python全栈工程师(文件操作、编码)

ParisGabriel 每天坚持手写一天一篇 决定坚持几年 为了梦想为了信仰 Python人工智能从入门到精通 最近简直要死了 发烧感冒 喉咙痛。。。。、 如何长期保存计算机中数据: 需要文件操作 文件 file: 文件是用于数据存储的单位 文件通常用来长期储存数据 文件中的数据是以字节为单位进行顺序储存的文件的操作流程: 1.打开文件 2.读/写文件 3.关闭文件 注: 任何操作系统, 一个应用程序同时打开文件的数量有最大数限制文件打开函数: open(file, mode=‘rt’) 用于打开一个文件, 返回此文件流对象, 如果打开文件失败, 则会触发osError错误文件的关闭方法: F.colse() #关闭问津, 释放系统资源 示例: # 此示例示意文件的打开和关闭操作 try: f = open('./aaa.txt') # 不存在此文件 # f = open('./myfile.txt') # 不存在此文件 print("打开文件成功") # 此处要进行读/写操作 f.close() # 半闭文件 except OSError: print("文件打开失败") 文件方法: 文件 mode 模式字符的含义 字符 含义 'r' 以只读方式打开(默认) 'w' 以只写方式打开,删除原有文件内容(如果文件不存在,则创建该文件并以只写方式打开) 'x' 创建一个新文件, 并以写模式打开这个文件,如果文件存在则会产生"FileExistsError"错误 'a' 以只写文件打开一个文件,如果有原文件则追加到文件末尾 'b' 用二进制模式打开 't' 文本文件模式打开 (默认) '+' 为更新内容打开一个磁盘文件 (可读可写) 缺省模式是 'rt' 'w+b' 可以实现二进制随机读写,当打开文件时,文件内容将被清零 'r+b' 以二进制读和更新模式打开文件,打开文件时不会清空文件内容 'r+' 以文本模式读和更新模式打开文件,打开文件时不会清空文件内容 python 文件常用方法: 方法 说明 F.close() 关闭文件(关闭后文件不能再读写会发生ValueError错误) F.readline() 读取一行数据, 如果到达文件尾则返回空行 F.readlines(max_chars=-1) 返回每行字符串的列表,max_chars为最大字符(或字节)数 F.writelines(lines) 将字符串的列表或字符串的列表中的内容写入文件 二进制文件操作方法 F.read(size=-1) 从一个文件流中最多读取size个字符(文本文件)或字节(二进制文件),如果不给出参数,则默认读取文件中全部的内容并返回 F.write(text) 写一个字符串到文件流中,返回写入的字符数(文本文件)或字节数(二进制文件) F.tell() 返回当前文件流读写指针的绝对位置(字节为单位) F.seek(offset, whence=0) 改变数据流读写指针的位置,返回新的绝对位置 F.flush() 把写入文件对象的缓存内容写入到磁盘 F.readable() 判断这个文件是否可读,可读返回True,否则返回False F.writable() 判断这个文件是否可写,可写返回True,否则返回False F.seekable() 返回这个文件对象是否支持随机定位 F.truncate(pos = None) 剪掉 自pos位置之后的数据,返回新的文件长度 文本文件操作: 操作模式: ‘t’ 说明: 1.默认文件中储存的都为字节数据, 在读写过程中会自动进行编解码操作 2.文本文件以行位单位进行分割, 在python内部统一用"\n"做为换行符进行分割 3.对文本文件的读写操作需要用字符串(str)进行数据操作 Linux换行符: '\n' Windows 换行符: '\r\n' 新的Mac OS 换行符: '\n' 旧的Macintosh换行符: '\r'(已不用了) 文件流对象是可迭代对象, 迭代过程中将换行符“\n”作为分隔符 f = open('phonenumber.txt') for line in f: print(line) # 打印每一行的数据 标准输入输出文件: sys.stdin 标准输入文件 Ctrl + D 输入文件结束符 sys.stdout 标准输出文件 sys.stderr 标准错误输出文件 标准文件绝对不能关闭 Linux系统内所有的硬件都会映射成文件 关闭文件会导致错误模块:sys 注: 标准文件不需要打开和关闭就可以使用 示例: import sys sys.stdout.write("我是标准输出\n") sys.stderr.write("我是一个错误\n") import sys s = sys.stdin.read() print("s=", s) print("程序结束") 二进制文件操作: 二进制文件操作模式字符:‘b’ 默认文件中存储的是以字节数据为单位, 通常有人为规定的格式 二进制文件操作需要用字节串进行读写 F.read()/F.readline() F.readlines()返回类型 对于文本操作 F.write() 对于二进制文件也需要用字节串进行操作 F.tell: 作用: 返回当前的读写位置(从文件头以字节为单位) F.seek方法: F.seek(偏移量,whence=相对位置) 偏移量 大于0的数代表向文件尾方向移动的字节数 小于0的数代表向文件头方向移动的字节数 相对位置 0代表从文件头开始偏移 1代表从文件当前位置开始偏移 2代表从文件尾开始偏移 (第一个参数必须是负的) 示例: # 此示例示意用seek改变文件的读写位置,用tell来得到读写位置 f = open('myseek.txt', 'rb') b = f.read(2) # b'AB' 读取出来 print(b) # b'AB # 从头开始向后走5个字节 # f.seek(5, 0) # 从当前位置向后走3个字节 # f.seek(3, 1) # 从文件尾向前数15个字节 f.seek(-15, 2) b = f.read(5) print(b) # b'abcde' f.close() 汉字编码(只讲两种) 国标系列: GB18030(二字节或四字节编码27553个字) GBk(二字节编码21003个字) GB2312(二字节编码6763个字) (Windows 常用) 国际标准: Unicode <---> UTF-8 (Ascii 占1字节 汉字占3字节) (Linux Mac OS X / IOS /Android) python编码字符串: ‘gb18030’ ‘gb2312’ ‘gbk’ ‘utf-8’ ‘ascii’ ....以上字符串用于encide和decode中编码注释: 在Python源文件中的第一行或第二行写入如下内容: # -*- codeing:gbk -*- #设置源文件编码格式为gbk 或 # -*- codeing:utf-8 -*- #设置源文件编码格式为utf-8 作用: 告诉解释执行器此文件的编码是什么 练习: 自己写一个文件 'info.txt' 内部存一些文字信息 如: 张三 20 100 李四 21 96 小王 22 98 写程序将这些数据读取出来,打印到终端上 答案: try: f = open("myfile.txt") L = f.readlines() for x in L: s = x.strip() n, a, s = s.split() print("姓名:", n, "年龄:", int(a), "成绩:", int(s)) except: print("打开文件是失败") 练习: 1. 写程序,循环输入很多个人的姓名,电话号码, 当输入结束后将这些信息存入到文件phonenumber.txt中 (建议先用列表暂存数据,格式自己定义) 2. 写程序,将phonenumber.txt文件中的数据读取出来. 再用以下格式打印出来: 如: 小张 的电话是 13888888888 小李 的电话是 13999999999 练习: 1. 写程序实现复制文件的功能 要求: 1. 要考虑特大文件问题 2. 要关闭文件 3. 要能复制二进制文件 如: 请输入源文件路径名: /home/tarena/xxx.tar.gz 请输入目标文件路径名: ./a.tar.gz 显示: 文件已成功复制 答案: def copy_myfile(): try: ypath = input("please inout raw path:") xpath = input("please inout new path:") f1 = open(xpath, "w+b") f = open(ypath, "r+b") for x in f: f1.write(x) f1.close() f.close() print("File copied") except: print("file not inexeistence") copy_myfile() 2. 修改学生信息管理程序,要求加入两个功能: 9) 保存信息到文件(si.txt) L = [{"name": "Tom", "age": 20, "score": 98}, {"name": "Lin", "age": 21, "score": 99}, {"name": "Garin", "age": 19, "score": 100}] def student_file(L): try: f = open("./si.txt", "x") for x in L: f.write(x["name"]) f.write(" ") f.write(str(x["age"])) f.write(" ") f.write(str(x["score"])) f.write("\n") except FileExistsError: f = open("./si.txt", "a") for x in L: f.write(x["name"]) f.write(" ") f.write(str(x["age"])) f.write(" ") f.write(str(x["score"])) f.write("\n") student_file(L) 10) 从文件中读取数据(si.tx def open_student_file(): f = open("./si.txt") L = [] for line in f.readlines(): s = line.strip() n, a, s = s.split() # 拆成列表 student = {"name": n, "age": a, "score": s} L.append(student) f.close() return L 源码: https://pan.baidu.com/s/1vVuH7OwNdn8vqaBKAivniQ异常还没处理...........

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册