Git 学习
快捷命令
初始化:git init
添加文件:git add <file name> 或 git add .
提交文件: git commit -m '<remark>'
推送到仓库:git push origin master
拉取代码:git pull origin master
克隆仓库代码:git clone <url>
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name> 或 git switch <name>
创建+切换分支:git checkout -b <name> 或 git switch -c <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
创建版本库
初始化仓库
git init把文件添加到版本库
git add readme.txt #添加readme文件
git add . #添加所有文件把文件提交到仓库
git commit -m "remark" #remark为提交说明查看提交记录
git log 版本回退,上一个版本就是HEAD^,上上一个版本就是HEAD^^……
git reset --hard HEAD^或指定某条记录,commitId 为提交id,使用 git log 查看
git reset --hard commitId回退之后在查看git log 就看不到最新的版本了,不过只要上面的命令行窗口还没有被关掉,你就可以顺着往上找啊找啊,找到那条记录的commit id 就可以指定回到未来的某个版本。
如果关掉了关掉了命令行窗口使用 git reflog 来查看你的每一次命令。
远程仓库
关联远程库
git remote add origin xxx #xxx为远程仓库地址第一次推送
git push -u origin master由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
后续推送
git push origin master拉取
git pull origin master克隆
git clone xxxx #xxx为远程仓库地址分支管理
创建分支
创建dev分支并切换
git checkout -b dev相当于以下两条命令,先创建,在切换
git branch dev
git checkout dev由于撤销修改使用的命令是 git checkout --<file>,同一个命令两种作用,难免有些迷惑。
最新版本的 Git 提供了新的git switch命令来切换分支:
创建并切换分支
git switch -c dev直接切换分支
git switch dev查看当前分支
git branch合并分支
在 dev 分支下修改了文件并commit,再切换到 master 分支,发现文件并没有改动,是因为提交在 dev 分支上,而当前分支 master 的提交点并没有改变,想要在 master 分支上看到 dev 修改的内容,就需要把 dev 分支合并到 master 分支。
git merge devgit merge 命令用于合并指定分支到当前分支。合并后在查看文件发现和 dev 修改的内容一致。
删除分支
git branch -d dev