熟悉GitHub命令

1、git init命令把这个目录变成Git可以管理的仓库

2、把文件添加到仓库:git add 1.txt(没有消息就是添加成功)
git commit - m “hello” 告诉Git,把文件提交到仓库,-m后面输入的是本次提交的说明,输入方便从历史记录找到改动的记录

3、版本回退:
git status 查看仓库当前的状态,看文件有没有被修改或者有没有被提交的修改
git diff 查看上次是怎么修改的1.txt,查看修改内容
git log 查看修改的文件版本的历史记录(输出信息比较多)
git log –pretty=online (减少输出信息)
git reset -hard回退版本
Head指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset –hard commit_id。
穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

4、版本修改(修改回退)
每次修改后都要git add添加到暂存区,最后git commit一次性提交
git checkout –1.txt 丢弃工作区的修改
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout – file。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD ,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

5、要克隆仓库,必须知道仓库的地址,然后使用git clone命令进行克隆

6、创建分支 git checkout -b dev 创建dev分支,并切换到dev分支,相当于以下两条命令:
git branch dev 创建dev分支
git checkout dev 切换到dev分支

git branch 查看当前分支(当前分支会标一个*号)
dev分支上的工作完成后,就切换到master分支上
把dev分支上的工作成果合并到master的分支 git merge dev
合并完成后删除分支git branch -d dev 删除dev分支

7、解决冲突:
当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。
解决冲突就是把Git合并失败的文件手动编辑为我们希望的内容,再提交。
用git log –graph命令可以看到分支合并图。
git push把本地库的内容推送到远程
git push -u origin master把本地仓库分支master内容推送到元仓库去

8、多人协作
git remote 查看远程库的信息
git remote -v 查看远程库的详细信息

Git常用操作命令收集:
1) 远程仓库相关命令
检出仓库: gitclonegit://github.com/jquery/jquery.git g i t c l o n e g i t : / / g i t h u b . c o m / j q u e r y / j q u e r y . g i t 查 看 远 程 仓 库 : git remote -v
添加远程仓库: gitremoteadd[name][url] g i t r e m o t e a d d [ n a m e ] [ u r l ] 删 除 远 程 仓 库 : git remote rm [name]
修改远程仓库: gitremoteseturlpush[name][newUrl] g i t r e m o t e s e t − u r l – p u s h [ n a m e ] [ n e w U r l ] 拉 取 远 程 仓 库 : git pull [remoteName] [localBranchName]
推送远程仓库: gitpush[remoteName][localBranchName]2(branch) g i t p u s h [ r e m o t e N a m e ] [ l o c a l B r a n c h N a m e ] 2 ) 分 支 ( b r a n c h ) 操 作 相 关 命 令 查 看 本 地 分 支 : git branch

查看远程分支: gitbranchr g i t b r a n c h − r 创 建 本 地 分 支 : git branch [name] —-注意新分支创建后不会自动切换为当前分支
切换分支: gitcheckout[name] g i t c h e c k o u t [ n a m e ] 创 建 新 分 支 并 立 即 切 换 到 新 分 支 : git checkout -b [name]
删除分支: gitbranchd[name]d使D g i t b r a n c h − d [ n a m e ] — − − d 选 项 只 能 删 除 已 经 参 与 了 合 并 的 分 支 , 对 于 未 有 合 并 的 分 支 是 无 法 删 除 的 。 如 果 想 强 制 删 除 一 个 分 支 , 可 以 使 用 − D 选 项 合 并 分 支 : git merge [name] —-将名称为[name]的分支与当前分支合并
创建远程分支(本地分支push到远程): gitpushorigin[name] g i t p u s h o r i g i n [ n a m e ] 删 除 远 程 分 支 : git push origin :heads/[name]

我从master分支创建了一个issue5560分支,做了一些修改后,使用git push origin master提交,但是显示的结果却是’Everything up-to-date’,发生问题的原因是git push origin master 在没有track远程分支的本地分支中默认提交的master分支,因为master分支默认指向了origin master 分支,这里要使用git push origin issue5560:master 就可以把issue5560推送到远程的master分支了。
如果想把本地的某个分支test提交到远程仓库,并作为远程仓库的master分支,或者作为另外一个名叫test的分支,那么可以这么做。

gitpushorigintest:master//testmaster//githubtest g i t p u s h o r i g i n t e s t : m a s t e r / / 提 交 本 地 t e s t 分 支 作 为 远 程 的 m a s t e r 分 支 / / 好 像 只 写 这 一 句 , 远 程 的 g i t h u b 就 会 自 动 创 建 一 个 t e s t 分 支 git push origin test:test // 提交本地test分支作为远程的test分支

如果想删除远程的分支呢?类似于上面,如果:左边的分支为空,那么将删除:右边的远程的分支。

gitpushorigin:test//test3(tag) g i t p u s h o r i g i n : t e s t / / 刚 提 交 到 远 程 的 t e s t 将 被 删 除 , 但 是 本 地 还 会 保 存 的 , 不 用 担 心 3 ) 版 本 ( t a g ) 操 作 相 关 命 令 查 看 版 本 : git tag
创建版本: gittag[name] g i t t a g [ n a m e ] 删 除 版 本 : git tag -d [name]
查看远程版本: gittagr(push) g i t t a g − r 创 建 远 程 版 本 ( 本 地 版 本 p u s h 到 远 程 ) : git push origin [name]
删除远程版本: gitpushorigin:refs/tags/[name]4)(submodule) g i t p u s h o r i g i n : r e f s / t a g s / [ n a m e ] 4 ) 子 模 块 ( s u b m o d u l e ) 相 关 操 作 命 令 添 加 子 模 块 : git submodule add [url] [path]
如: gitsubmoduleaddgit://github.com/soberh/uilibs.gitsrc/main/webapp/uilibs g i t s u b m o d u l e a d d g i t : / / g i t h u b . c o m / s o b e r h / u i − l i b s . g i t s r c / m a i n / w e b a p p / u i − l i b s 初 始 化 子 模 块 : git submodule init —-只在首次检出仓库时运行一次就行
更新子模块: gitsubmoduleupdate41) g i t s u b m o d u l e u p d a t e — − 每 次 更 新 或 切 换 分 支 后 都 需 要 运 行 一 下 删 除 子 模 块 : ( 分 4 步 走 哦 ) 1 ) git rm –cached [path]
2) 编辑“.gitmodules”文件,将子模块的相关配置节点删除掉
3) 编辑“.git/config”文件,将子模块的相关配置节点删除掉
4) 手动删除子模块残留的目录
5)忽略一些文件、文件夹不提交
在仓库根目录下创建名称为“.gitignore”的文件,写入不需要的文件夹名或文件,每个元素占一行即可,如
target
bin
*.db
git操作-删除文件

git删除文件
rm add2.txt
git rm add2.txt
git commit -m “rm test”
git push web

问题:warning: LF will be replaced by CRLF in ……

The file will have its original line endings in your working directory.
原因:原因是路径中存在 / 的符号转义问题,false就是不转换符号默认是true,相当于把路径的 / 符号进行转义,这样添加的时候就有问题
解决方法:git config –global core.autocrlf false

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值