git 版本控制

149 阅读3分钟

git 版本控制

1.删除文件

版本库中文件添加错误想删除,git rm xxx.txt,也会将本地的文件删除,这是不希望发生的。

不影响本地文件的删除 git rm --cached xxx.txt

2.忽略文件的添加

有时有一些文件我们不想添加到版本库中,我们在目录中添加一个 .gitignore文件。

例如:

*.txt :以txt后缀名结尾的文件都会被忽略掉。

!a.txt:除了a.txt文件,其他的都忽略

/xxx: 忽略你想忽略的文件。

3.修改文件名称

git mv a.txt b.txt : a.txt是原来的文件名,b.txt是要改成的名字 (简单来说就是把谁改成谁)

4.使用log日志查看历史操作行为

git log

git log -p : 查看文件变动信息

git log -p -1: 最近一次提交

git log --name-only : 查看那些文件有变化

git lgo --name-status: 什么类型的变化

5.使用 amend 修改最新一次提交事件

git commit --amend + 回车;

Vim 简单操作命令:

i :插入

esc : 返回

:wq : 保存并退出

6.管理暂存区的文件

git reset HEAD a.txt:撤销暂存区的文件

git checkout -- a.txt :将文件从暂存区恢复(如果没有提交到暂存区,将恢复到最近的版本)

7.alias 命令别名提高操作效率

git config --global alias.a add : 执行git a . 就相当于执行git add .

8.分支

git branch: 查看分支

git branch aaa: 创建 aaa 分支

git checkout aaa:切换到 aaa 分支

git checkout -b aaa : 等于 git branch aaa + git checkout aaa 创建并切换到分支

git merge aaa: 合并 aaa 分支

git branch -d aaa: 删除 aaa 分支

gti branch -D aaa : 强制删除文件

git branch --merge: 查看已合并的分支

git beanch --no-merge : 查看没有合并的分支

9.解决冲突

不同分支修改同一个文件或不同开发者修改同一个分支文件都可能造成冲突,造成无法提交代码。

  1. 使用编辑器修改冲突的文件
  2. 添加暂存 git add . 表示已经解决冲突
  3. git commit 提交完成

10.创建临时暂存区

文件改了一半想临时切到其他分支,可将文件暂存起来

git stash: 创建临时暂存区

git stash list : 查看临时暂存区

git stash apply: 恢复临时暂存区

git stash drop stash@{0}: 删除暂存区

git stash pop : 恢复并删除 等于git stash apply + git stash drop stash@{0}

11.使用TAG标签声明项目阶段版本

git tag v1.0: 1.0版本

12.生成ZIP代码发布压缩包

git archive master --prefix='wasweat/' --forma=zip > wasweat.zip

image-20210804175007312.png

13.远程仓库SSH

生成密钥

使用ssh连接Github发送指令更加安全可靠,也可以免掉每次输入密码的困扰。

ssh-keygen -t rsa

一直按回车键直到结束。系统会在~/.ssh 目录中生成 id_rsaid_rsa.pub,即密钥id_rsa和公钥id_rsa.pub

image-20210805154257967.png

添加密钥

image-20210805160607271.png

14.远程关联

1.创建本地库并完成初始提交

echo "# SSH2" >> README.md
git init
git add README.md
git commit -m "first commit"

2.添加远程仓库

git remote add origin git@github.com:wasweet/SSH2.git

3.查看远程仓库

 git remote -v

4.推送数据到远程仓库

git push -u origin master

5.删除远程仓库关联

git remote rm origin

通过 clone 克隆的仓库,本地与远程已经自动关联,上面几步都可以省略。

15.pull

拉取远程主机某个分支的更新,在与本地的指定分支合并。

1.拉取 origin 主机的 ask 分支与本地的 master 分支合并 git pull origin ask:ask

2.拉取 origin 主机的 ask 分支与当前分支合并 git pull origin ask

3.如果远程分支与当前本地分支同名直接执行 git pull

16.远程分支的合并

1.到 master 分支将 master 修改为最新状态

git pull

2.将分支的基准点移动到 master 最后更新的位置

git rebase master

3.回到 master 分支将 ask 分支进行合并

git merge ask

17.远程分支删除操作

删除 ask 分支

git push origin --delete ask