git常用命令学习

Git 2018-03-21 已阅 2003 次

把当前目录变成Git可以管理的仓库
git init
查看仓库当前的状态
git status
添加新文件
git add <文件名>         // 添加某个新文件(目录)
git add *           // 添加所有新文件(目录)
查看修改的内容
git diff
提交更改(本地仓库)
git commit -m "一些描述"        
更新远程代码到本地仓库
git pull
将本地仓库代码推送到远程仓库
git push      
git push -u origin master // 推送到远程master分支并关联
克隆一个远程仓库到本地
git clone remoteURl
为本地仓库添加远程Git地址
git remote add origin remoteRUL
查看日记
git log
git log --pretty=oneline //    简洁显示
查看你的每一次命令
git reflog
查看工作区和版本库里面最新版本的区别
git diff HEAD -- readme.txt
丢弃工作区的修改(还原文件)
git checkout -- file // (注意是两个-)
添加标签,tagName为标签的名字
git tag -a tagName
从本地版本库删除文件
git rm file
创建分支
git checkout -b dev // 创建dev分支并切换到dev分支
git branch dev         // 创建dev分支
切换分支
git checkout dev:切换到dev分支
列出所有分支
git branch
合并分支
git merge dev // 合并dev分支到当前分支上
版本回退
git reset –hard xxx     // 回退到xxx版本号,xxx为commit,可通过 git log 查看
git reset --hard HEAD^  // 回退到上一个版本
git reset --hard HEAD^^     // 回退到上上一个版本
git reset –hard HEAD~100 // 回退到上100个版本
删除远程tag
git push origin :refs/tags/tagName
git push origin : tagName
推送本地 tag 到远程
git push origin tagName
git push origin tagName:newTagName //newTagName远程仓库tagName的新名称
删除远程branch
git push origin : branchName
推送本地 branch 到远程
git push origin branchName
移除版本控制
git rm -r --cached filePath
// 注意命令不是删除文件,是从版本库中移除(解除git的版本管理)
本地分支强行覆盖远程分支(危险命令)
git push -u origin master --force
使用远程分支强行更新本地代码-放弃本地分支所有修改(危险命令)
git fetch --all
git reset --hard origin/master // 远程分支名称
git fetch
替换分支
git checkout master       // 切换到master分支
git reset --hard dev      // 将本地的 master 重置成 dev
git push origin master --force // 推送master到远程
创建分支
git branch <new-branch-name> <tag-name> // 通过tag创建新的分支
从远程拉取一个分支到本地
git checkout -b localBranchName origin/remoteBranchName

本文由 Harvey 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

还不快抢沙发

添加新评论