赞
踩
git init
git remote add origin https://
git remote -v (查看远程连接)
git remote set-url origin 你新的远程仓库地址(修改远程仓库地址)
查看用户名 :git config user.name
查看密码: git config user.password
查看邮箱:git config user.email
查看配置信息: git config --list
修改用户名和密码
修改用户名:git config --global user.name "要修改的用户名"
修改邮箱:git config --global user.email "要修改的邮箱"
修改密码:git config --global user.password "要修改的密码"
git clone http:// (克隆远程仓库)
git clone -b 分支名 仓库地址 (克隆指定分支)
git branch 分支名 (创建分支)
git branch 新分支名 旧节点名 (已旧节点为基础,创建一个新的分支)
git branch -v (查看各个分支最后一个提交信息)
git branch -rv (查看远程分支)
git branch -a (查看所有分支)
git push --set-upstream origin + 分支名 (远程创建分支)
git branch -d 分支名 (删除分支)
git push origin --delete 分支名 (删除远程分支)
git checkout 分支名
git checkout . (放弃当前本地所有已经修改的内容(未add))
git checkout -- 文件名 (放弃当前本地特定文件已经修改的内容(未add))
git checkout -b 分支名 (创建分支并切换到该分支)
git status
git log
git log 远程分支名 (查看远程分支LOG)
git reflog
git tag (显示所有tag)
git checkout tagname (切换到对应tag,注意切换到tag后,HEAD是游离的状态,最好是创建一个新的分支去操作。)
git branch 分支名 tag名(切换到tag,并且创建新的分支)
git tag -a tagname -m "注释信息" (创建一个带注释的tag)
git show tagname (显示tag的详细信息)
git tag -f tagname -m "注释信息" (强制更改原来tag的旧注释)
git tag -d tagname (删除本地tag)
git push origin tagname (推送特定tag到远端)
git push origin --tags (推送所有tag到远端)
git push -d origin tagname (删除远端tag)
git fetch tagname (下载指定tag)
git fetch origin --tags (下载所有tag)
git ls-files -c 暂存的文件(默认) -d 删除的文件 -m 修改过的文件
git add . (全部文件)
git add -A . (修改的文件)
git rm -r --cached .
git reset HEAD -- . (撤销所有)
git reset HEAD -- filename (撤销特定目标)
git commit -m "log信息"
git commit -a -m log信息 (-m是输入提交信息,-a是可以把还没有执行add命令的修改一起提交)
git push origin master
git push origin master -f
git pull (拉取并合并)=git fetch + git merge
git pull origin master –allow-unrelated-histories 拉取远程分支,并合并历史记录
git fetch (只拉取不合并) git fetch <远程主机名> <分支名> //注意之间有空格 $ git fetch origin master
git log -p FETCH_HEAD (fetch 后可以查看修改记录)
Esc退出编辑,
:wq保存退出,
:q!直接退出
git merge dev (将dev分支合并到当前分支)
开发分支(dev)上的代码达到上线的标准后,要合并到 master 分支
git checkout dev
git pull
git checkout master
git merge dev
git push -u origin master
当master代码改动了,需要更新开发分支(dev)上的代码
git checkout master
git pull
git checkout dev
git merge master
git push -u origin dev
git reset HEAD^ # 回退所有内容到上一个版本
git reset HEAD^ hello.php # 回退 hello.php 文件的版本到上一个版本
git reset 052e # 回退到指定版本
注:git reset和git checkout 的区别
{
git checkout是改变head的指向。如果master指向2,现在checkout1,会发现修改的内容都恢复到了分支1的状态。git branch -v查看会发现当前的和master是不一样的分支,也就是说checkout后会产生一个临时的分支。在这个临时分支上想要提交就必须再创建一个分支,再将该临时分支merge到创建的分支上之后才能提交。另外如果在这个临时分支上进行了修改,再想要checkout回master分支,会报错,提示有修改的东西没有git add。比如add commit后才能提交。
git reset是直接改变master的内容。例如master指向2,现在reset1后,会发现修改的内容并没有发生改变。git branch -v查看会发现当前的和master是一样的分支。不同的是如果git status一下会发现提示有很多没有提交的内容。也就是说,reset之后,内容整体回退了。之前提交的状态也都消失了,状态回到了还没有add和commit的状态。这时候修改一些内容,然后再reset回2,发现是不会报错的,而且修改的内容也是在的。
总结一下,reset和checkout最大的区别就相当于checkout会恢复到分支修改前的状态,而且是个临时分支。而reset会恢复到分支提交前的状态。
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。