git学习笔记
查看git版本
git --version
初始配置
git config --global user.name "hubin.zou" //设置用户名
git config --global user.email hubin.zou@example.com //设置邮箱信息
git config --global --list 显示你的账户邮箱及服务器地址
创建仓库
mkdir /myproject
cd /myproject
git init //初始化仓库
vim readme.md //创建一个文件
git add readme.md //将修改过的某个文件添加到暂存区
git add . //添加所有修改过的文件到暂存区
git commit -m "add readme.md" //将暂存区的更改提交到版本库,并添加提交信息
git status //查看git仓库当前状态
git log //查看提交历史
git diff //查看工作区和暂存区之间的差异
git工作区、暂存区和版本库的概念
工作区是本地计算机的项目目录,文件的修改在工作区中进行,但这些修改还没被记录到版本控制中
暂存区是一个临时存储区域,它包括了即将被提交到版本库中的文件快照。add命令是加入暂存区
版本库包含项目的所有版本历史记录,commit是添加到版本库
忽略文件
创建一个.gitignore的文件,里面填写无需纳入git管理的文件
比方创建了一个test的文件夹,可以填写test/
版本回退
git log --pretty=oneline //每条日志只显示一行
git reset --hard HEAD^ //回退上一个版本,上上个版本写成HEAD^^,往上第100个版本写成HEAD~100
如果想再回到之前最新的那个版本
git reflog //查看历史版本记录
git reset --hard commitid //commitid可以只填前几位
撤销修改
git checkout -- readme.md //将这个文件回到最近一次add或commit的状态,该命令可以丢弃工作区的修改
git reset HEAD readme.md //将暂存区的修改撤销,重新放回工作区
移除文件
git rm readme.md
git commit -m "remove readme.md"
分支管理
git checkout -b dev //创建并切换至一个名为dev的分支
git branch //列出所有分支
git checkout master //切换至master分支
git merge dev //将其他分支合并到当前分支
git branch -d dev //删除分支
标签管理
切换到需要打标签的分支
git tag v1.0 //创建标签
git tag //查看所有标签
默认标签是打在最新提交的commit上,如果需要给之前提交的打标签,找到对应的commit
git log --pretty=oneline --abbrev-commit
git tag v0.9 f52c633
git tag -d v1.0 //删除标签
git push origin v1.0 //推送一个本地标签
git push origin --tags //推送所有的本地标签
git push origin :refs/tags/v1.0 //删除一个远程标签
添加远程库
git remote add origin git@gitlab.com/root/learngit.git //添加远程仓库
git push -u origin master //将本地库的所有内容推送到远程库
后续只要有改动,就可以执行git push origin master推送
git remote //查看当前有哪些远程库,加参数v可以看到详细地址
git remote rm origin //删除远程库(根据名字)
git pull orgin master //拉取远程代码
克隆远程仓库
git clone https://github.com/username/repo.git
License:
CC BY 4.0