赞
踩
git
最小配置global
进行全局配置# 添加用户名 和 email
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
如果没有添加邮箱和用户名, 后面的操作都是不能够顺利进行的。
这个用户名和邮箱的目的是为了让后续接管项目的人可以找到是谁开发的,并且可以给你发送邮件,所以这个email随便填写,只要能收到邮件就行。
local
针对仓库进行配置# 添加用户名 和 email
git config --local user.name "Your Name"
git config --local user.email "email@example.com"
local 是针对git仓库进行配置,如果当前没有仓库,会报错
local 配置会覆盖global配置(如果配置了local)
# 查看git的基本配置
git config --list [--global/local]
创建git
仓库l创建git 仓库有两种场景
cd {项目代码所在的文件夹}
git init
cd 某个文件夹
git init your_project # 在当前路径下创建和项目名称相同的文件夹
cd your_project
初始化仓库之后,只是在本地创建了一个可以通过git管理的仓库,但是仓库里面是没有内容的,需要手动添加内容到仓库中去。添加文件到仓库分两步,第一步是add
命令,第二步是commit
。
git add readme.txt # 添加单个文件到仓库
git add -u # -u 表示update ,只提交更新过的所有文件.
git add . # 添加当前所有文件到仓库
如果执行之后,没有任何提示信息,表示已经成功添加到了仓库。
git commit -m "备注信息"
使用commit 确认提交,这里和数据库中的操作差不多 。
这里的备注信息是一定要有的,如果不加备注信息,会弹出一个vim窗口,需要在vim窗口里面提交备注信息。
建议每一次修改之后 先执行 git add 再执行 git commit
状态
git状态
查看工作目录
和暂存区
的区别(比较常用)
git status
日志
git log
git log --[pretty=]online # 精简显示输出信息,忽略用户名等
git log -n2 --oneline # 只显示最近的2个commit
git log [--oneline] [--all] [--n4] [--graph] # --all 表示所有commit版本信息 --n4表示从这些中只取4个 --graph 以tree方式呈现它们的父子关系
git log [--oneline] [--n4] [branch] # 只显示branch分支的最近4个commit 版本
打印一些commit过的信息
git log
: git log documentation
将项目加入到git仓库中之后,可以通过git diff
查看修改的哪些内容。(与上一次git commit
比较)
git diff # 查看不同版本之间文件的差异
每次修改完project ,我们需要commit到git 仓库中,每一次commit可以看作是一个快照;可以通过git reset 回退到commit的任何一个版本。
git reset --hard HEAD^ # ^ :上一个版本 ^^ :上上一个版本 ^^^ :上上上一个版本
git reset --hard commit-id # commit-id 可以通过查看日志得到 git log
这个版本回退还是比较危险的,因为它会覆盖你的暂存区和工作目录所有文件
这里的撤销修改指的是 丢弃工作区的修改
比如我想放弃再vscode中修改了的readme.md ,可以通过如下指令快速解决
git checkout -- filename
git checkout -- readme.txt
让这个文件回到最近一次 git commit 或 git add 时的状态。
git rm text.txt # 只删除暂存区中的文件
mv README.md readme # 将工作目录中的文件替换
git rm README.md # 从暂存区删除旧文件
git add readme # 修改后的文件提交到暂存区
git mv README.md readme
git branch # 查看分支
git branch -av # 查看分支及commit的message
git branch <name> # 创建分支
git checktout <name> # 切换分支
git checkout -b <name> # 创建+切换分支
git merge <name> # 将<name>分支合并到当前分支
git branch -d <name> # 删除分支 -d 或许会删除不掉,要求改为-D 删除
git commit --amend # 修改最近commit的分支的message
git rebase -i
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。