程序员都要掌握的git 命令,你会了吗?

455 阅读2分钟

1.1 mac git版安装

  • Mac在控制台输入 brew command not found
  • 如果出现错误提示:zsh: command not found: brew
  • 解决方法:mac 安装homebrew
  • 用以下命令安装,序列号选择中科大(1)的
  • /bin/zsh -c "$(curl -fsSL gitee.com/cunkai/Home…)"

1.2 如果判定安装git成功

  • windows-在任意的位置右键菜单,看到 菜单栏中有 git Bash的菜单,表示安装成功

  • 也可以验证git版本

    git --version
    

2.git配置用户名和邮箱

安装好git 之后,需要全局配置当前用户名和邮箱地址

git config --global user.name "用户名"
git config --global user.email "邮箱地址"

3.git 命令

3.1 查看所有的全局配置选项
  git config --list --global
3.2 初始化仓库
git init 
3.3 查看工作去文件
git status 
#或
git status -s
3.4 存放暂存区
git add . 
#加点指所有文件放暂存区
​
git add index.html 
#将这一个文件放暂存区
3.5 存放工作区
git commit -m "第一次提交"  
#分号里面名字自定义
3.6 查看存放工作区历史记入
git log
3.7忽略文件或文件夹

.gitignore

在vsc里面创建一个新的.gitignore文件,里面按照规则,屏蔽了某些文件

注意:Mac 的 .gititgnore 只能在vsc里面创建页面创建 点开头系统自己保留了

3.8 将git add 和git commit合二为一
git commit -am "第一次提交"
#注意这能操作修改的文件和删除的文件

这里只能是操作已经被追踪的文件,如果是新增的文件,这里没有办法使用

3.9 清除屏幕
clear
3.10 查看文件夹里面有没有文件
ls
3.11 退出文件
:qw
3.12 退回到某个一个节点
git reset --hard xxx
3.13 新建一个文件
touch index.html
#index.html 文件名自定义

4.推送远程仓库

4.1 拷贝远程仓库https后面的地址
git remote add origin https://gitee.com/shuiruohanyu/ajax145.git
#origin 名称可以自定义
#地址是在Gitee创建的仓库的地址
4.2 查看仓库地址是否存在
git remote -v
4.3 删除之前设置的地址
git remote remove origin
4.4 将本地仓库的内容推送到远程仓库
git push -u origin master 
​
git fetch  
#和git pull功能一致但是git 不会更改本地如何代

上面代码表示往origin所有代表的地址推送本地的仓库的master分支

  • master分支的主分支,初始化仓库git 自动帮忙创建的分支

  • -u 表示会记录当时往那个地址推送那一个分支.只要写一次,以后所有的推送作用写git push

    git push
    #写过第一次推送之后就只有写这个
    

    -u有什么用

    • 只要写一次,不再需要写后面的origin master

注意:如果之后有修改要重新推送步骤

git add .
git commit -m "第二次提交"
git push

5.Git 远程拉取

git clone https://gitee.com/shuiruohanyu/ajax145.git
#地址Gitee仓库地址
#可以拉取自己的也可以拉取别人的

6.生成 SSH-key-公钥-私钥

使用命令生成

ssh-keygen -t res -b 4096 -c
"https://gitee.com/beii-html/echarts145.git"
#注意如果要公钥就复制公钥地址
#如果是私钥就复制私钥地址
  • 输入之后,连续三次回车,即可生成公钥和私钥
  • 连续敲进3次回车,即可在文件夹,.ssh目录中生成id-res 和id-rsa.pub两个文件
  • 注意: .ssh 路径在敲三次回车之后会出现

7.在码云网站上,配置SHH key 的公钥

  • 直接拷贝id-rea.oub 文件里面的加密串

    image-20220210210647359

填写公钥

WechatIMG21832 2

7.Https和SSH的区别不大,操作一样

只不过ssh需要配置公要-以后不要在输入用户名和密码!WechatIMG2186523

8.从远程仓库克隆

git clone "https://gitee.com/beii-html/echarts145.git"
#和远程仓库拉取一样

当远程仓库代码修改了,本地需要更新,直接拉取更新

git pull

9.分支

9.1 分支概念

解决开发时,互相不干扰,保证开发时的平行宇宙

开发完之后在将分支内容合并到主分支

9.2 master分支(主线)

master唯一的主线,所有的分支都要都是基与master进行扩展,用来保证和记录整个公能的代码

注意:一定不要在master上修改和操作(先要修改和操作可以拉取分支)

9.3 查看当前有几个分支

git branch
#查看当前的分支列表

9.4 创建新分支

git branch res 
#res 分支名自定义
#创建新分支
  • 注意创建新分支以当前的所在分支为准

9.5 切换分支

git checkout res
#将当前分支切换到某个分支下

9.6 分支快捷创建和切换

git checkout -b res
#表示创建一个新的分支,并且将当前分支切换到新创建的分支上

9.7 合并分支到master

当前功能分支发布完毕 ,需要将功能分支的代码合并到master分支上

9.7.1 切回master分支
git checkout master 
#切回master分支
9.7.2 合并某个分支的代码
git merge res
#合并某个分支的代码

注意:

  1. 合并分支,只能合并仓库区代码,工作区代码不能合并

2:如何改了分支代码,想要合并,必须得提交到当前分支下

9.8 删除分支

git branch -d res 
#删除对应得分支

注意分支只能删除一些小的开发分支,几个大的是不能删的

原则:个人创建的分支,可以删,别人创建的分支,轻易不要删

9.9解决分支的冲突

冲突如何产生的?

不同的分支,对同一个文件,同一个位置,做了不同的操作,此时git没有办法选择那个是对的?

  • 建一个仓库
  • 一个文件 ,提交仓库
//文件内容
function get(){
​
let arr=[1,2,3,4,5]
​
let html='<ul>'
arr.forEach((item)=>{
  html+=`<li>${item}</li>`
​
})
  html+='</ul>'
}
  • 新建两个分支 login register

  • 在login分支修改代码

    function get(){
    ​
    let arr=[1,2,3,4,5]
    let flag='登陆'
    let html='<ul>'
    arr.forEach((item)=>{
      html+=`<li>${item}</li>`
    ​
    })
      html+='</ul>'
    }
    
  • 在register分支修改代码

    function get(){
    let is=true//注册
    let arr=[1,2,3,4,5]
    ​
    let html='<ul>'
    arr.forEach((item)=>{
      html+=`<li>${item}</li>`
    ​
    })
      html+='</ul>'
      retur html
    }
    
  • 切换回主分支 分别将两个分支合并

  • 合并第一次没有问题,但合并第二次时会发生冲突

10 . Mac隐藏文件搜索

Command+Shift+. 可以显示隐藏文件、文件夹,再按一次,恢复隐藏;

11.mac怎样显示gitignore文件找终端

  1. 在终端中输入defaults write com.apple.finder AppleShowAllFiles -bool true,然后点击enter键执行该命令.注意执行完后,只是换一行,并不会弹出特殊的提示。
  2. 在键盘上按下这三个键option+command+esc,这时会弹出正在运行的软件进行重启的提示框,选中Finder后点击底部的重新开启按钮,重启Finder

3.这时再找到我们的git项目,打开后就能看到gitignore文件已经显示了。

显示git 文件

  • 输入命令后,并不会有特殊的提示,只是简单的换行而已,但如果不提示错误就说明命令已经成功执行。
  • 执行命令后,还需要重启Finder,隐藏的gitigore文件才会显示出来。
  • 显示隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles -bool true;关闭显示隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles -bool fals

git 报错解决方法

1:Git终端模式提交git commit因为打了中文描述,就遇到了dquote>提示符:

是描述的双引号没打全,可能是跟提交中文的原因有两种解决方法:

  • 第一种Ctrl+C退出编辑,但需要从新输入一遍
  • 第二种,补个"就行了