Git 使用日常总结

  • 创建tag
    git tag -a v1.0 -m “v1.0 relase”

  • 查看tag
    git tag -l
    结果 : v1.0

  • 推送到远程:
    git push origin v1.0

  • 修改tag v1.0的内容:

    git checkout -b tagv1 v1.0
    在tagv1 分支的基础上修改。 修改完后在合并主分支 或者 打v2,0便签

  • 删除本地标签:
    git tag -d v1.0

  • 删除远程标签:
    git push origin --delete v1.0

///

git 如何取消add操作

可以直接使用命令    git reset HEAD

这个是整体回到上次一次操作

绿字变红字(撤销add)

如果是某个文件回滚到上一次操作:  git reset HEAD  文件名

红字变无 (撤销没add修改)

git checkout -- 文件

//

git撤销commit

(1)仅仅是撤回commit操作,您写的代码仍然保留。

git reset --soft HEAD^

(2)删除工作空间改动代码,撤销commit,撤销git add . 

git reset --hard commit_id 

*********

--soft     不删除工作空间改动代码,撤销commit,不撤销git add . 

--hard    删除工作空间改动代码,撤销commit,撤销git add . 

注意完成这个操作后,就恢复到了上一次的commit状态。

Git submodule 子模块的管理和使用

Git submodule 子模块的管理和使用 - 简书g

git修改最后一次提交

git commit --amend

git不提交当前修改内容切换分支的方法(git stash)

  1. git stash save "备注":保存当前修改,虽然git stash 同样可以进行保存。但保存内容多了以后,就无法识别出哪一条是哪一条了。
  2. git stash list:显示所有存储信息
    git stash list之后显示的内容
  3. git stash apply stash@{n}:还原某个存储。可以通过 list 可以查看到已经保存的所有内容之后。选择对应需要还原的内容,然后通过 git stash apply stash@{0}可以还原 test 2,也就是第二次保存的内容。
  4. git stash pop stash@{n}:还原并删除对应的 stash
  5. git stash drop stash@{n}:单纯的从列表中删除 stash
  6. git stash clear:清除 stash list 所有记录

git如何配置windows拉取代码自动修改为crlf,linux拉取代码自动去除cr

要配置 Git 在 Windows 上检出时自动将行结束符转换为 CRLF,并在提交时将其转换回 LF,你可以使用以下命令:

git config --global core.autocrlf true

这将确保在 Windows 上工作的用户不会因为行结束符差异而遇到问题。然而,core.autocrlf 的设置并不会影响 Linux 上的行为。Linux 默认使用 LF 作为行结束符。因此,一般建议 Linux 用户将 core.autocrlf 设置为 input,以避免在提交时引入 CRLF:

git config --global core.autocrlf input

上述设置意味着 Git 在 Linux 上检出时不会对行结束符做任何转换,在提交时会将 CRLF 转换为 LF。

对于 Linux 用户来说,因为 Linux 和 Unix-like 系统默认使用 LF 作为行结束符,所以代码库中通常应该都是 LF 结尾的文件。如果需要,你也可以通过 .gitattributes 文件来细化控制特定文件或文件类型的行结束符行为,例如:

# Set default behavior to automatically normalize line endings.

* text=auto

# Declare files that will always have CRLF line endings on checkout.

*.sln text eol=crlf

# Declare files that will always have LF line endings on checkout.

*.sh text eol=lf

在这个例子中,所有标记为 text 的文件在检出时将依据 core.autocrlf 设置自动转换行尾,而 .sln 文件将始终使用 CRLF 结尾,.sh 文件总是使用 LF 结尾。

如果你需要确保在所有平台上工作时行为一致,建议在仓库中添加 .gitattributes 文件以明确规定每种文件类型的行尾处理方式。这样,无论每个贡献者的全局 core.autocrlf 设置如何,仓库中的文件都会按照 .gitattributes 中的规则进行行尾转换。

git push origin test:test001
#将本地分支test推送到远程test001分支
git push origin test
#将本地test分支推送到远程test分支,如果远程test分支不存在则会被创建
git push origin
#将当前分支推送到远程对应名称的分支
git push
#如果当前分支的远程追踪分支只有一个,那么远程主机名origin可以省略
git push origin HEAD
#将当前分支推送到远程对应名称的分支,考虑当前分支名称
git push origin HEAD:test
#将当前分支推送到远程指定test分支,不考虑当前分支名称
git push origin master:refs/heads/test
#将当前分支推送到远程新建的test分支,一般用于当前分支名与想推送的远程分支名称不一致
git push --set-upstream origin test
#将当前分支(没有关联追踪到远程分支)追踪到远程的一个分支test并且推送到远程分支test

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值