1.在合适的地方创建仓库 mkdir
2.初始化仓库 git init
5.创建ssh key包含id_rsa和id_rsa.pub两个文件:ssh-keygen -t rsa -C "youremail@example.com"
6.登陆GitHub,打开“Account settings”,“SSH Keys”页面:然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容
7.在github上创建一个仓库
8.git remote add origin git@.... :本地仓库和远程仓库建立通道
3.添加文件到git中 git add + filename
4.告知git你提交了个文件 git commit -m "information"
9.git push -u origin master:把本地库内容推送到远程
10.git push origin master:继续提交
11.git clone git@github ......
Existing Git repository:
cd existing_repo
git remote rename origin old-origin
git remote add origin git@gitlab.com:muguang/test.git
git push -u origin --all
git push -u origin --tags
git 更新
- git add .
- git commit -m "xxxxx"
- git push -u
git 在不同的电脑上同步git
- 需要把本地的公钥加入gitlab或github的SSH key中
ssh-keygen -t rsa -C "1466576876@qq.com"
cd ~/.ssh
把id_rsa.pub中的内容copy到SSH key中
- git config --global user.email " "
git config --global user.name " " - git init
- git remoter add origin git@gitlab.com:muguang/project.git
- git add.
- git commit -m " "
- git push -u origin master
操作:
1.git log 查看历史记录
2.git reset --hard+版本:版本回退,或者把暂存区的修改撤销掉
3.git reflog :命令记录
4.git status:查看暂存区状态
5.git diff HEAD -- filename
6.git checkout -- file:撤销修改.没有--.就变成了"切换到另一个分支"
7.git rm filename :删除文件
分支操作:
1.git checkout -b dev:加上b参数表示创建并切换
2.git branch:查看当前分支
3.git checkout master:切换到到master分支
4.git merge 用于合并指定分支到当前分支
git push失败时,一般是不同步
git pull --rebase origin master
.gitignore语法:
1)/mtk/ 过滤整个文件夹
2)*.zip 过滤所有.zip文件
3)/mtk/do.c 过滤某个具体文件
说明:如果你不慎在创建.gitignore文件之前就push了项目,那么即使你在.gitignore文件中写入新的过滤规则,这些规则也不会起作用,Git仍然会对所有文件进行版本管理。简单来说,出现这种问题的原因就是Git已经开始管理这些文件了,所以你无法再通过过滤规则过滤它们。因此一定要养成在项目开始就创建.gitignore文件的习惯,否则一旦push,处理起来会非常麻烦。
git 删除本地和远程分支
删除本地分支:git branch -d 分支名(remotes/origin/分支名)
强制删本地:git branch -D 分支名
删除远程分支:git push origin --delete 分支名(remotes/origin/分支名)
git错误总结
-
Your local changes to the following files would be overritten by checkout
错误原因:在远程仓库修改了文件,而本地没有修改,当你想切换分支是,出现了改变分支的时候会重写文件,所以必须把修改提交到版本库里面,或者是隐藏在你切换分支之前
解决方案1:抛弃本地的修改,回到上一版本
git reset --hard
然后,切换你的分支
git checkout master
- Everything up-to-date
错误原因:git 提交改东到缓存,但是push操作不会将本地所有的分支都push进去,所以出现这个问题
解决方案:告诉git我们要push哪个分支
$ git push origin test:master // 提交本地test分支作为远程的master分支 //只写这一句,远程的github就会自动创建一个test分支
$ git push origin test:test // 提交本地test分支作为远程的test分支