发布:2022/4/21 14:46:45作者:管理员 来源:本站 浏览次数:1480
Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
本文档使用了自己搭建的Git库,使用软件为GitLab。已经在GitLab中创建了一个项目,项目名:test
本机使用的工具是Git官网的命令工具(Git Bash)。
本文档主要描述了如何在服务器中拉取项目代码,添加、修改、删除之后提交,并同步到主线中。
详细步骤如下:
一、配置Git
Git的设置文件为 .gitconfig ,它可以在用户主目录下(全局配置),也可以在项目目录下(项目配置)。
设置用户名称和邮箱地址,--global 表示全局设置,本机上所有的Git仓库通用该配置
$ git config --global user.name "[name]"
$ git config --global user.email "[email address]"
查看配置文件
# 查看[仓库级|全局级|系统级]的 config
$ git config [--local|--global|--system] -l
# 查看当前生效的配置
$ git config -l
二、拉取代码
#git clone命令将存储库克隆到新目录中。
#repository:版本库的网址
#directory:本地目录名
$ git clone <repository> [<directory>]
该命令会在本地主机生成一个目录,与远程主机的版本库同名。如果要指定不同的目录名,可以将目录名作为git clone命令的第二个参数。
git clone支持多种协议,除了HTTP(s)以外,还支持SSH、Git、本地文件协议等
如果你的git库为空,弹出以上警告,可以参照下图进入拉取代码的目录,查看与远程版本库的代码。
关于远程仓库还有以下命令:
# 显示所有远程仓库(显示仓库地址)
$ git remote -v
# 显示指定远程仓库的信息(仓库地址、HEAD指向分支、所有分支等)
$ git remote show [remote-name]
# 增加一个新的远程仓库,并命名
$ git remote add [remote-name] [url]
# 删除指定的远程仓库
$ git remote remove [remote-name]
默认远程仓库名:origin
默认分支:master
三、创建分支
创建分支相关命令
# 新建分支,但仍停留在当前分支
$ git branch [branch-name]
# 新建分支,并切换到该分支
$ git checkout -b [branch-name]
分支相关的其它相关命令
# 列出所有的分支,"*" 标识的是当前分支
$ git branch
# 列出所有远程分支
$ git branch -r
# 列出所有本地分支和远程分支
$ git branch -a
# 新建分支,但仍停留在当前分支
$ git branch [branch-name]
# 新建分支,并切换到该分支
$ git checkout -b [branch-name]
# 切换到指定分支,并更新工作区
$ git checkout [branch-name]
# 合并指定分支到当前分支
$ git merge [branch-name]
# 删除分支
$ git branch -d [branch-name]
四、添加代码提交
切换到test2分支(上面创建了),在里面添加一个文件test.txt文件
先通过git add命令把文件提交到暂存区,再通过git commit命令把文件提交test2分支仓库
添加、提交其它相关命令
添加
# 添加指定文件到暂存区,可指定多个文件
$ git add [file1] [dir/file2] ...
# 添加指定文件到暂存区,可指定通配符;如 *.txt,匹配所有txt文件
$ git add [file-pattern]
# 添加指定目录到暂存区,包括子目录
$ git add [dir]
# 添加当前目录的所有文件到暂存区
$ git add .
提交
# 提交暂存区所有文件到仓库区,一定要记得添加提交信息(message)
$ git commit -m [message]
# 提交暂存区的指定文件到仓库区
$ git commit [file1] [file2] ... -m [message]
# 提交工作区自上次commit之后的变化,直接到仓库区 (省略 git add 那一步)
$ git commit -a
# 使用一次新的commit,替代上一次提交
# 如果代码没有任何新变化,则用来改写上一次commit的提交信息
$ git commit --amend -m [message]
# 重做上一次commit,并包括指定文件的新变化
$ git commit --amend [file1] [file2] ...
删除文件
# 删除工作区文件(已被追踪的文件),并将这次删除放入暂存区
$ git rm [file1] [file2] ...
# 停止追踪指定文件(在暂存区中删除),但该文件会保留在工作区
$ git rm --cached [file]
# 文件改名(工作区),并将这个改名放入暂存区
$ git mv [file-oldname] [file-newname]
五、合并代码
通过git merge 命令把test2分支,合并到test1,必须先切换到test1分支,再由test1全并到master分支。
六、远程仓库代码合并
第五步描述了本地分支合并,但如何把本地代码合并到远程仓库呢,通过git push命令。
# 上传本地指定分支到指定远程仓库 默认的remote-name为origin
$ git push [remote-name] [branch-name]
基本它相关远程库操作命令
# 抓取指定远程仓库的所有变动,不做合并,不影响工作区
$ git fetch [remote]
# 显示所有远程仓库(显示仓库地址)
$ git remote -v
# 显示指定远程仓库的信息(仓库地址、HEAD指向分支、所有分支等)
$ git remote show [remote-name]
# 增加一个新的远程仓库,并命名
$ git remote add [remote-name] [url]
# 删除指定的远程仓库
$ git remote remove [remote-name]
# 取回指定远程仓库的变化,并与本地分支合并
$ git pull [remote-name] [branch-name]
# 上传本地指定分支到指定远程仓库
$ git push [remote-name] [branch-name]
# 推送所有分支到指定远程仓库
$ git push [remote-name] --all
# 强行推送当前分支到指定远程仓库,即使有冲突
$ git push [remote-name] --force
到此就完成了,从Git库拉取代码,创建分支,更新之后提交,合并分支整个工作流程介绍。
© Copyright 2014 - 2024 柏港建站平台 ejk5.com. 渝ICP备16000791号-4