Git 常用命令 有更新!

  |   0 评论   |   432 浏览

ssh登录git

ssh-keygen -t rsa -C "youremail@example.com" 生成密钥,位于 ~/.ssh复制公钥至github

ssh -T git@github.com 测试登录

git 配置

git config --global user.name "liweiwei"

git config --global user.email "liweiwei3257@qq.com"

git config --global gui.encoding utf-8 设置git gui编码,否则查看更改历史时中午会显示为乱码

git config -l 查看配置

git clone

将远程仓库克隆到本地

git clone git@xxx.com:xxx.git dir/ 将远程仓库克隆到本地dir目录

-o 指定远程仓库名称,不使用默认名称 origin

git init 当前目录,初始化本地仓库

支持多种协议

$ git clone http[s]://example.com/path/to/repo.git/

$ git clone ssh://example.com/path/to/repo.git/

$ git clone git://example.com/path/to/repo.git/

$ git clone /opt/git/project.git

$ git clone file:///opt/git/project.git

$ git clone ftp[s]://example.com/path/to/repo.git/

$ git clone rsync://example.com/path/to/repo.git/

git remote

用来管理远程仓库

git remote 查看所有远程仓库

-v 查看远程仓库地址

git remote show origin 查看远程仓库配置

git remote set-url origin git@xxx.com:xxx.git 设置远程仓库地址

git remote add origin git@xxx.com:xxx.git 添加远程仓库

git remote rm origin 删除远程仓库

git remote rename origin newname 修改远程仓库的名称

git fetch

将远程仓库的更新获取到本地

git fetch origin 将远程仓库的更新全部获取到本地

git fetch origin master 将远程仓库的某个分支获取到本地

提交

git add <文件名> 将文件内容添加到暂存区

git add -A 将所有变动添加到暂存区

git reset HEAD file 可以把添加到暂存区中文件重新放回工作区

git commit -m “提交说明”

git status 查看文件状态,哪些文件被修改

版本比较

git diff 查看工作区未添加到索引的文件与上一次提交的差异

git diff --cached 查看工作区已添加到索引的文件与上一次提交的差异

git diff HEAD 查看工作区文件与上一次提交的差异,不论是否添加到索引

查看历史版本

git log 查看提交日志,从近到远

git log --pretty=oneline 查看提交日志,简要信息

git log -p 查看提交日志,包含修改内容

git log -p -<数字> 查看最近几次提交日志,包含修改内容

git log -p --word-diff 查看提交日志,包含修改内容,精确到单词级别

-U<数字> 修改内容上下文行数,默认3行

--stat 显示每次更新的文件修改统计信息

--graph 显示提交历史时间线

版本回退

git reset

撤销修改

git checkout -- readme.txt “–”不能漏掉,如果漏掉就变成了切换分支

如果文件没有添加到暂存,就恢复到最新版本,如果没有已经添加到

暂存,则恢复到暂存中的版本。

分支管理

推送分支

git push <远程主机名> <本地分支名>:<远程分支名>

git push origin master 推送分支

删除远程分支

git push origin :master 删除远程分支 master

git push origin --delete master 删除远程分支 master

git fetch 获取远程仓库所有更新

git branch 列出所有分支,当前分支*标注

git branch <分支> 创建分支

-a 包含远程分支

-r 只显示远程分支

-d <分支> 删除本地分支

git checkout dev 在本地有 dev 分支的情况下,切换分支,没有的话使用 -b 创建本地分支并切换

-b newBranch origin/masterorigin/master 分支上创建并切换到 newBranch 分支

git merge origin/master 合并指定分支到当前分支

参考资料

  1. Git远程操作详解

  2. Git 教程

评论

发表评论

validate