git命令

来源:互联网 发布:关于域名说法正确的是 编辑:程序博客网 时间:2024/05/16 15:43

1.软件下载

  • windowsgit下载网址

  • mac不用下载自带

2.git 命令

  • 1.git init 初始化仓库

  • 2.git status 查看当前状态

  • 3.git add -A(提交所有的) 提交本地文件到缓存区

  • 4.git commit -m"提交信息" 将缓存区的东西提交到本地仓库

  • 5.git reset --hard sha 值 回退到某一个版本

    git reset --hard sha 值 回退到某一个版本git reset --mixed(默认可以不写) sha 状回退到修改态git reset --soft sha 回退到暂存区状态
  • 6.git push 将本地仓库的内容提交到远程服务器

  • 7.git pull 从远程服务器更新

  • 8.git log 查看所有的提交日志

  • 9.git clone 仓库地址

  • 10.git reflog 查看所有的SHA值

3.分支

    1. git branch fixBranch(分支名称) 开启分支

  • 2.git branch 查看当前分支 有*的代表当前正在工作的分支

  • 3.git checkout fixBranch 切换到fixBranch的分支上

  • 4.git merge fixBranch 分支合并 将 fixBranch上的内容合并到master上

  • 5.git branch -d fixBranch 删除分支

远程操作

  • 1.git branch test 创建本地分支

  • 2.git push origin test 将本地分支推送到远程分支

  • 3.git branch -r -d origin/branch-name 删除本地分支 X 错误

    删除分支,先删除本地分支,再删除远程分支

  • git branch -d developer 删除本地分支,developer为分支名称
  • 4.git push origin --delete test 删除远程分支

4.git共享仓库

  • 1.git clone 仓库地址

  • 2.git clone --bare 地址

  • 共享仓库看不到工作区

  • 但是里面有内容 他是共享的,别人只能往里面放代码,但是不让修改 如果向获取就直接克隆

5.代码冲突

文件冲突: 多个人同时改了同一个文件的同一行就会引起冲突

6.查看远程仓库地址

  • git remote -v 查看远程仓库地址 默认 origin

  • git remote add 仓库名称 仓库地址

  • 修改远程仓库地址

    • 1.直接修改

      git remote origin set-url [url]
    • 2.先删除后增加

      git remote rm origingit remote add origin [url]
    • 3.直接修改config文件

7.生成公钥和私钥

生成 公钥/私钥ssh-keygen -t rsa

8.git tag 标签

  • 标签可以针对某一时间点的版本做标记,常用于版本发布

  • git tag v0.1.2

  • 创建附注标签

  • git tag -a v0.1.2 -m “0.1.2版本”

  • 切换到标签

  • 与切换分支命令相同,用git checkout [tagname]

  • 用git show命令可以查看标签的版本信息:

  • git show v0.1.2

  • 给指定的commit打标签

  • git tag -a v0.1.1 9 fbc3d0

  • 标签发布

  • 通常的git push不会将标签对象提交到git服务器,我们需要进行显式的操作:

  • git push origin v0.1.2 # 将v0.1.2标签提交到git服务器

  • git push origin –-tags # 将本地所有标签一次性提交到git服务器

  • git tag -d v0.1.2 # 删除本地标签

  • git push origin :refs/tags/v0.1.2 删除远程tag

  • git tag 查看本地的tag

9.gitignore 忽略文件

  • 创建 .gitignore文件, 图形化界面不能创建

  • node_modules/ node_modules下的所有文件都不提交

  • node_modules/*.jpg node_modules/123.jpg图片不提交但是node_modules/coderYJ/456.jpg可以提交

  • .idea/* .idea 下的所有文件都不提交

  • *.png 忽略所有的 .png 结尾的文件

  • !xxoo.png 但排除 xxoo.png

想把某些目录或文件加入忽略规则,按照上述方法定义后发现并未生效,原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交

  • git rm -r --cached . 删除本地所有缓存(后面的点表示当前文件夹)

  • git add .

  • git commit -m 'update .gitignore'

10.git差异化

  • 比较暂存区和当前的版本的差异 此命令比较的是工作目录(Working tree)和暂存区域快照(index)之间的差异也就是修改之后还没有暂存起来的变化内容。

  • git diff

  • git difftool 分屏比较

  • git diff sha1 sha2 比对2个不同的版本

  • git difftool sha1 sha2 分屏对比

11.文件回退到暂存区

  • git checkout -- 文件名称

12.保存工作区

  • git stash 保存内容(入栈) 切换分支的时候不会让另一个分支看到

  • git stash pop 回到最初保存的内容

13.md5加密 不可逆

  • echo -n 123456 | openssl md5

  • -n就表示不输入回车符

  • 结果 e10adc3949ba59abbe56e057f20f883e

14.base64加密/解密

  • 加密

    • echo abc | openssl base64

    • YWJjCg== (编码结果)

  • 解密

    • echo YWJjCg== | openssl base64 -d

    • abc (解码结果)

  • wc 统计字节数

    wc -l filename 报告行数wc -c filename 报告字节数wc -m filename 报告字符数wc -w filename 报告单词数
原创粉丝点击