个人博客| 学习交流| 日志心态

0%

git笔记

创建仓库和提交

git init 把这个目录变成git可以管理的目录
git add 添加到仓库
git commit -m 提交到仓库
git status 查看仓库当前的状态
git diff 查看文件的变化

版本回退

注意:git之所以厉害是因为历史可回退和分支编辑,所以学好分支和版本回退是重中之重

git log 查看提交日志
git reset --hard HEAD^  回退到上一个版本(上上个版本HEAD^^)
git reset --hard "commit id"    可以穿梭回去
git checkout -- "file"  撤销修改/返回上次修改的状态add之前的状态
git rm "file"   删除一个文件
git push -u origin master 第一次推送
git push 推送
git remote add origin "仓库地址"  关联远程仓库
git clone 克隆一个项目

分支操作

注意:git之所以厉害是因为历史可回退和分支编辑,所以学好分支和版本回退是重中之重

git checout -b "新分支" 创建并切换到新分支
git branch  查看当前分支
git checkout "分支名称" 切换分支
git merge "指定分支"    合并指定分支到当前分支
git branch -d "分支名称"    删除分支
git branch origin --delete dev
git push origin :dev
git log --graph 查看分支合并图

更新的两种方法

git pull 直接拉取远程分支,简单但是把过程细节都隐藏了,一旦有问题很难找出错的地方
git fetch 从另外一个仓库下载对象和引用
git merge 合并

远程操作

git clone [url] 克隆/下载
git clone -b <branch> [url] 下载一个分支
git branch --set-upstream-to=origin/develop 关联一个远程分支develop
git remote -v 查看远程仓库信息  
git remote add [name] [url] 添加远程仓库  
git remote remove [name] 删除远程仓库name
git fetch [name] 从name仓库更新同步代码
git fetch -all 更新所有
git merage --no-ff [name]/master 合并到本地代码
git pull origin master 更新并合并自己远程仓库的代码
git push -u 向自己的远程仓库推送刚才同步源仓库后的代码

标签操作

git tag <tagname>   新建一个标签
git tag -a <tanname> -m "aabbbcc...."   可以指定标签信息
git tag 可以查看所有标签
git push orgin <tagname> 推送一个本地标签
git push orgin --tags 推送全部未推送过的标签
git tag -d <tagname> 删除一个本地标签
git push orgin :refs/tags/<tagname> 删除一个远程标签
注意:删除文件需在执行一次 git rm 不然可能会有奇怪的情况