Git 命令
创建出工作目录 workspace
使用git创建本地仓库:git init
git有三个核心概念:
工作目录,暂存区,版本库对文件进行版本控制
git add ./
git commit -m "提交注释"
查看暂存区的状态
git ls-files -s
查看版本库的日志
git log --oneline
查看文件的状态
git status
如果文件被标为红色:当前文件被修改过,但没有被加到暂存区
如果文件被标为绿色:当前文件被修改过,且已经加载到暂存区,且没有被提交!
working tree clean :工作目录中的文件没有任何修改需要操作
7.一个经典的概念!!!
在git中 每一次提交代表都是提交时对暂存区的快照!git log
加不加 --oneline的区别
加--oneline: 看到的是简要信息
不加--oneline:看到的是完整信提交时跳过暂存区 (只对已经提交过的文件有效)
git commit -a -m "提交注释"
删除文件 并将删除操作记录到暂存区
git rm 文件地址
对文件进行重命名 并将重命名操作记录到暂存区
git mv 原文件地址 新文件的地址
配别名
git config --global alias.st status
git config --global alias.ci commit
分支相关操作
新建分支:git branch 分支名
查看分支列表:git branch
切换分支:git checkout 分支名
注意点:分支切换时,务必要保证当前分支是干净的!!
新建分支并切换上去:git checkout -b 分支名
什么时候用储存?
```当要切换分支时,当前分支有未完成的工作!```
储存相关的命令:
储存:git stash
查看存储:git stash list
应用储存:git stash apply 储存名
不加储存名,代表默认应用栈顶储存
删除储存:git stash drop 储存名
不加储存名,代表默认删除栈顶储存git stash pop
:应用栈顶储存并删除它分支合并:
git merge 分支名
删除分支:git branch -d 分支名
查看当前分支相关的提交(日志)git log --oneline
查看整个项目相关的提交(日志)git log --oneline --decorate --graph --all
配别名:
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.lol "log --oneline --decorate --graph --all"
分支冲突(至少有3个分支在进行典型合并时才有可能出现)
解决冲突:修改完冲突文件后,直接暂存提交!
删除已经被合并的分支:git branch -d 分支名
删除未被合并的分支(强制删除):git branch -D 分支名
撤销&重置(后悔药):
撤销对工作目录的修改: git restore 文件路径
撤销对暂存区的修改:git restore --staged 文件路径
重写提交注释:再提交之后 立马执行git commit --amend -m "...."
数据恢复 (版本回退 日志回滚)
git reset --hard 哈希值
哈希值怎么查? git reflog --oneline去查找
创建远程仓库(码云)
创建本地仓库
将本地仓库的内容推送到远程仓库
a. 为远程仓库配置别名!git remote add
别名 远程仓库的地址
b. 如何查看本地仓库对应了哪些远程仓库
git reomte -v
c. 推送本地内容到远程
git push 远程仓库别名 对应的分支名
希望可以直接使用git push来推送内容到远程
本地分支,跟踪分支,远程分支
只有当本地分支与跟踪分支实现1对1关系之后,我们才可以直接使用git push命令来往远程推送内容。
只有当本地分支与跟踪分支实现1对1关系之后,我们才可以使用git status命令来查看预警信息一个本地仓库能不能对应多个远程仓库?
一个本地仓库是可以对应多个远程仓库的,但是一个本地仓库只能跟踪一个远程仓库
如何跟踪
git branch -u 仓库别名/分支名
如何查看跟踪关系
git branch -vv
如何拉取远程的更新
a. 建立了跟踪关系:直接使用git pull
b. 没有建立跟踪关系:git pull
远程仓库的名称 对应的分支名git reset --hard
哈希值哈希值怎么查?
git reflog --oneline
去查找
在gitee中创建仓库后,复制https地址备用
在git命令框中
过期信息
git remote add origin URL地址 //设置提交到仓库的地址
git push origin master //推送到仓库(先提交到本地仓库)
git pull //拉取仓库到本地