Git

179 阅读2分钟

配置user信息

git config --global user.name 'your_name'

git config --global user.emain 'your_emain@domain.com'

config的三个作用域

  • git config --local  (local:只对某个仓库有效)
  • git config --global (global:对当前用户所有仓库有效)
  • git config --system(system:对系统所有登录的用户有效)

config的配置 

  • git config --list --local
  • git config --list --global
  • git config --list --system

建Git仓库

1.把已有的项目代码纳入Git管理

  1. cd 项目代码所在的文件夹
  2. git itit 

2.新建项目直接用Git管理

  1. cd 某个文件件
  2. git init your_project
  3. cd init your_project

Git命令

文件重命名

git mv  original_file_name  now_file_name   (会直接放入暂存区不需要手动add)

删除分支

git branch -d branchname (会在删除前检查merge状态)

git branch -D branchname (是git branch --delete --force的简写,它会直接删除)

git push origin --delete branchname (删除远程分支)

修改commit的message

git commit  --amend(删除最新一次commit的message)

git rebase i commit_id

比较差异

git diff --cached (比较暂存区和HEAD所含文件的差异)

git diff (默认比较的是暂存区和工作区差异)

git diff branch_a branch_b(比较两个分支之间文件的差异)

git diff commit_id commit_id (比较两个commit之间文件的差异)

恢复 

git reset HEAD       git reset HEAD -- file_name(让暂存区恢复和HEAD一样)

git checkout   git checkout file_name (让工作区文件恢复)

git reset --hard commit_id (消除最近几次commit提交)

删除文件

git rm file_name

保存和修改

git stash(保存当前工作进度,将工作区和暂存区恢复到修改之前)

git stash save message(作用同上,message为此次进度保存的说明)

git stash list(显示保存的工作进度列表,编号越小代表保存进度的时间越近)

git stash apply stash@{num}  (恢复工作进度到工作区且该工作进度可重复恢复,此命令的stash@{num}是可选项,在多个工作进度中可以选择恢复,不带此项则默认恢复最近的一次进度相当于git stash apply stash@{0}

git stash pop (这个命令和 stash apply 非常相似,但它会在应用到仓库后删除这个 stash)

git stash drop stash@{num}  删除一条保存的工作进度,此命令的stash@{num}是可选项,在多个工作进度中可以选择删除,不带此项则默认删除最近的一次进度相当于git stash drop stash@{0}

git stash clear (删除所有保存的工作进度)