zoukankan      html  css  js  c++  java
  • mzy git学习,git协同开发忽略文档配置以及一些杂点(九)

    回忆一个电脑多账户问题

    之前也说了,如果使用ssh登陆的话,一个电脑就只能登陆一个账号了,不像通过凭据可以切换(但是其实也可以每次去生成新的公钥和私钥,只要你不嫌麻烦)

    再次补充:
    ssh-keygen -t rsa -C “邮箱”
    到github或者码云上选择:
    clone or download 把原来的use https改成use ssh

    创建一个专门的use ssh的本地库
    然后它(git)自动就会去家目录下找.ssh文件夹找到私钥
    进行登陆了,就不需要我们填密码了!(win7及没有凭据管理器的比较方便,而且很安全!)

    跨团队操作

    跨团队操作 先fork一份到自己的远程库,然后修改之后,发起一个向对方库的一个pull request(推送申请),就可以了!

    多人协作时,出现冲突,必须通过git pull origin master来合并之后,再进行push操作,这样才能解决冲突。

    多人协作时,项目上传到git上:

    配置.gitignore文件

    在家目录下配置一个全局的,名字任意
    Java.gitignore

    内容如下:

    # Compiled class file 
    *.class
    
    # Log file 
    *.log
    
    # BlueJ files 
    *.ctxt
    
    # Mobile Tools for Java (J2ME)
    .mtj.tmp/
    
    
    # Package Files #
    *.jar 
    *.war 
    *.nar 
    *.ear 
    *.zip
    *.tar.gz 
    *.rar
    
    # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
    hs_err_pid*
    
    .classpath
    .project
    .settings
    target
    

    然后再全局的.gitconfig中加入配置,引入我们的git配置:

    记住,一定是正斜线,不能是反斜线,就算你在windows中复制的是反斜线也要修改过来!把修改成/,因为git是基于linux的,反斜线git识别不了!

    [core]
    excludesfile = C:/Users/Administrator/Java.gitignore
    

    eclipse中的git插件也会受到全局gitignore的影响,当然也可以在eclipse的git插件中通过图形化界面的方式进行gitignore配置
    然后重新打开eclipse,发现我们配置了全局忽略之后,打开navigator视图发现,我们忽略的文件都没有标记了,只有我们未忽略的文件才有?号。
    windows->preferences->team->git->configuration,发现其中的user setting中core.excludesfile已经被引入了!
    {
    补充:在eclipse的:
    windows->preferences->team->git->configuration
    右侧,可以看见三种settings:
    1.user settings 全局用户级config:依照家目录中的gitconfig
    2.system settings git安装的配置
    3.repository settings 仓库中的settings .git/config
    }

    ecipse 中,文件右下角的角标:
    +号:表示已经被追踪
    *号:表示已经被暂存(加载到了暂存区)

    add to index 其实就是加到暂存区中备选项

    开始的commit 不多讲了,注意一点:
    如果你的远程库,在创建的时候新加了一个master,但是没有什么内容的话,你选择的时候,可以选择force update,去覆盖你远程库的!

    回忆:

    git clone下项目:
    注意一点,记得转(因为clone下来,我们忽略了很多文件,导致这不是一个完整的项目,项目右键configure->convert to Maven Project)

    git push -u origin master:
    -u:根据自己的需要替换掉远程的分支(第一次提交常用的)

    git branch -a 查看所有分支:-a 参数,把当前分支显示成红色
    git branch:同样也会显示所有分支,当前分支显示成绿色
    git branch -r:查看所有远程分支。
    git branch -vv: 查看当前本地库分支和远程库的关系,即:有没有跟踪关系(track)

    删除远程库中的文件:

    git rm – cached “路径+文件名”
    git commit -m “delete file”
    git push

    git rm --cached filename/-r directory
    git commit “xxxx”
    git push

    创建一个本地分支和远程分支进行关联:

    git checkout -b 分支名称 本地库名称/分支名称
    git checkout -b mzy origin/mzy

    以及存在本地分支和远程分支了,需要进行关联:

    git branch -vv:
    查看当前本地库分支和远程库的关系,即:有没有跟踪关系(track)
    git branch -vv
    发现有没有建立映射关系的分支时应该怎么样处理?
    git branch -u origin(本地仓库名)/master(分支名)
    git branch -u lsnu(本地仓库名)/mzy(分支名)
    或者这样的命令(效果同):
    git branch --set-upstream-to origin(本地仓库名)/master(分支名)
    git branch --set-upstream-to lsnu(本地仓库名)/mzy(分支名)
    撤销映射关系:
    git branch --unset-upstream
    遇到的问题:

    将当前目录文件移动到上级(项目名建重复了)

    例如
    mv ./git ./README.md …/

  • 相关阅读:
    Super
    多态
    方法覆盖 和toString方法的作用
    Static 静态+this
    构造方法 + 继承
    使用方法重载的优缺点
    Erlang 简介与样例分析
    Assassin's Creed 4: Black Flag --《刺客信条4; 黑旗》
    DEVIL MAY CRY V:《鬼泣5》
    Valiant Hearts: The Great War -- 《勇敢的心》
  • 原文地址:https://www.cnblogs.com/mzywucai/p/11053343.html
Copyright © 2011-2022 走看看