Git学习笔记

记录于关于Git学习,进行一些笔记总结。

一、准备工作

需要设置用户名(username)和用户邮箱(useremail),告诉其他小伙伴,是谁上传了这些代码,起一个表明身份的作用。

# 配置用户名
	git config --global user.name [XXXXX]
# 配置邮箱
	git config --global user.email [XXXXXX]
# 查看设置信息
    git config --list

切记!!! 必须按照规范输入命令,不可擅自改变大小写,否则无法实现正常效果。

 二、Git相关知识

1、Git 分为 四大部分:

个人区、缓存区、本地仓库、远程仓库

 个人无法直接与远程仓库进行对接,极大可能保护了由于个人人原因造成远程仓库的代码出现问题,使用中间库——本地仓库。

个人先将代码上传到缓存区,在由缓存区上传到本地仓库,最好通过本地仓库推送到远程仓库。

 当然,不可缺少的还有".gitignore"文件,这是告诉Git 要忽略项目中的哪些文件或文件夹

 想过滤什么都可以告诉该文件,上传Git时会基于该文件进行Git上传代码。

2、分支? 

一般情况下,我们都是拉取master后,想要修改功能或者添加功能,都是创建分支,在分支里修改不影响master,如果修改错了代码或者误删之类的,在从master上拉取一份就可以了。

三、标准流程 

1、创建Git 仓库

会生成.git 的隐藏文件。(在项目终端窗口中输入!!!)

# 1、初始化仓库,让git接管你的项目
git init

2、补充".gitignore"文件

忽略文件,可自定义书写

这是上传不可缺少的一个文件。可以从其他项目直接复制使用。当然,具体情况具体分析。

3、上传到缓存区

# 3、将当前路径下的所有变更提交到暂存区
git add .	//添加当前目录的所有文件到暂存区
git add [dir]	//添加指定目录到暂存区,包括子目录
git add [file1]	//添加指定文件到暂存区
git add Hello.java  //把HelloWorld.java文件添加到暂存区去

 4、创建远程仓库

在相关托管平台上进行创建远程仓库,并记录相关HTTPS, 

仓库链接为:创建远程仓库链接的HTTPS 或 SSH,二者均可

二者 都是 传输协议

SSH:git@gitee.com:用户名/仓库.git

HTTPS:https://gitee.com/black-sheepmax/lalallalal.git用户名/仓库.githttps://gitee.com/black-sheepmax/lalallalal.git

git remote add origin 仓库链接

// origin 为远程仓库别名  后面http 为远程仓库地址

5、上传本地仓库


git commit -m [message] //提交暂存区到仓库区,message为说明信息

git commit --amend      //重新书写上次提交的说明信息

git commit [file1] -m [message] //提交暂存区的指定文件到本地仓库

git commit --amend -m [message] //使用一次新的commit,替代上一次提交

6、上传到远程仓库

-u 是:第一次推送master分支时,加上了-u参数,把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。


git push origin master //将本地分支的更新全部推送到远程仓库master分支。

git push -u origin "master"

git push origin -d <branchname>   //删除远程branchname分支

git push --tags //推送所有标签

四、其他命令

1、克隆项目:

git clone 远程仓库链接
//仅限HTTPS协议 克隆
//SSH协议需要设置 密钥 和公钥,比较麻烦

2、创建、查看、删除新的分支

git checkout -b dev   //创建开发分支dev,并切换到该分支下

git checkout master   //切换 master分支

git branch -a         //查看全部当前分支(本地+远程)

git branch XXXX       //新建一个分支,但是仍停留在原来分支

git branch -D XXX   //删除本地branchname分支

git push origin --delete 远程分支名    //删除远程分支名

3、查看提交历史记录

git log               //查看提交历史

git reflog            //查看当前分支 的 全部操作 任何

git log --oneline     //以精简模式显示查看提交历史

4、回滚代码——最重要

--soft 、--mixed、--hard是三个恢复等级。


git reset HEAD --file     //回退暂存区里的某个文件,回退到当前版本工作区状态
git reset –-soft          //目标版本号 可以把版本库上的提交回退到暂存区,修改记录保留
git reset –-mixed         //目标版本号 可以把版本库上的提交回退到工作区,修改记录保留
git reset –-hard          //可以把版本库上的提交彻底回退,修改的记录全部revert。

使用--soft就仅仅将头指针恢复,已经add的暂存区以及工作空间的所有东西都不变。
如果使用--mixed,就将头恢复掉,已经add的暂存区也会丢失掉,工作空间的代码什么的是不变的。
如果使用--hard,那么一切就全都恢复了,头变,aad的暂存区消失,代码什么的也恢复到以前状态。

git reset的作用是修改HEAD的位置,即将HEAD指向的位置改变为之前存在的某个版本

Git的所有提交,会连成一条时间轴线,这就是分支。如果当前分支是master,HEAD指针一般指向当前分支,如下:

5、合并分支

发版需要把代码合到主干master分支 需要:

//切换到 当前master分支上
git checkout master

//在当前分支上合并master分支过来
git merge dev            

6、合并后的冲突

  • 查看冲突文件内容

git merge master
  • 确定冲突内容保留哪些部分,修改文件

  • 重新提交,done

7、查看文件状态

忘记是否把代码文件添加到暂存区或者是否提交到本地仓库,都可以用git status看看哦~

git status  查看当前工作区暂存区变动

git status  --show-stash 查询工作区中是否有stash(暂存的文件)

8、看指定文件的更改历史和更改人

git blame 指定文件带后缀

  • 17
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值