git 基础操作

1、配置个人信息

git config --global user.name "username"
git config --global user.email "username@qq.com"

如何记住账号和密码

git config --global credential.helper store

#下一次登录的时候再输入一次,就记住了

 

2、基础操作

从git地址克隆

# 克隆master
git clone http://xxxxx

# 克隆指定分支
git clone -b develop http//xxxx

查看本地git状态

git status

提交到暂存区(添加跟踪)

git add .

提交到本地仓库

git commit -m "修改了什么"

推送到远程仓库

git push origin develop

拉取远程分支,并合并至当前目录(分支)

git pull origin master

 

3、分支相关

创建一个develop分支并切换

git checkout -b develop

切换分支

git checkout develop

合并分支(把开发分支合并至当前分支)

git merge develop

删除分支

#删除本地分支:
git branch -d dev20181018
#删除远程分支:
git push origin --delete dev20181018

 

4、冲突、撤销(危险操作)

回退远程分支

#首先,克隆远程仓库
git pull origin develop

#检查提交历史,找到要回退到的提交的哈希值
git log

#将本地分支回退到指定的版本
git reset --hard <commit-hash>

#将回退后的本地分支强制推送到远程仓库:
git push -f origin <branch-name>

发生冲突时,放弃本地,以远程为准

git fetch --all origin/develop
git reset --hard origin/develop
git pull origin develop

撤销工作目录的修改(会丢失当次修改)

git checkout -- xxx.txt

------
可以开分支保存当前的修改

git restore .

撤销add

git restore --staged .

撤销commit

git restore -s 91410eb9 READEME.md #恢复至指定commit版本
git reset --hard commit_id
git reset --soft HEAD^ #恢复至上一个版本

撤销远程push

先本地回退,然后强制提交
git push origin master --force

删除已经被追踪过的文件(远程仓库中对应的文件或文件夹会被删除),但是保留工作目录(.project等)

git rm --cached xxx.txt
-r 删除目录

 

5、比较差异

比较工作目录与暂存区的差异(add与没有add之间)

git diff

查看当前没有add和commit的改动

git diff HEAD fileName

查看任意两个版本之间的改动:

git diff 版本号码1 版本号码2

查看已经add 没有commit 的改动

git diff --cached

 

6、查看历史

查看最近commit记录

git log --oneline # 简化版显示
git log

查看最近commit记录(显示每次提交带来的变化)

git log -p