第一次使用git的过程记录

参考了两个文章菜鸟教程-git简明指南阮一峰-常用git命令清单

  • git的几个工作区(此处参考了上面的两篇介绍)

简单步骤如下

  1. git init 在当前目录建立工作区
  2. git add * 或 git add filename 将全部/部分文件加入index暂存区
  3. git commit -m "message" 将暂存区index提交到head本地仓库区
  4. git remote add origin server 之前没有clone仓库,给本地仓库添加连接一个远程服务器,server为SSH或https地址
  5. git push origin master 将head本地仓库推送到远程仓库

后续学习到了更多的,会继续补充=-=


补充:

操作失误,回退版本:

可以先使用git reflog命令查看近期的修改日志

然后使用

git 更新remote_推送

git 更新remote_git 更新remote_02


补充:

追加ignore文件

.gitignore只能忽略那些原来没有被追踪的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的

解决方法:把本地缓存删除(改变成未被追踪状态),然后再提交,这样就不会出现忽略的文件了

git 更新remote_git_03


补充:github手动设置项目语言 这个问题,一开始想在github上找设置,发现并没有这个设置 解决方案:给项目增加一个.gitattributes文件,里面设置某些其他语言的文件,识别为Java

示例:

*.js linguist-language=java
*.css linguist-language=java
*.html linguist-language=java

一般而言:本地分支推送到远程分支,都是同名推送,例如本地dev分支只会推送到远程dev分支 若想要让本地dev分支推送到远程的master分支,这里记录一个方法,可以用 git push origin dev:master


git的clone某一分支(非master主分支)到本地 git clone -b [remote repository address]


一些小吐槽: idea中使用git,每次commit -m时,使用了中文的message,其中有过退格,那么最终的message就很容易出现乱码和一些多余字符 那么,决定,以后每次commit -m都用纯英文吧。


git merge操作: 合并,是将另一个分支的变更合并到本分支,例如:另一个分支删除了某些文件,合并后,本分支也会删除这些文件 原本以为:合并这个操作,只会将本分支没有的加入 和 修改与被合并分支不同之处,而其他的不会变 使用过后发现是原本想岔了。参考?


git删除远程分支(当远程分支为主分支时) 当远程分支为主分支,该远程分支是不可删除的 若是要删除,需要先修改远程主分支,如果是GitHub的话,可以在setting的branches中修改