软件工具——GitBash使用教程

版权声明:原创博文,转载请注明出处 https://blog.csdn.net/qq_15903671/article/details/87967328

公司使用GitLab作版本控制工具,开发使用git客户端链接到公司GitLab服务器进行代码和文档的提交和维护。

Git客户端安装教程:https://blog.csdn.net/qq_15903671/article/details/87966916

安装后打开gitBash配置SSH,配置用户名及邮箱

ssh -keygen(生成ssh秘钥,关于ssh自行百度吧)

git config --global user.name "user_name"

git config --global user.email "email..."

以下包括:GitBash下载项目,GitBash提交变更(增删改),GitBash拉取更新。

一、GitBash下载项目

1.1 创建一个本地文件夹作为Git的本地仓库存储位置


1.2 打开gitBash 拷贝项目

从服务器中打开项目,找到clone的SSH链接。在GitBash中输入 git clone ... 

截图中没有输入用户名密码,是因为提前配置了SSH免密登录。(不配置其实也可以,就是每次操作远程git仓库都要输入用户名密码。)

至此,本地文件夹下可看到刚下载的项目文件。

有一个.git的隐藏文件夹,用于记录git的相关操作。

二、GitBash提交变更(增改删)

2.1 新建文件、提交服务器

本地创建一个新文件test.txt 写入123

gtiBash中看查看文件变化:进入到.git文件夹所在的路径后输入 git status 查看当前git状态。

可以看到test.txt处于一个不可识别状态。

使用git add 指令让git客户端接受这个文件

这样,test.txt变成了新增文件。

使用git commit指令提交本地变更(commit后,变更会生效,git项目版本会变更到比服务器高一个版本)。

commit之后,再输入 git status 就没有变更信息了,这意味着本地git仓库版本已经是没有update过的最新版了。

这时服务端还不知道本地仓库版本的变化,使用git push 指令提交到服务端。

可以看到,服务端多了一个test.txt文件,文件提交成功。

2.2 修改文件、提交服务器

修改test.txt文件,内容改成123456。使用git status 指令可以看到test.txt文件已被修改。

但是修改并未被标记为要提交,这样可以隔离临时的修改,避免被误提交到服务端。git add 指令就是在 commit之前将需要正式提交的和临时变更不需要提交的文件隔离,实现一个暂存区的功能。

那么,现在使用git add 指令让test.txt 文件处于待提交状态。

可以看到,test.txt 的状态变成了待提交。输入git commit -m "备注" 指令提交所有待提交文件

这时,test.txt文件已被提交到本地git仓库了。我们在git status指令中已经看不到test.txt文件的信息,但是可以看到我们的 branch版本比服务器端高了一次commit。此时服务器端还不知道test.txt被提交到本地仓库,要通知服务端就需要 git push 指令。

这时,我们已经跟服务器端保持一致了,看看服务器端的效果

打开服务器端的test.txt文件,看到123456。

整个提交过程包括  git add、 git commit、 git push三个步骤。分别是告诉git保存变更到暂存区,提交本地仓库和通知远程git仓库。

2.3 删除文件 ,提交服务器

删除文件其实也是一种变更,只是默认不提交以避免误删除而已。我们删除刚刚测试用的test.txt文件,然后打开GitBash输入git status 查看git状态信息。

输入git add test.txt 告诉git记录变更

这里做个备注:

git add . 记录文件夹内所有文件变更(文件夹内所有新增和修改文件,不包括删除文件)

git add -u 记录修改和删除的文件到暂存区

git add -A 记录新增和修改的文件到暂存区

git add file_name  记录某个文件的变更(新增、修改、删除)到暂存区

输入git commit 提交本地仓库

提交的时候注意输入 -m 然后写一点备注,不然会报错提示,然后commit失败。

从上面截图可以看到,本地仓库比服务端多了一次commit,已经版本不一致了。使用git push通知服务端更新就好。

查看服务器端情况,test.txt文件已消失。

三、从服务器获取更新

git fetch -all  从远成仓库获取全部文件的引用对象

上图可以看到,更新后找到了一个服务器端的commit本地没有,使用git pull 指令可以拉取这个更新

可以看到本地多了一个aaa.txt的文件。

猜你喜欢

转载自blog.csdn.net/qq_15903671/article/details/87967328