学习Git,这篇文章足矣

阮一峰和廖雪峰双峰大神教程可解决Git所有基础问题:

Git基础:

廖雪峰Git教程

阮一峰Git远程操作详解

阮一峰常用Git命令清单


Git进阶

阮一峰Git使用规范流程

阮一峰Git分支管理策略

阮一峰Git工作流程(flow)

阮一峰Github的清点对象算法

合并merge和rebase的区别

git命令cheat sheet

学习Git,这篇文章足矣_第1张图片

带'(撇号)和其他的commit实际上还是存在两个分支上,只是以线性显示出来。

撤销所有修改和新增:

# 如果还未add到暂存区
git checkout -- .
git clean -xdf

# 如果已经add到暂存区
git reset --hard
git clean -xdf

# git clean -xdf #意思是清理所有未跟踪文件,也就是新增的未add的文件,注意忽略文件也会被删除,危险


查看commit记录

git log --pretty=oneline
git log --graph --pretty=oneline --abbrev-commit


修改历史commit

# 修改上一次的commit
git commit --amend
#会弹出一个vi修改界面,在最上面修改保存即可

#修改多次历史commit,说实话,能搞,但是太繁琐了,难怪王垠说git是反人类

===================


理解git的核心图形

学习Git,这篇文章足矣_第2张图片


所有git 命令后面加入 -h参数可以看到说明

git add -h
git remote -h


一次性增加所有文件命令,在add之前最好先规划好忽略文件,命令参考资料

git add -A  #或者--all增加所有,适用第一次初始化,,Git2.0起,all是git add的默认参数,可用git add .代替
git add .   #增加新增和修改的,排除删除的
git add -u  #增加更新和删除的,排除新增的
git add -i  #查看所有修改过或已删除文件但没有提交的文件
git add -h  #其他参数可以用这个命令查看

git add -i 命令详情参考:http://hubingforever.blog.163.com/blog/static/171040579201231110371044/


在add之前应该先增加忽略文件.gitignore文件,最好先设置忽略一下常见的系统文件:参考网站,也可以参考github提供的例子

# 全局忽略.DS_Store(Mac下)及其他文件,
# 创建全局设置文件,然后在~/.gitconfig 中引用即可
vi ~/.gitignore_global

# 文件内容:
####################################
######## OS generated files ########
####################################
.DS_Store
.DS_Store?
#ide配置文件
.idea
*.swp
._*
.Spotlight-V100
.Trashes
Icon?
ehthumbs.db
Thumbs.db
####################################
############# Packages #############
####################################
*.7z
*.dmg
*.gz
*.iso
*.jar
*.rar
*.tar
*.zip

#git引入全局文件
vi ~/.gitconfig

#加入一下内容
[core]
        excludesfile = /Users/hero/.gitignore_global


第一次从本地push到服务器的时候,出错代码:error:failed to push some refs to ...,git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去,解决办法:参考网站

# 第一种,加参数-f强制覆盖
git push -f

#第二种,将服务器上的和本地合并,然后再push上去
git fetch
git merge


git远程操作五大命令,参考网站

git clone   #克隆
git remote  #管理远程主机,-h可以看到所有参数,remove可以移除已有的远程主机git remote remove origin
git fetch
git pull
git push

你可能感兴趣的:(学习,git,push,fetch,add,clone,教程,remote,pull,branch)