微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Git使用常见命令介绍

git基础命令

 - git init: 初始化本地仓库
 - git config: 配置签名
 - git add 文件名: 将文件提交到缓冲区
 - git commit 文件名: 将文件提交到本地仓库
 - git commit -m “xxxxxx” 文件名:m参数表示添加提交说明
 - git status 查看状态
 - git log 查看日志 (git log --pretty==oneline git log --oneline)
 - git reflog 查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 reset 的操作)
 - cat [文件名]:查看文件内容

回到以前版本:基于索引值(推荐)、基于^符号、基于~符号

  1. git reset:没有参数的时候只是操作了暂存区,不影响工作区(本地的代码)。等价于–soft
  2. git reset --soft:回退到某个版本,只回退了commit的信息,不会影响工作区。如果还要提交,直接commit即可;
  3. git reset --hard:回退到某个版本,工作区内容也会变为上一个版本的内容,彻底回滚;
 - git reset --hard 哈希索引值 : 回退/前进到某版本(先用log查到每个版本的索引值)
 - git reset --hard HEAD^ :回退一步,符号只能回退,退几步加几个符号
 - git reset --hard HEAD~3 :回退3步,~3相当于3个^符号

文件比较

 - git diff 文件名:将工作区文件和暂存区的文件进行比较(不带文件名则比较多个)
 - git diff HEAD[本地库某历史版本] 文件名: 将工作区文件和本地库某历史版本记录比较

分支命令:

 - git branch -v: 查看所有分支
 - git branch [分支名]: 创建一个分支
 - git checkout [分支名]: 切换分支

合并分支:

先切换到要将合并内容合并到的分支上: git merge [分支名] : 合并分支

eg: git merge b; 假定当前分支是a,则该命令将b分支的内容合并到a分支。

合并时冲突的解决:不同的两个人在同一个文件一个位置的不同修改会发生冲突

协商解决好冲突好后,使用 git add [文件名] 表示冲突已解决,然后使用 git commit 即可完成修复(此处不加文件名)

远程交互:

 - git remote -v :查看远程仓库及其别名
 
 - git remote add [别名] [远程仓库地址] :给远程仓库起别名
 
 - git push [远程主机名] [本地分支名]  [远程分支名]:推送内容
	- 如果远程分支名被省略,如上则表示将本地分支推送到与之存在追踪关系的远程分支(通常两者同名);如果该远程分支不存在,则会被新建
	- 如果当前分支与远程分支存在追踪关系,则本地分支和远程分支都可以省略;
	- 如果当前分支只有一个远程分支,那么主机名都可以省略
	
 - git clone [远程仓库地址]:将远程仓库下载到本地,创建远程仓库的别名origin,初始化本地库
 
 - git fetch  [分支名]:将远端仓库的对应分支拉取下来。
 	fetch下来的是一个新的分支,并不会合并到本地的分支上,需要我们自己再merge
 	
 - git pull 相当于fetch加merge
	git pull [远程主机名] [远程分支名]:[本地分支名] (如果远程分支是与当前分支合并,则冒号后面的部分可以省略)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐