Git很实用的命令

463 阅读4分钟
  • 正确的提交方式

命令说明
git add .添加当前目录下的所有更改或者添加的文件到缓存区
git status查看是否有修改
git status -s查看修改列表
git commit -m "First commit"提交到本地库
git fetch origin master:temp下载远端分支代码到temp
git diff temp比较temp分支和本地代码
git merge temp合并temp到本地master
git branch -d temp删除temp分
git push origin master提交到远程仓库
  • 更新本地代码库(从远端拉取最新的代码)

命令说明
git fetch origin master:temp下载远端分支代码到temp
git diff temp比较temp分支和本地代码
git merge temp合并temp到本地master
git branch -d temp删除temp分
  • 单纯的提交代码

命令说明
git add .添加当前目录下的所有更改或者添加的文件到缓存区
git status查看是否有修改
git status -s查看修改列表
git commit -m "First commit"提交到本地库
git push origin master提交到远程仓库
  • 其他一览表

命令说明
git --version查看Git版本
git initGit初始化
git config --global user.name "Mr.Zhou"配置个人的用户名称
git config --global user.email "123456@qq.com"配置个人的电子邮件
git config --list查看配置信息
git config user.name查看个人的用户名称
git config user.email查看个人的电子邮件
cd ~/.ssh
ls
查看公钥目录
ssh-keygen -t rsa -C "your_email@youremail.com" 生成公钥
直接按Enter就行
cat ~/.ssh/id_rsa.pub 查看生成的公钥
把公钥提交到Github的SSH and GPG keys里面
$ ssh -T git@github.com验证下key是不是正常工作
git clone git@github.com:zh520w/test.git远端仓库克隆到本地
git remote -v 查看你当前的 remote url
git remote show origin 查看远程仓库
git remote add origin git@github.com:zh520w/test.git本地仓库与远端仓库关联关联
git remote set-url origin git@github.com:someaccount/test.git修改remote url
git add readme.txt添加单个文件到缓存区
git add .添加当前目录下的所有更改或者添加的文件到缓存区
git status查看是否有修改
git status -s查看修改列表
git commit -m "First commit"提交到代码
git push origin master提交到远程仓库
git fetch origin master:temp
git diff temp
git merge temp
git branch -d temp
A.远端代码同步到本地(推荐)
git pull origin master-develop:masterB.远端代码同步到本地
git branch -r/-a查看远程分支/全部分支
git checkout -b test新建test分支
git checkout -d test删除test分支
git merge master假设当前在test分支上面,把master分支上的修改同步到test分支上
git merge tool调用merge工具
git log查看当前分支上面的日志信息
git diff查看当前没有add的内容
git diff --cache查看已经add但是没有commit的内容
git diff HEAD上面两个内容的合并
git reset --hard HEAD撤销本地修改
git stash把未完成的修改缓存到栈容器中
git stash list查看所有的缓存
git stash pop恢复本地分支到缓存状态
git blame someFile查看某个文件的每一行的修改记录(谁在什么时候修改的)
git rm --cached mytext.txt从暂存区域移除
git reset HEAD mytext.txt取消暂存mytext.txt文件

git stash和git stash pop

git stash 可用来暂存当前正在进行的工作,比如想pull最新代码,又不想加新commit,或者另外一种情况,为了fix一个紧急的bug,先stash,使返回到自己上一个commit,改完bug之后再stash pop,继续原来的工作。 基础命令:

  • git stash

  • do some work

  • git stash pop

进阶:

git stash save "work in progress for foo feature"

当你多次使用’git stash’命令后,你的栈里将充满了未提交的代码,这时候你会对将哪个版本应用回来有些困惑, ’git stash list’命令可以将当前的Git栈信息打印出来,你只需要将找到对应的版本号,例如使用’git stash apply stash@{1}’ 就可以将你指定版本号为stash@{1}的工作取出来,当你将所有的栈都应用回来的时候,可以使用’git stash clear’来将栈清空。

git stash# save uncommitted changes pull, edit,etc. git stash list # list stashed changes in this git git show stash@{0} # see the last stash git stash pop # apply last stash and remove it from the list

git stash --help # for more info