git 常用操作笔记

初始化本地仓库

git init

 

设置git签名

项目级别设置git签名:
签名保存在当前项目文件夹下的.git文件夹的config文件中
git config user.name 用户名
git config user.email 邮箱

全局设置git签名
签名保存在C:\Users\Administrator.DESKTOP-DD13B5F\.gitconfig
git config --global user.name 用户名
git config --global user.email 邮箱

 

查看状态,提示红色代表文件有改动,提示绿色代表有改动并且已经加入本地暂存区

git status

 

追踪文件添加到暂存区

#追踪所有文本,提交到暂存区
git add.
#追踪某个文件,提交到暂存区
git add 文件名

 

移除提交到暂存区的文件

#移除指定文件
git restore --staged 文件名
#移除所有文件
git restore --staged .

 

在未提交到暂存区之前,撤销修改

#撤销所有文件的修改
git restore .
#撤销某个文件的修改
git restore 文件名

 

将暂存区更改的内容提交到本地仓库

#提交单个文件
git commit -m "这里是本次提交的注释信息" 文件名、
#提交全部
git commit -m "这里是本次提交的注释信息"

 

commit回滚

#HEAD^表示上一个版本
#HEAD 表示当前索引指针,始终指向当前项目索引
#--soft:不删除代码,仅仅撤销commit,不撤销 git add
#--hard:删除工作空间改动代码,撤销commit,撤销git add . 
#--mixed:不删除工作空间改动代码,撤销commit,撤销git add .

#例:
#1.不删除工作空间改动代码,撤销commit,不撤销add,HEAD^表示撤销到上一个版本
git reset --soft HEAD^

#2.
#打印历史版本
git reflog
#撤销到指定版本,Hash值可以通过git log,git reflog获得,git log能查看当前Head指向的版本索引
git reset --hard Hash值

3.
#回退指定步数
#回退三步
git reset --hard HEAD~3
#更多详情:https://blog.csdn.net/w958796636/article/details/53611133

 

显示历史提交

#简洁显示,并缩短hash
git log --oneline

#带回退步骤显示历史
git reflog

#简洁显示,不缩短hash
git log --pretty=oneline

 

差异对比

#git diff命令其实是将工作区的文件和暂存区进行对比
#git diff命令并不会显示新增的文件

#将工作区和暂存区的所有文件比较差异
git diff

#将工作区和暂存区的某个文件比较差异
git diff 文件名

#将工作区和本地库某个文件比较差异
git diff HEAD 文件名

#将工作区和本地库所有文件比较差异
git diff HEAD

#将工作区某个文件和本地库某个版本的某个文件比较差异
git diff 版本Hash 文件名

#将工作区和本地库某个版本的所有文件比较差异
git diff 版本Hash

 

创建分支

git branch 分支名
查看分支

git branch -v 
切换分支

#分支名可以使用tab自动补全

git checkout 分支名

 

合并分支

#首先切换到需要合并到的分支
git checkout master
#查看当前所在分支
git branch -v
#合并分支,将login分支合并到master
git merge login

 

查看远程仓库别名

git remote -v

 

推送到远程仓库

git push 仓库别名 分支名

例
git push origin master
强制推送:
git push -f origin master

注释: origin远程仓库名,master分支名,-f为force,意为:强行、强制。
当本地仓库和远程仓库有冲突时,可以使用这个命令,这个命令的意思就是强制用本地的代码去覆盖掉远程仓库的代码

 

拉取远程仓库代码同步到本地

git pull

 

引用别人项目为自己项目的子模块

git submodule add 别人项目地址 子模块名

例:git submodule add https://github.com/icedland/iced.git iced

 

克隆项目

git clone 项目地址
克隆项目高级用法: 例:git clone
--depth 1 https://github.com/dotnet/runtime.git --branch v5.0.2 解释: --branch v5.0.2 表示克隆标签为 v5.0.2的版本 --depth 1表示克隆最近一次提交

 

posted @ 2020-07-27 09:56  凉游浅笔深画眉  阅读(163)  评论(0编辑  收藏  举报