GIt版本管理,基础

常用命令

  1. git status 对比状态
  2. git log 查看提交日志 git log --oneline 简化 (按q退出)
  3. git branch 分支名 (建立本地新分支)
  4. git checkout 分支名 (切换本地分支)
  5. git branch -d 分支名 (删除分支)
  6. 删除未合并的分支:git branch -D 分支名
  7. pull以后的主分支上git merge feature ,然后push
  8. git checkout -b feature2 命令(相当于 git branch feature2 和 git checkout feature2 两个命令的合体):
    9、绘制提交简图:git log --decorate --all --graph --oneline
    10、显示当前的 git 配置信息:git config
    11、查看历史提交:git log
    12、显示需要你解决的冲突:git status

可能遇到的问题:

问题解决方法
覆盖暂存区域和工作目录 (当然,在没有保存更改之前是不会让你切换分支的)checkout
将工作区+暂存区强制统一为远程仓库的某次提交
将工作区统一为暂存区代码
摆脱vim输入面板Esc按一次,大写的Z按两次 请按下快捷键 Shift + z + z(其实就是连续两个大写 Z)来退出,或者可以按下冒号(:),然后输入 q! 退出。那么会 Git 会保留旧的提交说明。wq也可以
回滚指针仅仅用来撤销提交,( git reset --soft HEAD~10 )(此时执行 git log 命令,也不会再看到已经撤消了的那个提交)
回滚用GIT仓库来重置暂存(git reset HEAD~ 命令其实是 git reset --mixed HEAD~ 的缩写)
回滚用GIT仓库来重置暂存和工作区(git reset --hard HEAD~ )

1、需要建立规则,忽略一些文件或者依赖,以后不再进行版本控制

需要忽略某个文件的跟踪
1、使用.gitignore忽略文件

为了让git忽略指定的文件和文件夹,我们需要在项目的根目录当中创建.gitignore文件,

在.gitignore文件当中,一行代表一条忽略规则,如果是一个带“.”这种有后缀的字符串那么git就会忽略这个文件。“*”表示的就是选中所有,如果没有“.”就表示一个文件夹。下面举个例子。

删除文件的追踪

 .gitignore 文件的用途,只能作用于 Untracked Files,也就是那些从来没有被 Git 记录过的文件(自添加以后,从未 add 及 commit 过的文件)。

对于已经提交过文件,想要让ignore生效, 也是有办法的:

使用git rm --cached从 Git 的数据库中删除对于该文件的追踪;
把对应的规则写入 .gitignore,让忽略真正生效;
提交+推送。

我们需要在目录总创建一个.gitignore文件,可以在目录中右键选择git bash Here,然后输入touch .gitignore,如下图所示:


https://www.jianshu.com/p/699ed86028c2


2、已经推送(push)过的文件,想从git远程库中删除,并在以后的提交中忽略,但是却还想在本地保留这个文件 执行命令

git rm --cached Xml/config.xml
git rm --cached 5/*   5文件夹下所有文件


.gitignore 语法规范
.gitignore 可以使用标准的 glob 模式匹配(glob 模式是指 shell 所使用的简化了的正则表达式):

所有空行或者以注释符号 # 开头的行都会被 Git 忽略;
星号(*)匹配零个或多个任意字符;
[abc] 匹配任何一个列在方括号中的字符;
问号(?)只匹配一个任意字符;
[a-z] 匹配所有在这两个字符范围内的字符;
匹配模式最后跟反斜杠(/)说明要忽略的是目录;
匹配模式以反斜杠(/)开头说明防止递归;
要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(!)取反。

14、查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 reset 的操作):git reflog
15、只移动Git仓库的指针指向可以撤销上一次提交:git reset --soft HEAD~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值