git的学习,git版本工具采用的是分布式管理,而非集中式管理。
git的概念理解:
工作区 working
暂存区 index
仓库 repository仓库
值得注意的是:
工作区、暂存区、仓库都是你的本机操作,而非远程仓库
提交代码需要提交两次,第一次是由工作区提交到暂存区
第二次是由工作区提交到仓库
安装完成后设置用户和可用的邮箱,不可以使用无效的
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
建议在windows环境下,有中文的文件夹
编辑文件一定是采用notepad++软件进行编辑,并且设置为UTF-8 without BOM
初始化仓库命令
git init
提交代码
使用命令git add <file>,注意,可反复多次使用,添加多个文件;
使用命令git commit -m <message>,完成。
查看状态
git status
查看修改了什么
git diff
要随时掌握工作区的状态,使用git status命令。
如果git status告诉你有文件被修改过,用git diff可以查看修改内容。
查看日志
git log
查看日志简洁界面命令
git log --pretty=oneline
推送到远程仓库命令
git push origin HEAD --force
查看命令操作的历史
git reflog
查看分支命令
git branch
创建分支
git branch name
切换分支
git checkout name
创建并切换至该分支
git checkout -b name
合并name分支到当前分支
git merge name
修改分支名称
本地:
修改当前分支:git branch -m newBranchName
修改其他分支:git branch -m oldBranchName newBranchName
远程:
先删除远程分支,然后重命名本地分支,再重新提交一个远程分支
删除分支
本地:git branch -d branchName
远程:git push origin :branchName
拉取远程分支:git fetch origin branchName
仅仅删除暂存区的文件,工作区的文件依然存在
git rm --cache文件名
删除暂存区和工作区的文件
git rm -f 文件名
文件已经提交到版本库中了,危险操作,请谨慎使用以下三个命令
如果只是撤销已提交的版本库,不做任何修改,则使用此命令,注意:此命令不会修改暂存区和工作区
//仅仅只是撤销已提交的版本库,不会修改暂存区和工作区
git reset --soft 版本库ID
如果你是在提交了后,对工作区的代码做了修改,并且想保留这些修改,
那么可以使用git reset --mixed 版本库ID,注意这个版本库ID应该不是你刚刚提交的版本库ID,
而是刚刚提交版本库的上一个版本库
//仅仅只是撤销已提交的版本库和暂存区,不会修改工作区
git reset --mixed 版本库ID
如果不想保留这些修改,可以直接使用彻底的恢复命令,git reset --hard 版本库ID。
//彻底将工作区、暂存区和版本库记录恢复到指定的版本库
git reset --hard 版本库ID
本地代码提交到远程仓库
git push origin master
终止合并
git merge --abort
idea更新git分支目录
git remote update origin --prune