1.初始化仓库:

git init

2.设置签名 - 区分不同开发者

#项目级别/仓库级别:仅在当前本地库范围内有效
git config user.name xxx   #用户名
git config user.email xxxx@xxxx  #Email
#信息保存的位置:.git/config

#系统用户级别:登录当前操作系统的用户范围
git config --global user.name xxx
git config --global user.email xxx@xxx

##级别优先级:就近原则,项目级别优先系统用户级别。

3.查看状态 :

git status

4.添加文件到暂存区:

git add [文件名] #单文件添加
git add/git commit -a	#修改后提交

5.撤销文件的添加(删除暂存区中的文件):

git rm --cached [文件名]

6.提交到本地库:

git commit [文件名]	#先不写提交日志
git commit -m '提交日志' [文件名]   #提交时填写提交日志

7.查看历史记录:

git log	#查看完整日志
git log --pretty=oneline	 #单行显示日志信息(显示所有版本)
git log --oneline	#简洁单行显示
git reflog	#单行显示(显示到某版本需要的步数)

win10 cmd git log 中文乱码 解决方法windows环境:

git config --global core.quotepath false
git config --global gui.encoding utf-8
git config --global i18n.commit.encoding utf-8
git config --global i18n.logoutputencoding utf-8

添加设置系统环境变量 LESSCHARSET 值:utf-8

bash 环境下

export LESSCHARSET=utf-8

cmd环境下:

set LESSCHARSET=utf-8

8.前进后退操作

git reset --hard 	索引值前6位	#基于索引值操作:
git reset --hard HEAD^  	#一个'^'符号退一行,使用^操作:只能往后退  
git reset --hard HEAD~n    #n表示后退的步数,使用~操作:只能后退    

9.rest命令的三个参数对比

- soft 		  #仅仅在本地库移动HEAD指针
- mixed 	#在本地库移动HEAD指针,重新设置暂存区
- heard 	 #在本地库移动HEAD指针,重置暂存区,重置工作区

10.比较文件差异

git diff 文件名	#和暂存区中文件比较
git diff HEAD [文件名]	#和本地库中的文件比较
git diff [本地库中历史版本] [文件名]	#和历史文件中文件比较
#备注:不指定文件名,则和对应范围的所有文件进行比较

11.分支操作

git branch -v	#查看所有分支
git branch [分支名]	#创建分支 
git checkout [目标分支名]	#转换分支
##合并分支
    #第一步:切换到接受修改的分支上(被合并的分支)git checkout [分支名]
    #第二步:执行合并命令 git merge [有新内容的分支名]
    
##合并分支时的冲突问题:当多个分支同时修改同一个文件时,合并分支时产生冲突的问题。
    #第一步:手动修改文件内容
    #第二步:执行 git add [文件名]
    #第三步:git commit -m "日志"(不加文件名) 结束合并操作。

##删除分支
git branch -d 分支名	 #删除本地分支
git push origin --delete 分支名	 #删除远程分支

##同步远程分支
git fetch #将本地分支与远程保持同步
git checkout -b 本地分支名x origin/远程分支名x
#首先同步所有远程分支,如下:
git branch -r | grep -v '\->' | while read remote; do git branch --track "${remote#origin/}" "$remote"; done
 git fetch --all    #将本地所有分支与远程保持同步
git pull --all  #最后拉取所有分支代码 

12.在本地创建远程库地址别名

git remote -v	#查看已有的别名
git remote add origin 仓库地址	#新建地址别名
    #add:添加
    #origin:为远程仓库地址取的别名
git remote rm 别名	#移除远程地址

13.推送:

git push origin master
#push:推送命令
#origin:远程库别名
#master:远程库分支

14.克隆操作(把远程库克隆到本地):

git clone 远程仓库地址
##把远程库克隆到本地的效果:
  #完整的把远程库下载到本地
  #创建origin远程库的别名
  #初始化本地仓库

15.拉取操作

#pull=fetch+merge
git pull [远程地址别名][远程分支]
git fetch [远程地址别名][远程分支]	#从远程仓库拉取代码
git merge [远程库地址别名/远程分支名]	#合并上一步拉取的代码到当前分支
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐