• 最常用的git命令


    当前使用git进行版本管理越来越频繁,但是难免还是有些命令记不全,曾当前闲暇记录一下,免得需要时漫天找寻

    一、 配置用户信息

    1、配置全局git用户
    
    	 # 设置提交代码时的用户信息
    	$ git config [--global] user.name "[name]"
    	$ git config [--global] user.email "[email address]"
     
    
    
    2、查看配置
     
    	# 显示当前的Git配置
    	$ git config --list
     
    
    3、编辑配置
    
    	# 编辑Git配置文件
    	$ git config -e [--global]
    	
    

    【注】其中 --global 是进行全局配置,如果不指定该参数默认配置到当前目录下

    二、仓库初始化

    1、将当前目录初始化为git 代码仓库
    
    	$ git init
    
    
    2、新建一个目录,将其初始化为Git代码库
    
    	$ git init [project-name]
    
    
    3、拷贝一个项目到本地
    
    	$ git clone [url]
    	
    

    三、链接远程仓库

    增加一个新的远程仓库,并命名为origin

    
    	$ git remote add [origin] [url]
    	
    

    四、拉取远程仓库数据

    取回远程仓库的变化,并与本地分支合并

    
    	$ git pull [remote] [branch]
    	
    

    remote 仓库地址
    branch 分支名称

    五、查看所有远程仓库

    显示所有远程仓库

    
    	$ git remote -v
    	
    

    六、删除远程仓库

    删除远程仓库连接

    
    	$ git remote rm origin
    	
    

    七、查看本地文件变更情况

    
    	 $ git status
     
    

    八、把文件添加到暂存区

    1、提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件
    
     $ git add .
     
    
    2、提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)
    
     $ git add -u  
     
    
    3、是上面两个功能的合集(git add --all的缩写)
    
     $ git add -A 
     
    

    九、提交暂存区到仓库

    
     $ git commit -m "the first to commit"
     
    

    十、将分支推送到远程仓库

    
    	$ git push origin master
    	
    

    origin 第三步新增时指定的本地分支名
    master 远程仓库主分支

    十一、分支管理

    1、查看分支

    
    	$ git branch [-a]
    	
    
    2、创建分支
    
    	$ git branch branchName
    	
    
    3、切换分支
    
    	$ git checkout branchName
    	
    
    4、创建+切换分支
    
    	$ git checkout –b branchName
    	
    
    【 –b 】参数表示创建并切换,相当于如下2条命令
    

    git branch branchName, git checkout branchName

    5、合并某分支到当前分支
    
    	 # 切换到Master分支
      git checkout master
    
      # 将develop合并到master分支
      git merge --no-ff develop
    	
    
    6、删除分支
    
    	$ git branch –d branchName
    	
    

    十二、文件比较

    1、比较修改文件的不同点
    
    	$ git diff modifyFileName
    	
    

    十三、查看提交日志

     
     	$ git log
     	
    

    十四、还原

    
    	 
    	# 恢复暂存区的指定文件到工作区
    	$ git checkout [file]
    	 
    	# 恢复某个commit的指定文件到暂存区和工作区
    	$ git checkout [commit] [file]
    	 
    	# 恢复暂存区的所有文件到工作区
    	$ git checkout .
    	 
    	# 重置暂存区的指定文件,与上一次commit保持一致,但工作区不变
    	$ git reset [file]
    	 
    	# 重置暂存区与工作区,与上一次commit保持一致
    	$ git reset --hard
    	 
    	# 重置当前分支的指针为指定commit,同时重置暂存区,但工作区不变
    	$ git reset [commit]
    	 
    	# 重置当前分支的HEAD为指定commit,同时重置暂存区和工作区,与指定commit一致
    	$ git reset --hard [commit]
    	 
    	# 重置当前HEAD为指定commit,但保持暂存区和工作区不变
    	$ git reset --keep [commit]
    	 
    	# 新建一个commit,用来撤销指定commit
    	# 后者的所有变化都将被前者抵消,并且应用到当前分支
    	$ git revert [commit]
    	 
    	# 暂时将未提交的变化移除,稍后再移入
    	$ git stash
    	$ git stash pop
    
    
    
    

    其实代码还原别小看在某些时候蛮管用,如你的代码和和远程仓库冲突时

    你也许会使用
    $ git pull origin master --allow-unrelated-histories
    参数--allow-unrelated-histories 把两段不相干的 分支进行强行合并

    但是会出现许多冲突,所以最后还是使用如下命令把HEAD恢复到最后提交的版本
    $ git reset --hard origin/master

  • 相关阅读:
    菜鸟版JAVA设计模式—从买房子看代理模式
    NTP工作机制及时间同步的方法
    Java工厂模式
    圣魔大战3(Castle Fantisia)艾伦希亚战记完美攻略
    对javabean的内省操作
    插入排序(insertion sort)
    中英文对照 —— 十二星座
    中英文对照 —— 十二星座
    数学归纳法的相关证明
    数学归纳法的相关证明
  • 原文地址:https://www.cnblogs.com/dengxiaoning/p/12309578.html
Copyright © 2020-2023  润新知