git常用命令

详情参见:https://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%91%BD%E4%BB%A4%E8%A1%8C

git存储的是一系列文件快照


1.设置用户名和邮箱


git config --global user.name "John Doe"

git cinfig --global user.email bfhl@xx.com


更新
git config --global --replace-all user.email "输入你的邮箱" 
        git config --global --replace-all user.name "输入你的用户名"

2.查看git的配置

git config --list

然后可以通过输入 git config <key>: 来检查 Git 的某一项配置

例如:git config remote.origin.url 得到远程仓库地址

3.获取帮助

git help

4.克隆仓库 

git clone [url]

5.(添加内容到下一次提交中)跟踪一个文件或者文件夹下的所有文件,把已经跟踪的文件放到缓存区

git add

例如要跟踪rex文件

git add rex 

6.查看文件的跟踪状态

git status 

7.git diff 

       本身只显示尚未暂存的改动,而不是自上次提交以来所做的所有改动

8. 查看已经暂存起来的变化

git diff --cached
git diff --staged

9.提交更新

git commit

-m参数后跟提交说明

git commit -m "222222222222222222222"

10.跳过暂存之间提交

git commit -a  该命令会把所有已经跟踪过的文件暂存起来一并提交,从而跳过git add步骤

11.移除文件

git rm 

12.文件改名字

git mv file_from file_to

13.查看提交记录

git log

14.修改改最后一次提交

git commit --amend

15.取消已经暂存的文件

git reset HEAD benchmarks.rb

16.取消对文件的修改

git checkout --benchmarks.rb

17.查看当前的远程库

git remote -v

18.添加一个新的远程仓库

git remote add [shortname][url]

例如: git remote add uy git://xxx.com/xxx/xx.git

19.从远程仓库抓取数据

git fetch [remote-name]

20.git pull

21.推送数据到远程仓库


git push [remote-name] [branch-name]

22.查看远程仓库信息

git remote show [remote-name]

23.远程仓库的删除和重命名

git remote rename xx-old xx-new

Git可以对某一时间点上的版本打上标签,在发布版本的时候,会这么做,
git使用的标签有2种类型清亮级的和含辅注的

24.列出已有的标签

git tag

25.创建一个含附注的标签

git tag -a v1.4 -m '版本1.4'

-m是指定了标签的说明

26.列出提交信息

git show 

27.轻量级标签,就是一个保存着对应提交对象和校验信息的文件, -a, -s,-m选项都不用,直接给出标签名字即可

git tag xxxx

28.创建验证标签,前提要有签署者的公钥,若没有公钥会报错

git tag -v xxx 

29.分享标签

git push origin [tagname]

一次推送所有本地新增标签

git push origin --tags

30.创建分支

git branch xxx

HEAD指针:指向当前所在的本地分支

31.分支切换

git checkout xxx

做了2件事情:
1.使HEAD指回xxx分支
2.将工作目录恢复成xxx分支所指向的快照内容

32.新建并且切换分支

git checkout -b xxxx

33.删除分支

git branch -d xxx

34.合并分支

git merge xxx

35.查看每一个分支的最后一次提交

git branch -v

36.过滤列表中已经合并和尚未合并到当前分支

git branch --merged
git branch --no-merged

37.获得远程引用的完整列表

git ls-remote

git remote show 获得远程分支的更多信息

38.抓取本地没有的数据,并跟新本地数据

git fetch origin

39.跟踪分支

git checkout --track xxx/xxx1

40.查看设置的所有跟踪分支

git branch -vv
       git pull = git fecth + git merge

      变基注意:不要对在你的仓库外有副本的分支执行变基

     总的原则:只对尚未推送或分享给别人的本地修改执行变基操作清理历史,从不对已推送至别处的提交执行变基操作,这样,你才能享受到两种方式带来的便利


41.分支的合并--变基

git rebase xxx

42.将(dev)分支变基到目标分支上(master) ,在dev分支上操作

git rebase master dev

然后切换到master上就可以进行合并了

git checkout master

git merge server

43.分支有多个的情况下,但只想变基xxx1分支到master上,在该分支上

git rebase --onto master xxx xxx1

44.git可以使用4种主要的协议来传输资料:本地协议(Local)、HTTP协议、SSH协议和Git协议

45.私有管理团队 


整合--管理者工作流程:独立小组的工作只能被特定的工程师整合,主仓库的master分支只能被那些工程师跟新,整合者合并

46.补丁

git apply xxx

该命令采用了:'全部应用,否则就全部撤销'的模型

47.检查补丁

git apply --check

48.发布构建

git archive master --prefix='project' | gzip >`git describe ,aster.`tar.gz

README文件
1.项目的作用
2.如何配置和安装
3.如何使用和运行的例子
4.项目的许可证

5.如何向项目贡献力量


49.查看分支的引用

git rev-parse dev

50.查看引用日志(引用日志只存在于本地仓库)

git reflog

51.查看某一个分支的提交

git log ..dev

52.储藏工作(未改完,但是必须提交的文件)

git stash 或者 git stash save

53.查看储藏

git stash list

54.重新应用储藏


git stash apply
git stash apply stash@{2}
若不写编号默认是最近的

56.从工作目录中移除未被追踪的文件

git clean
git clean -f -d 移除工作目录中所有未跟踪的文件以及空的子目录

57.另一个比较安全的选项

git stash --all来移除每一样东西并存放在栈中

       Git提供了几种通过GPG来签署和验证工作的方式

58.修改最后一次提交(若已经推送了最后一次提交就不要修正他)

git commit --amend

Git的三棵树(主要通过操纵这3棵树来更加连续的记录项目的快照)

HEAD:当前分支引用的指针,总是指向该分支上的最后一次提交,表示HEAD将是下一次提交的父节点
索引:预期的下一次提交,Git的'暂存区'
工作目录:沙盒

59.创建一个Git仓库

git init

       reset命令会以特定的顺序重写3棵树

1.移动HEAD分支的指向(若指定了--soft,则到此为止)
2.是索引看起来想HEAD(若未指定--hard,则到此为止)
3.是工作目录看起来像索引

60.合并的时候忽略空格

git merge -Xignore-space-change whitespace

Git是一个内容寻址文件系统
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值