-
正确的提交方式
命令 | 说明 |
---|---|
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 init | Git初始化 |
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:master | B.远端代码同步到本地 |
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