我自己的git使用

1.在github上添加一个库
在这里插入图片描述
2.添加完成后会生成一个地址,使用cd 命令进入你电脑想保存的路径
git clone url
git add 单个文件 或者 git add . (注:别忘记后面的.,此操作是把Test文件夹下面的文件都添加进来)
在这里插入图片描述
3.git commit -m “提交信息” (注:“提交信息”里面换成你需要,如“first commit”)
在这里插入图片描述
4.git push -u origin master (注:此操作目的是把本地仓库push到github上面,此步骤需要你输入帐号和密码)
5.这时候重新刷新下你的 github 发现源码 已经被提交上来了

如果想直接下载别人的仓库 直接运行
1.git clone https://github.com/testjie/ljtest202001

如果有改动的话:
2.git pull

在这里插入图片描述

git

git ssh配置
windows下的配置:
下载git bash
ssh-keygen -t rsa -C "github邮箱地址:”
cd ssh
把rsa.pub 复制内容到github的settings的ssh里面
git@github.com:a376230095/aaa.git
linux下的配置:
ssh-keygen -t rsa -C "github邮箱地址:”
cd ssh
把rsa.pub 复制内容到github的settings的ssh里面

git前置条件的配置
配置提交用户的名称
git config --global user.name “github用户名”
git config --global user.email "github邮箱地址”
如果没有git项目
git clone git@github.com:a376230095/aaa.git
会生成aaa的git项目,并自动同步到远程仓库
如果是自己新建一个git项目
git init 会在当前的目录生成git项目
在github中新建一个空的项目,一定要是空的,获取这个项目的ssh的链接
git remote add origin git@github.com:a376230095/aaa.git
git push -u origin master 这里就是把git的分支提交到master里面,才算是真正的同步

git工作原理
工作区workspace
项目文件所在的文件夹里,统称为工作区。
暂存区stage
用来保存要提交到本地版本库的所有文件,相当于一个缓存区。
版本库repository
—个简单的数据库,包含所有用来维护和管理的项目的修订版本和历史的信息。
分为两部分:
本地仓库local
远程仓库remote
不同分区的工作与命令的结合
git add会把工作区的文件放到暂存区
git commit 会把暂存区的文件放到本地版本库
git push 把本地版本库放到远程版本库
git pull会把远程仓库放到工作区中
git clone/fetch会把远程仓库放到本地仓库
git checkout可以把本地仓库的内容放到工作区中

开发测试的流程:
master作为主分支,一般都是要经过测试通过才拉到master分支上
开发的时候先把项目拉到develop分支上,每一个开发对各自负责的功能,再把分支弄到各自的feature分支上
代码管理者把开发者开发完的分支弄到develop上,等测试把代码的功能测试完成后,就会弄到release分支上
大家一起评估这个release版本是否可以上线,可以就弄到master分支上

git clone和git pull的区别
clone是本地没有repository时,将远程repository整个下载过来。
pull是本地有repository时,将远程repository里新的commit数据(如有的话)下载过来,并且与本地代码merge。相当于git fetch和git merge

git命令解析
git init 创建一个新的git项目
git add 添加文件到暂存区
在这里插入图片描述

git add . 添加当前路径的所有文件
git add -A 添加所有目录的文件
git staus 查看工作区和暂存区等的状态
在这里插入图片描述

git commit -m ‘提交的原因’ 会把暂存区的文件放到本地版本库
git log 查看历史的提交记录,但如果当前版本比较久,无法查看后面版本的提交记录
git reflog 查看现在,未来,以前的HEAD信息
git clone url 克隆仓库,包括.git
url格式:用户名@服务器地址:仓库地址
git clone git@github.com:a376230095/aaa.git
git pull 相当于git fetch和git merge。其意思是先从远程下载git项目里的文件,然后将文件与本地的分支进行merge。
git
git remote add [remote name] [url] 本地仓库和远程仓库建立联系
git remote -v 查看远程分支
git remote rm 删除远程分支
git remote add origin git@github.com:a376230095/aaa.git
git push 推送本地仓库的内容到远程仓库中
首次push的时候git push -u origin master,下次推动直接git push即可
git reset [–soft] [–mixed] [–hard] commit的版本 版本回退
–mixed:默认项。修改版本库,修改暂存区,保留工作区。会清空暂存区的修改。
–soft:修改版本库,保留暂存区,保留工作区。只需要commit即可恢复版本回退前的状态。
–hard:修改版本库,修改暂存区,修改工作区。回退最彻底的一种。
例子:
git reset --hard HEAD^ 回到上一个版本
git reset --hard HEAD^^^ 回到上上上个版本
git reset --hard 13d458 回到指定commit的版本
git reset --hard HEAD@{4} 回到指定的第4个版本
git diff 对比文件或者版本信息
在这里插入图片描述

git diff a.txt 对比工作区的内容和本地仓库有什么不同
比如当前工作区的a.txt 加了一行tong的代码,就会有个+号
git diff “HEAD” “HEAD^” 对比当前版本和上一个版本有什么不同
比如说当前版本比上一个版本多了一个a.txt,就会显示- a.txt
git checkout 可以把仓库的文件重置到工作区中,也可以切换分支
git checkout 1.txt 把仓库的1.txt文件放到工作区
git checkout 分支名 切换当前分支到指定的分支名上
git checkout -b 分支名 创建指定分支,同时切换当前分支到分支上,好像比较常用
git branch 分支管理,打印当前的分支
git branch -r 打印远程仓库的分支
git branch -a 打印全部分支
git branch 分支名 创建分支,但分支还是没有切换过去
git branch -d 分支名 删除分支,如果分支没有merge提交到其他分支,就不给删除
git branch -m oldName newName 修改分支名
git merge 分支名 将该分支合并到当前分支上
快速合并分支:master和其他分支或者其他和其他分支,在代码上没有冲突,可以快速合并
非快速合并分支:分支之间的代码有冲突,需要人工判断合并之后有没有问题

.gitignore的使用
作用:把不需要git管理的文件都放在.gitgnore,确保我们的git都是有用的东西
使用.gitignore:
创建.gitignore文件
把不要的文件放入.gitgnore文件夹中(支持通配符)

*.iml
/.iead
.git

几种git的场景
当删除文件的时候,还没commit的恢复方法
git rm 文件或者git add可以保存这次修改,然后git commit -m 即可同步到仓库了
git checkout – 文件 ,可以把文件恢复
当文件删除了,也commit,恢复文件的方法
git log去找到文件还在的那个版本
git reset --hard 前六位的commit代码标识,或者git reset --hard HEAD^ 表示回到上一个版本,^^表示回到上上个版本,以此类推
推送远程分支
git checkout -b localbranch 切换创建分支
git branch 查看分支是不是创建并切换好了
git push origin localbranch:localbranch 推送本地分支到远程分支
git push origin :localbranch 删除远程分支
当通过git pull 拉取代码,本子自己提交commit代码,然后没有及时git push,不给git push的方法
git pull origin master 再一次拉取代码
git push -u origin master 再推送一下代码
这样就相当于远程推送了我们最新的提交,工作区也是最新的状态

pychram的git学习
以下的操作再pycharm的cmd操作
注:空文件夹git不会上传的
加入.gitgnore可以忽略一些文件上传到github上
在github注册一个账号
在项目的cmd中git init 就会创建一个git项目了
git status就可以查看哪些文件没有被add进去
git add abc.py 就可以add到本地的git了,但是还没完成加进去
git commit -m “add abc.py” 表示完全添加到项目里面去了,而且写了备注是add abc.py
unable to auto-detect email address出现这个错误,执行以下的命令
git config --global user.email “376230095@qq.com”
git config --global user.name “tongtong”
git remote add origin https://github.com/a376230095/appium_python_pytest.git 表示添加到GitHub里面的appium_python_pytest的repo,通常是.git,这个时候还没有真正同步到远程
git push -u origin master 这里就是把git的分支提交到master里面,才算是真正的同步
如果没有登录,pycharm会让你登录GitHub的
当你登录之后,可能还会提示你再输入GitHub的账号密码,再cmd中输入

git问题集
warning: LF will be replaced by CRLF in test1.txt. The file will have its original line endings in working directory
原因:使用了windows来编辑,里面的换行符和git本身使用的linux换行符不一样,会出现一些问题
解决:
可以不去解决,通常不建议在windows上修改代码,或者使用pycharm等修改代码
git config --global core.autocrlf true,但好像不太行,不管了 这个可以让windows的换行符自动变更为linux的
pycharm的github什么都配置好了,为什么
git remote -v 查看远程仓库名称
如果看到是origin https的,需要取消
git remote rm origin
git remote add origin git@github.com:你的用户名/你的仓库名.git

撤销修改:

假如已经将文件add到了临时区,执行git reset HEAD 撤销修改,
撤销修改以后这时候文件只从临时区删除了,我们还要对文件进行工作区修改,使用git checkout -xxx 这样就能把已经add到临时区的文件撤销修改了
在这里插入图片描述
在这里插入图片描述

忽略虚拟环境文件上传

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值