git 学习笔记

一、git基本操作

git init 初始化工程
git clone url 克隆工程

add && commit && push && pull && status

git add . (git add -A)添加全部修改文件,包括untracked的文件
git add -u 添加修改的文件,不包括新建的文件

git commit -m '提交信息' 提交已经添加缓存区的文件
git commit -a -m '提交信息' 提交修改过的文件(包括未添加到缓存区的)
git push -u origin master 加了参数-u后,以后即可直接用git push 代替git push origin master
git push -f 强制提交(适用于旧版本覆盖新版本)

git pull 拉取最新代码

git status 查看状态(commit前的状态)
git status -s 查看简洁版

git diff 查看修改内容

远端 remote

git remote -v 查看远端地址
git remote set-url origin [url] 修改远端地址
git remote -v 查看远端链接
git remote rm origin 删除远端链接
git remote add origin url 添加远端链接

log

git log 查看历史记录
git log --pretty=oneline 查看历史记录(commit id 和 commit 信息)
git log --oneline 简洁版
git log -p 文件名 查看指定文件的提交历史
git blame 文件名 以列表的形式查看指定文件的提交历史

checkout

git branch (分知名) 创建分支
git checkout (分知名) 切换分支
git branch -d (分支名) 删除分支

tag

git tag -a v1.0 打上v1.0标签
git tag 查看标签
git tag -d v1.0 删除v1.0标签
git push --tags 上传所有的标签

编辑界面

cat 查看文件内容
git vim 编辑器基本操作
按 a/i/o进入编辑模式
按ECS进入操作模式
在操作模式下,:wq保存退出,:q!不保存退出

撤销

撤销文件的修改

git checkout head xx文件 撤销xx文件的修改

撤销add

git reset HEAD 撤销全部的add
git reset HEAD xx文件 撤销xx文件add

撤销commit

git commit --amend 修改最后一次提交(补提交或者修改message的情况下使用)
git reset [--mixed, --soft, --hard] [head^, head~1, head~2] 回退版本
--mixed:默认参数,git reset --mixed head^ 和 git reset head^是一样的效果,撤销commit和add,不删除工作区的代码
--soft:撤销commit,不撤销add,不删除工作区代码
--hard:撤销commit和add,删除工作区代码
head^:回退到上个版本
head~1, head~2:回退到上一个版本,回退到上两个版本
git reset --hard commit_id 回退到指定的版本
git reflog 查看历史命令,可以回到未来的版本

生成ssh key

1.配置

git config --global  user.name "这里换上你的用户名"
git config --global user.email "这里换上你的邮箱"

2.生成秘钥

ssh-keygen -t rsa -C "这里换上你的邮箱"

来自 https://blog.csdn.net/lqlqlq007/article/details/78983879

开发流程

1.取最新的master代码,在master分支上 git pull

2.创建个人分支 git branch branchName

3.切换至个人分支 git checkout branchName

4.进行开发

5.进行提交 git add .  和 git commit -m 'message'

6.切换到master分支,取最新代码 git pull

7.切回个人分支,rebase并解决冲突: git rebase master

8.push到个人分支  git push origin branchName

9.创建pull request请求  

10.合并到master分支

二、git常用命令
1)mkdir test 创建文件夹test

2)rm -r test 删除文件夹test

3)rm -rf .git  移除之前提交的git

4)pwd 查看当前路径

5)touch index.html 创建index.html

6)rm index.html 删除index.html

7)ls 列出文件

8)mv index.html test.html 将index.html 文件重命名为 test.html

9)vim index.js 进入编辑index.js文件

10)shift + ; + wq 保存退出

三、git快捷键

1)ctrl + u 删除光标前字符

2)ctrl + k 删除光标后的字符

3)ctrl + w 删除光标前一个单词(相连在一起的)

4)ctrl + a 光标移到最前面

5)ctrl + e 光标移到最后面

6)ctrl + r 查找之前执行过的命令

7)ctrl + b 光标向前移一位

8)ctrl + f 光标向后移一位

9)ctrl + p 上一条命令

10)ctrl + n 下一条命令

11)ctrl + h 删除光标前一个字符

12)ctrl + d 删除光标后一个字符

13)ctrl + l 清屏

14)reset 清屏

15)alt + b 移至前一个单词前面

16)alt + f 移至后一个单词后面

17)alt + d 删除光标后一个单词

18)shift + PageUp 向上翻页

19)shift + PageDown 向下翻页

参考资料:
https://www.w3cschool.cn/git/git-tutorial.html
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

原文地址:https://www.cnblogs.com/bear-blogs/p/9692255.html