前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >学习笔记 | git的基本用法

学习笔记 | git的基本用法

作者头像
用户3946442
发布2022-04-11 18:34:18
2360
发布2022-04-11 18:34:18
举报
文章被收录于专栏:程序媛驿站

这篇文章是一些较为基础的git的命令,想要较为熟练地用git去进行代码管理还是要多练习哦!

上图是git中的文件的状态图,在下面的命令中,大家可以对照着去看一下,更好地理解各个命令执行后文件的状态。

  1. 在本地创建一个文件夹,(随便命名) gitt,然后剩下的所有git 工作都将在这个目录下完成。
  2. 创建管理员 git config --global user.name "bingo" or git config --global user.email "xxx@xx.com"
  3. git init 创建一个新的空的git仓库,此处注意gitt下创建的是一个隐藏文件 .git
  4. 随便创建一个文件 1.cpp
  5. git add 1.cpp git add -u:将文件的修改、文件的删除,添加到暂存(stage)区。 git add .:将文件的修改,文件的新建,添加到暂存区。 git add -A:将文件的修改,文件的删除,文件的新建,添加到暂存区。
  6. git status git status -s(以简略的方式查看) git status命令用于显示工作目录和暂存区的状态。使用此命令能看到哪些修改被暂存到了, 哪些没有, 哪些文件没有被Git tracked到。git status不显示已经commit到项目历史中去的信息。看项目历史的信息要使用git log.
  7. git commit git commit 主要是将暂存区里的改动给提交到本地的版本库。每次使用git commit 命令我们都会在本地版本库生成一个40位的哈希值,这个哈希值也叫commit-id,commit-id在版本回退的时候是非常有用的,它相当于一个快照,可以在未来的任何时候通过与git reset的组合命令回到这里。 git commit -m "message" message用来说明这次提交的语句。 git commit -a -m "message" 参数 -a 可以将所有已跟踪文件中的执行修改或删除操作的文件都提交到本地仓库,即使它们没有经过git add添加到暂存区 git commit --amend 追加提交,它可以在不增加一个新的commit-id的情况下将新修改的代码追加到前一次的commit-id中。 使用情形:如果我们不小心提交了一版我们不满意的代码,并且给它推送到服务器了,在代码没被merge之前我们希望再修改一版满意的
  8. git log 默认不用任何参数的话,git log 会按提交时间列出提交的历史,最近的更新排在最上面。 具体git log参数的使用,可以看一下这个链接里面的。东西很多,就不往出列了。 https://www.jianshu.com/p/0805b5d5d893 git log --oneline --graph (以一行的形式显示,并且能够以图形的方式看到分支)
  9. git diff 通常用来查找你当前工作目录和上次提交与本地索引间的差异。 $ git diff 上面的命令会显示在当前的工作目录里的,没有 staged(添加到索引中,没有用add去stage),且在下次提交时 不会被提交的修改。 如果你要看在下次提交时要提交的内容(staged,添加到索引中),你可以运行: $ git diff --cached 上面的命令会显示你当前的索引和上次提交间的差异;这些内容在不带"-a"参数运行 "git commit"命令时就会被提交。 $ git diff HEAD 上面这条命令会显示你工作目录与上次提交时之间的所有差别,这条命令所显示的 内容都会在执行"git commit -a"命令时被提交。
  10. git reset 将文件从staged 状态返回到 Modified状态 git reset --hard HEAD 通过移动指针指向来进行撤销操作 HEAD^ 回到上一个 HEAD^^ 回到上两个 或者HEAD~2 或者还有--hard 2a17845 (你想回到的commit 的id号码) https://www.jianshu.com/p/c2ec5f06cf1a
  11. git reflog 显示所有的commit的 id号码,预防撤销多了还想回去
  12. 使用 git checkout对单个文件进行撤回 git checkout c6762a1 --1.cpp (针对1.cpp使其回到commit change id 对应的状态)
  13. 分支branch git branch 查看分支 git branch [name] 创建一个分支 这里创建一个 bra分支 git branch bra (并且进行了复制分支) 在查看分支时 git branch 会看到 :bra *master 这里的星号的意思是 你现在在master的分支上。 git checkout bra 切换分支。 会看到*bra mastr 删除掉分支 git branch -d bra 强制删除是 D 另一种创建分支的方法 :git checkout -b bra 这里是创建分支并移动到创建好的分支上,也复制了。
  14. git merge 一般用于在达到上线要求后,将分支上的文件合并到master中。 git merge --no-ff -m "keep merge into" bra 使用--no--ff的话,会保留在分支中的commit。git merge的具体参数以及使用方法,还请看下面的链接:https://www.jianshu.com/p/418323ed2b03这个作者写的较为详细。
  15. 当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。 解决冲突就是把Git合并失败的文件手动编辑为我们希望的内容,再提交。 用git log --graph命令可以看到分支合并图。 https://www.liaoxuefeng.com/wiki/896043488029600/900004111093344
  16. git stash 一般用于临时保存和恢复修改。 git stash [save message]暂存,save为可选项,message为本次暂存的注释 git stash list 所有暂存的记录列表 git stash pop stash@{num}恢复暂存,num是可选项,通过git stash list可查看具体值。只能恢复一次 git stash apply stash@{num}恢复暂存,num是可选项,通过git stash list可查看具体值。可恢复多次 git stash drop stash@{num}删除某个暂存,num是可选项,通过git stash list可查看具体值 git stash clear删除所有暂存
  17. 推到github上,这一步其实当你在github上创建一个新的仓库之后,会有提醒你要怎么做,写的蛮清楚的!

作者:西瓜媛

编辑:西瓜媛

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序媛驿站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档