之间本地做的笔迹,移动到这里来
添加到缓存
git add test.txt
提交
git commit -m “asd”
分支管理
初步理解为 git 为所有人一起用的的管路。 分支就是可以为自己做一个管理。 当完成所有完成时才合并
创建分支dev
$ git checkout -b dev
-b 表示切换
等于
$ git branch dev
$ git checkout dev
查看当前分支
$ git branch
合并分支
$ git merge dev
–把选择的分支合并到当前分支上
删除分支
$ git branch -d dev
合并分支,(禁用Fast forward)
$ git merge --no-ff -m “merge with no-ff” dev
–no-ff 表示禁用
$ ll
显示当前目录下的资源
$ ls -lA
显示当前目录下的资源(带隐藏资源)
pwd
命令用于显示当前目录
git add 文件
提交到暂存区
git reset --hard HEAD
恢复到指针所指位置
** |less
分屏显示, ctrl + z 退出
mkdir 文件夹名
在当前目录下新建一个文件夹
git init
在当前文件夹下初始化本地库
ll 文件夹名
查看文件夹里的内容, 但是不进入
.git目录是存放本地库相关的内容, 不要去改动
cat aa/aa
查看文件内容,是以只读的方式打开。
cd ~
进入系统用户目录
git status
查找状态, 查看工作区和暂存区状态
git commit -m “这是注释” tang.txt
提交文件
git rm --cached tang.txt
从暂存区移出文件
设置签名
需要一个用户名,和email地址
//作用, 区分不同开发人员的身份
//设置的签名与代码托管中心的账号密码, 没有关系
签名 命令
分两个级别,
项目级别/仓库级别
git config
设置签名
git config user.name tangname
git config user.email 1315269930@qq.com
仅仅在当前项目内生效
系统级别
git config --global
登陆当前操作系统的用户范围
git config --global user.name tangname
git config --global user.email 1315269930@qq.com
级别优先级:
就近原则,项目级别优先于系统用户级别, 二者都有时采用项目级别的签名
如果只有系统用户级别的签名, 就以系统用户级别的签名为准
二者都没有,不允许
查看项目签名在 .git/config 里面
查看系统签名 需要进入系统文件夹 cd ~。 在 .gitconfig
版本的前进和后退
git log 完整显示
显示历史版本
简洁显示
git log --pretty=oneline
git log --oneline
git reflog
三种方式
1.基于索引操作[推荐]
git reset --hard [索引值]
2.使用^符合
$git reset --hard HEAD^
只能往后退
3.使用~符号
$git reset --hard HEAD~3
代表后退三步
只能后退
reset命令的三个参数对比
–soft
仅仅在本地库移动HEAD指针
–mixed
在本地库移动HEAD指针
重置暂存区
–hard
在本地库移动HEAD指针
重置暂存区
重置工作区
多屏显示控制方式
空格向下翻页
b向上翻页
q退出
找回删除的文件
删除文件也要提交,才能记录到本地库
找回删除的文件, 回退到删除之前那个版本就好了
比较文件差异
git diff [文件名]
将工作区中的文件和暂存区进行比较
git diff[本地库中历史版本][文件名]
不带文件名比较多个文件
分支概述
什么是分支
在版本控制中,
git branch -v
显示所有分支
git branch [分支名字]
新建分支
git checkout [分支名字]
切换分支
git branch -d [分支名字]
删除分支
查看分支:git branch
创建分支:git branch 分支名
切换分支:git checkout 分支名
创建+切换分支:git checkout -b 分支名
合并某分支到当前分支:git merge 分支名
合并分支
1.切换到接受修改的分支,(被合并,增加新内容)上
git checkout [分支名]
2.执行merge命令
git merge[有新内容的分支名]
合并冲突
第一步: 编辑文件,删除特殊符号
第二步:把文件修改到满意的程度
第三步 git add [文件名]
第四步 git commit -m 一定不带文件名
保存git远程库地址
起别名
git remote -v
//查看所有别名
git remote add origin https://github.com/[username]/HelloNDK.git
git remote add [别名] [地址]
克隆
git clone [远程地址]
效果:
完整的把远程库下载到本地
创建origin远程地址别名
初始化本地库a
pull 拉取 =fetch(下载到本地) + merge
git fetch [远程库地址别名][远程分支名]
git merge[远程库地址别名][远程分支名]
git pull [远程库地址别名][远程分支名] 等于前两个同时