我想在我的组织下的所有项目中设置预提交挂钩。我用Google搜索,发现我必须为每个项目手动执行此操作。有没有办法在我的组织下的所有项目中设置这些钩子。另外,如果我可以在创建新项目时自动添加这些挂钩,那将会更有帮助。
答案 0 :(得分:2)
如果将所有挂钩放在模板目录中,则可以设置git,以便在创建或克隆新repo时使用这些挂钩。仅适用于客户端挂钩。
您可以在使用 @Autowired
private UserRepository userRepository;
/**
* Injects UserRepository instance
* @param userRepository to inject
*/
@Autowired
public void setUserRepository(UserRepository userRepository) {
this.userRepository = userRepository;
}
或package webroot.websrv.auth.repository;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
import webroot.websrv.auth.entity.User;
@Repository
public interface UserRepository extends JpaRepository<User, Long> {
/**
* Finds user by email
* @param email to look for
* @return user by given email
*/
User findByEmail(String email);
/**
* Finds user by name
* @param name to look for
* @return user by given name
*/
User findByName(String name);
}
时使用--template=/path/to/templatedir
选项,也可以在git-init
添加以下内容:
git-clone
答案 1 :(得分:1)
GitHub(几乎)只支持客户端挂钩(它们不允许您使用自己的服务器端挂钩)。客户端挂钩(如预提交)是您不仅可以为每个仓库配置的,而且是每个用户对该仓库的克隆。
当我说&#34;几乎&#34;它是因为它们还支持一些预定义的钩子,用于保护分支&#34;。您可以使用受保护的分支和自定义状态检查来构建您需要的内容。