Git
Git环境
git config --global user.name "your name"
git config --global user.email "email@example.com"
基本命令介绍
创建本地仓库
创建.git
目录作为本地仓库
git init
查看当前git
仓库的状态
git status #1. 可以查看当前分支 2. 查看文件追踪情况
克隆项目
git clone 远程仓库地址
更新项目
git fetch 远程仓库 # 抓取:只获取但不合并远端分支,后面需要我们手动合并才能提交
git pull 远程仓库 #抓取(fetch) + 合并
追踪和提交
将文件添加到暂存区,使之变为追踪状态
git add hello.txt #也可以 add . 一次性添加目录下所有的
git add . #追踪当前目录所有文件
提交当前暂存区的所有内容
git commit -m 提交记录的名字
查看日志
查看所有的提交记录:
git log
# 以图结构显示
git log --graph
查看最近一次变更的详细内容:
git show 提交记录的名字
创建一个.gitignore
文件来确定一个文件忽略列表
# 忽略所有以txt结尾的文件
*.txt
# 虽然上面排除了所有txt结尾的文件,但是这个不排除
!666.txt
# 也可以直接指定一个文件夹,文件夹下的所有文件将全部忽略
test/
# 目录中所有以txt结尾的文件,但不包括子目录
xxx/*.txt
# 目录中所有以txt结尾的文件,包括子目录
xxx/**/*.txt
回滚
回退到过去的版本,日志也会随之回滚。
git reset --hard 提交记录的名字
# 回滚之后查看回滚前的记录
git reflog
分支
分支基操
# 查看所有分支
git branch
# 创建分支
git branch 分支名
# 删除分支
git branch -d 分支名
# 切换分支
git checkout 分支名
合并分支
以自己的分支为基础将更新的内容进行合并
# 合并分支
git merge 需要合并的分支名
# 查看冲突
git diff
变基分支
以某分支为基础进行合并,称之为变基,同步了此前某分支的全部提交。
git rebase 某分支
远程仓库
远程账户登记和推送
# 添加远程仓库地址,添加了但是没有连接
git remote add 名称(任意) 远程仓库地址
# 推送提交至远程仓库
git push -u 远程仓库名称 本地分支名称[:远端分支名称]# 若本地分支和远端分支名称一致则不需要输入远端分支名称
SSH链接和推送
# 在本地生成一个SSH的rsa公钥
ssh-keygen -t rsa
将路径名为C:\Users\Administrator\.ssh\id_rsa.pub
文件里的内容复制到GitLab
或者GitHub
中,可以使用SSH推送。