git
git是什么?
版本控制工具
作用:版本控制,代码协作
写一些代码之后 可以作为一个版本保存起来
版本可以一直存在
git init
初始化一个本地仓库
git add 文件的正则匹配 比如 test.txt git add . 匹配全部文件
把文件加入git仓库的缓存区
git commit -m '描述'
把文件提交到head
全局设置,git用户名和邮箱
git config --global user.name '' git config --global user.email ''
git status
查看缓冲区的状态
git log 查看本地提交记录 --oneline 一行显示 --graph 图形化显示
git reset --mixed 版本号 (版本号:在提交记录中可以看到)
回退到add之前的状态
git reset --soft 版本号
回退到commit之前的状态
git reset --hard 版本号
回退到指定版本号的状态
创建ssh key
ssh-keygen -t rsa -C '邮箱'
其中 -t是类型,-c是备注
查看生成的 SSH 公钥和私钥:
ls ~/.ssh/
输出:
id_ed25519 id_ed25519.pub
- 私钥文件
id_ed25519
- 公钥文件
id_ed25519.pub
3、读取公钥文件 ~/.ssh/id_ed25519.pub
:
cat ~/.ssh/id_ed25519.pub
输出,如:
ssh-ed25519 AAAA***5B Gitee SSH Key
复制终端输出的公钥。
把文件的内容复制到git服务器设置里面的ssh公钥配置里面
git remote add origin "SSH地址"
git remote add origin "HTTPS地址" 比如 我的仓库名是 test 那么仓库地址就是 https://gitee.com/luanlingyun/test.git
把本地仓库和远程仓库关联起来
链接只需要建立一次
选择分支,以及创建新分支
列出所有分支: git branch 这将列出所有本地分支,当前所在的分支会有一个 * 符号标记。 切换到某个分支: git checkout <branch-name> 将 <branch-name> 替换为你想要切换到的分支的名称。例如,要切换到名为 develop 的分支,可以运行: git checkout develop 注意:在切换分支前,确保你的本地分支的所有修改都已经提交或保存起来,以避免丢失改动。 创建本地分支并切换到一个新的分支: git checkout -b <new-branch-name> 将 <new-branch-name> 替换为你想要创建的新分支的名称。例如,要创建并切换到名为 feature-branch 的新分支,可以运行: git checkout -b feature-branch 这个命令相当于先创建分支,再切换到该分支。 切换到远程分支: git checkout --track <remote-branch-name> 将 <remote-branch-name> 替换为你想要切换到的远程分支的名称。例如,要切换到名为 origin/feature-branch 的远程分支,可以运行: git checkout --track origin/feature-branch 这将自动创建一个本地分支,并将其与远程分支关联起来。
通常情况下,当你使用 git clone
命令克隆远程仓库时,Git 会自动为你创建一个名为 origin
的远程仓库别名,并为你拉取远程仓库的分支。
但是,当你创建一个新的本地分支时,它并不会自动与远程分支进行关联。
所以,当你想要将本地的 XXX(分支名)分支与远程的 origin/XXX(分支名)
分支进行关联时,可以使用 git branch --set-upstream-to
命令。该命令的语法如下:
git branch --set-upstream-to=<远程分支> <本地分支>
当你想要将本地的 XXX(分支名)分支与远程的 origin/XXX(分支名)
分支进行关联
git branch -vv
命令查看分支的关联情况。
你应该能看到类似以下的输出:
develop 1234abcd [origin/develop]
若遇报错: branch 'develop' does not exist
执行如下命令
git pull origin branch --allow-unrelated-histories
关联之后,进行分支同步
git pull
git push -u origin master
把本地仓库的内容推送到远程仓库
git pull origin master
把远程仓库的内容拉取到本地仓库
git clone 仓库地址
把远程仓库克隆到本地
加入两个人同时修改了同一个文件,那么第二提交到远程仓库的人需要先pull拉去第一个人修改的内容
然后合并解决冲突,再提交到远程仓库