git代码提交

本文详细介绍了代码提交的五个步骤:检查代码修改状态、查看代码修改内容、暂存需要提交的文件、提交已暂存的文件及同步到服务器。并提供了具体的Git命令说明。

代码提交

代码提交一般有五个步骤:

1.查看目前代码的修改状态

2.查看代码修改内容

3.暂存需要提交的文件

4.提交已暂存的文件

5.同步到服务器

1.     查看目前代码的修改状态

提交代码之前,首先应该检查目前所做的修改,运行git status命令

a)        已暂存 (changes to be committed)


new file //表示新建文件

modified //表示修改文件

deleted //表示删除文件

b)       已修改 (changed but not updated)

modified //表示修改文件

deleted //表示删除文件

另外,git 给出了可能需要的操作命令,git add/rm, gitcheckout --

c)        未跟踪 (untracked files)

      

      

2.     查看代码修改的内容

 git diff  <file>

比较某文件与最近提交节点的差异。

注意:如果该文件已暂存,那么应该使用git diff –cached<file>
 

 git diff <hashcode> <hashcode>  <file>

比较某文件在提交节点a,节点b的差异。

技巧:如果省略后面一个hashcode,则默认表示与上一提交节点比较。(也可以利用^运算符)

 

3.     暂存需要提交的文件

如果是新建的文件

则git add  <file>


如果是修改的文件
则git add  <file>

如果是删除的文件
则 git rm  <file>


4.     提交已暂存的文件

git commit

注意注释填写规范。

git commit --amend

修改最近一次提交。有时候如果提交注释书写有误或者漏提文件,可以使用此命令。


5.     同步到服务器

同步到服务器前先需要将服务器代码同步到本地

命令: git pull

如果执行失败,就按照提示还原有冲突的文件,然后再次尝试同步。

命令:git checkout -- <有冲突的文件路径>

同步到服务器

命令: git push origin  <本地分支名>

如果执行失败,一般是没有将服务器代码同步到本地导致的,先执行上面的git pull命令。

### Git 提交代码的基本流程 在使用 Git 提交代码时,通常需要经历几个关键步骤。以下是常见的提交流程: 1. **初始化本地仓库** 如果还没有初始化 Git 仓库,可以使用以下命令: ```bash git init ``` 2. **连接远程仓库** 如果需要将本地仓库与远程仓库关联,可以使用以下命令: ```bash git remote add origin <远程仓库地址> ``` 使用 `git remote -v` 可以查看当前关联的远程仓库地址 [^2]。 3. **添加文件到暂存区** 在提交之前,需要将修改的文件添加到暂存区: ```bash git add . ``` 如果只想添加特定文件,可以使用: ```bash git add <文件名> ``` 4. **提交代码到本地仓库** 使用以下命令提交代码到本地仓库,并添加提交信息: ```bash git commit -m "提交信息" ``` 5. **推送代码到远程仓库** 将本地提交代码推送到远程仓库: ```bash git push -u origin <分支名> ``` 如果已经建立了远程分支关联,可以直接使用: ```bash git push ``` ### 查看提交记录 可以使用以下命令查看提交记录: ```bash git log ``` 如果希望以简洁的方式查看提交记录,可以使用: ```bash git log --oneline ``` 此外,还可以使用 `git show <commit-id>` 查看某次提交的详细信息 [^2]。 ### 分支操作 在提交代码时,通常需要切换分支或合并代码: 1. **查看当前分支** 使用以下命令查看当前所有分支及当前所在分支: ```bash git branch ``` 2. **切换分支** 使用以下命令切换到目标分支: ```bash git checkout <分支名> ``` 3. **合并分支** 如果需要将其他分支的代码合并到当前分支,可以使用: ```bash git merge <要合并的分支名> ``` 合并完成后,使用 `git push` 将合并后的代码推送到远程仓库 [^3]。 ### 处理冲突和暂存代码 在拉取代码时,可能会遇到冲突。如果本地代码与远程代码存在冲突,可以使用以下命令将本地代码暂存: ```bash git stash ``` 之后可以使用以下命令重新拉取代码: ```bash git pull ``` 最后,使用以下命令将暂存的代码应用到当前分支: ```bash git stash pop ``` ### 提交信息的规范管理 为了确保提交信息的规范性,可以使用 `husky` 工具来管理 Git提交格式。安装 `husky`: ```bash npm i husky -D ``` 初始化 `husky`: ```bash npx husky-init ``` 可以使用以下命令添加钩子,确保提交信息符合规范: ```bash npx husky add .husky/commit-msg ``` 在脚本中可以添加对提交信息的检查逻辑,例如禁止以 `Merge Branch` 开头的提交信息 [^4]。 ### 撤回提交 如果在提交代码后发现错误,可以使用以下命令撤回提交: 1. **撤回本地提交** 使用以下命令可以撤回最近一次提交: ```bash git reset --soft HEAD~1 ``` 2. **撤回已推送的提交** 如果已经将代码推送到远程仓库,可以使用以下命令强制撤回提交: ```bash git reset --hard HEAD~1 git push -f ``` ### 示例脚本:提交信息检查 以下是一个简单的提交信息检查脚本,确保提交信息不以 `Merge Branch` 开头: ```bash #!/bin/sh # 检查提交信息是否符合规范 if [[ -e "$1" ]]; then commitMsg=$(cat "$1") if [[ "${commitMsg:0:13}" == "Merge Branch" ]]; then if [[ "$1" == ".git/MERGE_MSG" ]]; then git merge --abort echo "拉取的代码有合并记录,请先stash本地代码重新拉取" else echo "提交信息不能以Merge Branch 开头,请修改提交信息" exit 1 fi fi fi echo "commit end with $?" ``` ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值